code: def testSampleSmallConcentration(self):
      concentration_v = 0.05
      rate_v = 1.0
      concentration = tf.constant(concentration_v)
      rate = tf.constant(rate_v)
      n = 100000
      d = exp_gamma_lib.ExpGamma(
          concentration=concentration, rate=rate, validate_args=True
      )
      samples = d.sample(n, seed=test_util.test_seed())
      sample_values = self.evaluate(samples)
      self.assertEqual(samples.shape, (n,))
      self.assertEqual(sample_values.shape, (n,))
      self.assertTrue(
          self._kstest(concentration_v, rate_v, sample_values)
      )
      self.assertAllClose(sample_values.mean(), d.mean(), rtol=0.01)
      self.assertAllClose(sample_values.var(), d.variance(), rtol=0.025)
  
imports: from absl.testing import parameterized
  import numpy
  from scipy import misc
  from scipy import special
  from scipy import stats
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import exp
  from tensorflow_probability.python.distributions import exp_gamma
  from tensorflow_probability.python.distributions import gamma
  from tensorflow_probability.python.distributions import kullback_leibler
  from tensorflow_probability.python.distributions.internal import statistical_testing
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
label_desc: Use image node_id 11 for calling the ExpGammaTest obj's underlying member method code with example usage: obj.testSampleSmallConcentration() without return types