def test_swap_SharedVaraile_with_given(self):
        """
        A special testcase for logistic_sgd.py in Deep Learning Tutorial
        This test assert that SharedVariable in different function have same storage
        """
        train_x = theano.shared(value=numpy.random.rand(10,10).astype(config.floatX))
        test_x = theano.shared(value=numpy.random.rand(10,10).astype(config.floatX))

        train_y = theano.shared(value=numpy.random.rand(10,1).astype(config.floatX))
        test_y = theano.shared(value=numpy.random.rand(10,1).astype(config.floatX))

        i = T.iscalar('index')
        x = T.vector('x')
        y = T.vector('y')
        # this formular has no sense but for a test
        out = (T.sum(x) - y) ** 2
        train = theano.function([i], out,
                                givens={x:train_x[i], y:train_y[i]},
                                updates={train_x:train_x+0.1})

        test_def = theano.function([i], out, givens={x:test_x[i], y:test_y[i]})
        test_cpy = train.copy(swap={train_x:test_x, train_y:test_y},
                              delete_updates=True)

        for in1, in2 in zip( test_def.maker.inputs, test_def.maker.inputs):
            assert in1.value is in2.value
dataset/ETHPy150Open rizar/attention-lvcsr/libs/Theano/theano/compile/tests/test_function_module.py/T_function.test_swap_SharedVaraile_with_given/original