code: def testGeometricSurvivalFunction(self):
      batch_size = 6
      probs = tf.constant([[0.2, 0.4, 0.5]] * batch_size)
      probs_v = np.array([0.2, 0.4, 0.5])
      x = np.array([[2.0, 3.0, 4.0, 5.0, 6.0, 7.0]], dtype=np.float32).T
  
      geom = geometric.Geometric(probs=probs, validate_args=True)
      expected_sf = stats.geom.sf(x, probs_v, loc=-1)
  
      sf = geom.survival_function(x)
      self.assertEqual([6, 3], sf.shape)
      self.assertAllClose(expected_sf, self.evaluate(sf))
  
imports: import numpy
  from scipy import stats
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import geometric
  from tensorflow_probability.python.internal import test_util
label_desc: Use image node_id 7 for calling the GeometricTest obj's underlying member method code with example usage: obj.testGeometricSurvivalFunction() without return types