code: def testCDFBroadcasting(self):
      # shape: [batch=2, n_bins=3]
      histograms = [[0.2, 0.1, 0.7], [0.3, 0.45, 0.25]]
  
      # shape: [batch=3, batch=2]
      devent = [[0, 0], [1, 1], [2, 2]]
      dist = categorical.Categorical(
          probs=histograms, validate_args=True
      )
  
      # We test that the probabilities are correctly broadcasted over the
      # additional leading batch dimension of size 3.
      expected_cdf_result = np.zeros((3, 2))
      expected_cdf_result[0, 0] = 0.2
      expected_cdf_result[0, 1] = 0.3
      expected_cdf_result[1, 0] = 0.3
      expected_cdf_result[1, 1] = 0.3 + 0.45
      expected_cdf_result[2, 0] = 1.0
      expected_cdf_result[2, 1] = 1.0
  
      self.assertAllClose(
          expected_cdf_result, self.evaluate(dist.cdf(devent))
      )
  
imports: from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import identity
  from tensorflow_probability.python.distributions import categorical
  from tensorflow_probability.python.distributions import kullback_leibler
  from tensorflow_probability.python.distributions import normal
  from tensorflow_probability.python.internal import prefer_static
  from tensorflow_probability.python.internal import tensorshape_util
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
  from tensorflow_probability.python.util import deferred_tensor
label_desc: Use image node_id 13 for calling the CategoricalTest obj's underlying member method code with example usage: obj.testCDFBroadcasting() without return types