예제 #1
0
 def test_bfs(self):
     graph = Graph(directed=False)
     graph.add_edge(data1='a', data2=123, weight=3)
     graph.add_edge(data1='b', data2=123, weight=2)
     graph.add_edge(data1='c', data2=123, weight=1)
     graph.add_edge(data1='c', data2='a', weight=1)
     with self.assertRaises(TypeError) as error:
         t = graph.bfs(node='c')
예제 #2
0
 def test_bfs(self):
     graph = Graph(directed=True)
     graph.add_edge(data1='a', data2='b')
     graph.add_edge(data1='a', data2='c')
     graph.add_edge(data1='b', data2='d')
     graph.add_edge(data1='c', data2='e')
     t = graph.bfs(node='a')
     self.assertNotEqual(t.index('b'), 2)
     self.assertNotEqual(t.index('b'), 3)
     self.assertNotEqual(t.index('c'), 2)
     self.assertNotEqual(t.index('c'), 3)
     self.assertNotEqual(t.index('d'), 0)
     self.assertNotEqual(t.index('d'), 1)
     self.assertNotEqual(t.index('e'), 0)
     self.assertNotEqual(t.index('e'), 1)
예제 #3
0
 def test_bfs_empty_graph(self):
     graph = Graph(directed=True)
     t = graph.bfs(node='c')
     self.assertIsNone(t)