code: def testUniformSample(self):
      a = tf.constant([3.0, 4.0])
      b = tf.constant(13.0)
      a1_v = 3.0
      a2_v = 4.0
      b_v = 13.0
      n = tf.constant(100000)
      dist = uniform.Uniform(low=a, high=b, validate_args=True)
  
      samples = dist.sample(n, seed=test_util.test_seed())
      sample_values = self.evaluate(samples)
      self.assertEqual(sample_values.shape, (100000, 2))
      self.assertAllClose(
          sample_values[::, 0].mean(),
          (b_v + a1_v) / 2,
          atol=1e-1,
          rtol=0.0,
      )
      self.assertAllClose(
          sample_values[::, 1].mean(),
          (b_v + a2_v) / 2,
          atol=1e-1,
          rtol=0.0,
      )
      self.assertFalse(
          np.any(sample_values[::, 0] < a1_v)
          or np.any(sample_values >= b_v)
      )
      self.assertFalse(
          np.any(sample_values[::, 1] < a2_v)
          or np.any(sample_values >= b_v)
      )
  
imports: import numpy
  from scipy import stats
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import kullback_leibler
  from tensorflow_probability.python.distributions import uniform
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
label_desc: Use image node_id 9 for calling the UniformTest obj's underlying member method code with example usage: obj.testUniformSample() without return types