code: def test_do_maximum_mean(self, dtype):
      n = 117
      envelope = 0.02  # > 2 / n, but < 3 / n
      rng = np.random.RandomState(seed=8)
      samples = rng.uniform(size=n).astype(dtype=dtype)
  
      # Compute the answer in TF using the code under test
      envelope_t = tf.convert_to_tensor(value=envelope, dtype=dtype)
      max_mean = st._do_maximum_mean(samples, envelope_t, 1)
      max_mean = self.evaluate(max_mean)
  
      # Compute the correct answer for this case in numpy.  In this
      # example, `n` and `envelope` are such that `samples[2]` is the
      # element that should be taken partially, regardless of the
      # content of the `samples` array (see algorithm description in
      # `../ops/statistical_testing.py`).
      samples = sorted(samples)
      weight = 1.0 / n - (envelope - 2.0 / n)
      answer = (
          samples[2] * weight + sum(samples[3:]) / n + envelope * 1.0
      )
      self.assertAllClose(max_mean, answer, rtol=1e-9)
  
imports: import functools
  from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions.internal import statistical_testing
  from tensorflow_probability.python.internal import test_util
label_desc: Use image node_id 20 for calling the StatisticalTestingTest obj's underlying member method code with example usage: obj.test_do_maximum_mean(dtype) without return types