code: def testCdfNoBatch(self):
      sample = [0, 1, 1, 2]
      events = [[1], [0, 1], [[0, 1], [1, 2]]]
      expected_cdfs = [[0.75], [0.25, 0.75], [[0.25, 0.75], [0.75, 1]]]
  
      for event, expected_cdf in zip(events, expected_cdfs):
          input_ = tf.convert_to_tensor(value=sample, dtype=np.float32)
          input_ph = tf1.placeholder_with_default(
              input_, shape=input_.shape if self.static_shape else None
          )
          dist = empirical.Empirical(
              samples=input_ph, validate_args=True
          )
          self.assertAllClose(
              self.evaluate(dist.cdf(event)), expected_cdf
          )
          self.assertAllClose(
              self.evaluate(dist.log_cdf(event)), np.log(expected_cdf)
          )
  
imports: from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import empirical
  from tensorflow_probability.python.internal import test_util
label_desc: Use image node_id 3 for calling the EmpiricalScalarTest obj's underlying member method code with example usage: obj.testCdfNoBatch() without return types