code: def testKumaraswamyLogCdf(self):
      shape = (30, 40, 50)
      for dt in (np.float32, np.float64):
          a = 10.0 * np.random.random(shape).astype(dt)
          b = 10.0 * np.random.random(shape).astype(dt)
          x = np.random.random(shape).astype(dt)
          actual = self.evaluate(
              tf.exp(
                  kumaraswamy.Kumaraswamy(
                      a, b, validate_args=True
                  ).log_cdf(x)
              )
          )
          self.assertAllEqual(np.ones(shape, dtype=np.bool_), 0.0 <= x)
          self.assertAllEqual(np.ones(shape, dtype=np.bool_), 1.0 >= x)
          self.assertAllClose(_kumaraswamy_cdf(a, b, x), actual)
  
imports: import numpy
  from scipy import special
  from scipy import stats
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import kumaraswamy
  from tensorflow_probability.python.internal import test_util
label_desc: Use image node_id 24 for calling the KumaraswamyTest obj's underlying member method code with example usage: obj.testKumaraswamyLogCdf() without return types