def test_examples(self): self.assertEqual(distance(*parse_input(in1)), out1) self.assertEqual(distance(*parse_input(in2)), out2)
def test_generated(self): # for i in range(10, 100): for i in range(10, 12): expected = 5 adj = gen_graph(num_vertices=i, path_length=expected, s=0, t=i - 1) self.assertEqual(distance(adj, 0, i - 1), expected)
def test_2(self): self.assertEqual(distance([[2, 3], [4], [0, 3], [0, 2], [1]], 2, 4), -1)
def test_1(self): self.assertEqual(distance([[1, 3], [0, 2], [0, 1], [0]], 2, 3), 2)
def test2(self): result = distance([[], [], [], []], 1, 3) self.assertEqual(-1, result)
def test1(self): result = distance([[1, 3, 2], [0, 2], [1, 0], [0]], 1, 3) self.assertEqual(2, result)
def test_distance(adj1, adj2, adj3): assert distance(adj1, 1, 3) == 2 assert distance(adj2, 2, 4) == -1 assert distance(adj3, 0, 1) == 1 # pudb.set_trace() assert distance(adj3, 0, 2) == 1