code: def test_default_shape(self):
      random = RandomStreams(utt.fetch_seed())
      f = function([], random.uniform())
      g = function([], random.multinomial())
  
      # seed_rng is generator for generating *seeds* for RandomStates
      seed_rng = np.random.RandomState(utt.fetch_seed())
      uniform_rng = np.random.RandomState(
          int(seed_rng.randint(2**30))
      )
      multinomial_rng = np.random.RandomState(
          int(seed_rng.randint(2**30))
      )
  
      val0 = f()
      val1 = f()
      numpy_val0 = uniform_rng.uniform()
      numpy_val1 = uniform_rng.uniform()
      assert np.allclose(val0, numpy_val0)
      assert np.allclose(val1, numpy_val1)
  
      for i in range(
          10
      ):  # every test has 50% chance of passing even with non-matching random states
          val2 = g()
          numpy_val2 = multinomial_rng.multinomial(
              n=1, pvals=[0.5, 0.5]
          )
          assert np.all(val2 == numpy_val2)
  
imports: from __future__ import absolute_import, print_function, division
  import sys
  import unittest
  import numpy
  from theano.tensor import raw_random
  from theano.tensor.shared_randomstreams import RandomStreams
  from theano import function, shared
  from theano import tensor
  from theano import compile, config, gof
  from theano.tests import unittest_tools
label_desc: Use image node_id 20 for calling the T_SharedRandomStreams obj's underlying member method code with example usage: obj.test_default_shape() without return types