code: def testGammaSampleSmallconcentration(self):
      concentration_v = 0.05
      rate_v = 1.0
      concentration = tf.constant(concentration_v)
      rate = tf.constant(rate_v)
      n = 100000
      gamma = gamma_lib.Gamma(
          concentration=concentration, rate=rate, validate_args=True
      )
      samples = gamma.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(),
          sp_stats.gamma.mean(concentration_v, scale=1 / rate_v),
          atol=0.01,
      )
      self.assertAllClose(
          sample_values.var(),
          sp_stats.gamma.var(concentration_v, scale=1 / rate_v),
          atol=0.15,
      )
  
imports: import functools
  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 gamma
  from tensorflow_probability.python.distributions import kullback_leibler
  from tensorflow_probability.python.distributions.internal import statistical_testing
  from tensorflow_probability.python.internal import implementation_selection
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
label_desc: Use image node_id 17 for calling the GammaTest obj's underlying member method code with example usage: obj.testGammaSampleSmallconcentration() without return types