code: def testSurvivalFunction(self):
      dist = self.make_two_piece_normals()
  
      x = np.array([[-35.0], [3.0], [20.0]], dtype=self.dtype)
  
      sf = self.evaluate(dist.survival_function(x))
      # The following values were calculated using the R package 'gamlss.dist'.
      # Package version: 5.3-2. Distribution: SN2.
      expected_sf = np.array(
          [
              [9.972020e-01, 9.999277e-01, 9.999998e-01],
              [3.600000e-01, 5.000000e-01, 6.388458e-01],
              [8.427815e-03, 4.456546e-02, 1.285233e-01],
          ],
          dtype=self.dtype,
      )
  
      self.assertAllEqual(sf.shape, expected_sf.shape)
      self.assertAllClose(sf, expected_sf)
  
imports: import itertools
  from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import two_piece_normal
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
label_desc: Use image node_id 12 for calling the _TwoPieceNormalTest obj's underlying member method code with example usage: obj.testSurvivalFunction() without return types