code: def test_set_value_borrow(self):
      rng = np.random.RandomState(123)
  
      s_rng = shared(rng)
  
      new_rng = np.random.RandomState(234234)
  
      # Test the borrow contract is respected:
      # assigning with borrow=False makes a copy
      s_rng.set_value(new_rng, borrow=False)
      assert new_rng is not s_rng.container.storage[0]
      assert new_rng.randn() == s_rng.container.storage[0].randn()
  
      # Test that the current implementation is actually borrowing when it can.
      rr = np.random.RandomState(33)
      s_rng.set_value(rr, borrow=True)
      assert rr is s_rng.container.storage[0]
  
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 33 for calling the T_SharedRandomStreams obj's underlying member method code with example usage: obj.test_set_value_borrow() without return types