code: def testHalfNormalEntropy(self):
      scale = np.array([[1.0, 2.0, 3.0]])
      halfnorm = half_normal.HalfNormal(scale=scale, validate_args=True)
  
      # See https://en.wikipedia.org/wiki/Half-normal_distribution for the
      # entropy formula used here.
      expected_entropy = 0.5 * np.log(np.pi * scale**2.0 / 2.0) + 0.5
  
      entropy = halfnorm.entropy()
      self._testBatchShapes(halfnorm, entropy)
      self.assertAllClose(expected_entropy, self.evaluate(entropy))
  
imports: from absl.testing import parameterized
  import numpy
  from scipy import stats
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import half_normal
  from tensorflow_probability.python.distributions import kullback_leibler
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
label_desc: Use image node_id 15 for calling the HalfNormalTest obj's underlying member method code with example usage: obj.testHalfNormalEntropy() without return types