code: def test_kolmogorov_smirnov_distance(self, dtype):
      samples = np.array([[1, 1, 1], [1, 2, 3], [2, 3, 3], [2, 4, 3]])
      samples = tf.convert_to_tensor(value=samples, dtype=dtype)
  
      def cdf(x):
          answer = tf.where(x < 3.0, dtype(0.6), dtype(1.0))
          answer = tf.where(x < 2.0, dtype(0.3), answer)
          answer = tf.where(x < 1.0, dtype(0.1), answer)
          return tf.where(x < 0.0, dtype(0.0), answer)
  
      def left_continuous_cdf(x):
          answer = tf.where(x <= 3.0, dtype(0.6), dtype(1.0))
          answer = tf.where(x <= 2.0, dtype(0.3), answer)
          answer = tf.where(x <= 1.0, dtype(0.1), answer)
          return tf.where(x <= 0.0, dtype(0.0), answer)
  
      obtained = self.evaluate(
          st.kolmogorov_smirnov_distance(
              samples, cdf, left_continuous_cdf=left_continuous_cdf
          )
      )
      self.assertAllClose([0.4, 0.25, 0.35], obtained, atol=1e-7)
  
imports: import functools
  from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions.internal import statistical_testing
  from tensorflow_probability.python.internal import test_util
label_desc: Use image node_id 5 for calling the StatisticalTestingTest obj's underlying member method code with example usage: obj.test_kolmogorov_smirnov_distance(dtype) and returns: tf, tf