class_docstr: Test cases for random-number generating operators.
code: def testStatelessMultinomialIsInRange(self):
      for dtype in self.float_types.intersection(
          [dtypes.float32, dtypes.bfloat16]
      ):
          for output_dtype in self.output_dtypes():
              with self.session() as sess:
                  with self.test_scope():
                      seed_t = array_ops.placeholder(
                          dtypes.int32, shape=[2]
                      )
                      x = stateless_random_ops.stateless_multinomial(
                          array_ops.ones(shape=[1, 20], dtype=dtype),
                          1000,
                          seed_t,
                          output_dtype=output_dtype,
                      )
                  y = sess.run(x, {seed_t: [0x12345678, 0xABCDEF12]})
                  self.assertTrue((y >= 0).sum() == 1000)
                  self.assertTrue((y < 20).sum() == 1000)
  
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 8 for calling the CategoricalTest obj's underlying member method code with example usage: obj.testStatelessMultinomialIsInRange() without return types