class_docstr: Test cases for random-number generating operators.
code: def _testRngIsNotConstant(self, rng, dtype, output_dtype):
      # Tests that 'rng' does not always return the same value.
      with self.session():
          with self.test_scope():
              x = rng(dtype, output_dtype)
  
          # The random-number generator, if working correctly, should produce the
          # same output multiple times with low probability.
          y = self.evaluate(x)
          z = self.evaluate(x)
          w = self.evaluate(x)
  
          # We use exact equality here. If the random-number generator is producing
          # deterministic output, all three outputs will be bitwise identical.
          self.assertTrue(
              (not np.array_equal(y, z))
              or (not np.array_equal(z, w))
              or (not np.array_equal(y, w))
          )
  
imports: import collections
  import numpy
  from tensorflow.compiler.tests import xla_test
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import random_seed
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import random_ops
  from tensorflow.python.ops import stateless_random_ops
  from tensorflow.python.platform import googletest
  from tensorflow.python.platform import test
label_desc: Use image node_id 4 for calling the CategoricalTest obj's underlying member method code with example usage: obj._testRngIsNotConstant(rng, dtype, output_dtype) without return types