code: def testHalfCauchyCdfBroadcast(self):
      loc_ = [-1, 0.0, 1.1]
      loc = self._create_placeholder_with_default(loc_, name="loc")
      scale_ = [0.1]
      scale = self._create_placeholder_with_default(
          scale_, name="scale"
      )
      dist = half_cauchy.HalfCauchy(loc, scale, validate_args=True)
      x_ = [[2.0], [3.1], [4.0], [5.0], [6.0], [7.0]]
      x = self._create_placeholder_with_default(x_, name="x")
      for tfp_f, scipy_f in [
          (dist.cdf, stats.halfcauchy.cdf),
          (dist.log_cdf, stats.halfcauchy.logcdf),
      ]:
          tfp_res = tfp_f(x)
          if self.use_static_shape or tf.executing_eagerly():
              expected_shape = tf.TensorShape((6, 3))
          else:
              expected_shape = tf.TensorShape(None)
          self.assertEqual(tfp_res.shape, expected_shape)
          self.assertAllEqual(self.evaluate(tf.shape(tfp_res)), (6, 3))
          self.assertAllClose(
              self.evaluate(tfp_res), scipy_f(x_, loc_, scale_)
          )
  
imports: import numpy
  from scipy import stats
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import half_cauchy
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
label_desc: Use image node_id 16 for calling the _HalfCauchyTest obj's underlying member method code with example usage: obj.testHalfCauchyCdfBroadcast() without return types