def test_connect(self):
        n_inputs = 10
        n_hidden = 20

        x = tf.ones([1, n_inputs])
        input_layer = Layer(n_units=n_inputs,activation=x)
        id_layer1 = Layer(n_hidden,activation=tf.identity)
        id_layer2 = Layer(n_hidden,activation=tf.identity)

        nn = NeuralNetwork()
        # layer 0
        nn.add_layer(input_layer)
        # layer 1
        nn.add_layer(id_layer1)
        # layer 2
        nn.add_layer(id_layer2)

        self.assertEqual(nn.size(),3)

        # connect input to output
        self.assertEqual(nn.graph.number_of_edges(),2)
        nn.connect_layers(0, 2)
        self.assertEqual(nn.graph.number_of_edges(),3)

        self.assertIsNot(nn.weights(0,1),nn.weights(0,2))
        self.assertIsNot(nn.weights(0,1),nn.weights(1,2))
        self.assertIsNot(nn.weights(1,2),nn.weights(0,2))