code: def test_uniform(self):
      # Test that raw_random.uniform generates the same results as numpy.
      # Check over two calls to see if the random state is correctly updated.
      rng_R = random_state_type()
      # Use non-default parameters
      post_r, out = uniform(rng_R, (4,), -2.0, 2.0)
  
      f = compile.function(
          [
              compile.In(
                  rng_R,
                  value=np.random.RandomState(utt.fetch_seed()),
                  update=post_r,
                  mutable=True,
              )
          ],
          [out],
          accept_inplace=True,
      )
  
      numpy_rng = np.random.RandomState(utt.fetch_seed())
      val0 = f()
      val1 = f()
      numpy_val0 = numpy_rng.uniform(-2.0, 2.0, size=(4,))
      numpy_val1 = numpy_rng.uniform(-2.0, 2.0, size=(4,))
      self.assertTrue(np.allclose(val0, numpy_val0))
      self.assertTrue(np.allclose(val1, numpy_val1))
  
imports: from __future__ import absolute_import, print_function, division
  import numpy
  import pickle
  from theano.tests import unittest_tools
  from theano.tensor.raw_random import *
  from theano.tensor import raw_random, ivector, dvector, iscalar, dcol, dtensor3
  from theano import tensor
  from theano import compile, config, gof
label_desc: Use image node_id 11 for calling the T_random_function obj's underlying member method code with example usage: obj.test_uniform() without return types