def test_bfs_in_digraph(self): gr = testlib.new_digraph() gr.add_node('find-me') gr.add_edge((0, 'find-me')) st, lo = breadth_first_search(gr, root=0, filter=find('find-me')) assert st['find-me'] == 0 for each in st: assert st[each] == None or st[each] == 0 or st[st[each]] == 0
def test_dfs_in_digraph(self): gr = testlib.new_digraph() gr.add_node('find-me') gr.add_node('dont-find-me') gr.add_edge((0, 'find-me')) gr.add_edge(('find-me','dont-find-me')) st, pre, post = depth_first_search(gr, root=0, filter=find('find-me')) assert st['find-me'] == 0 assert 'dont-find-me' not in st
def test_dfs_in_digraph(self): gr = testlib.new_digraph() gr.add_node('find-me') gr.add_node('dont-find-me') gr.add_edge((0, 'find-me')) gr.add_edge(('find-me', 'dont-find-me')) st, pre, post = depth_first_search(gr, root=0, filter=find('find-me')) assert st['find-me'] == 0 assert 'dont-find-me' not in st
def test_bfs_in_empty_graph(self): gr = graph() st, lo = breadth_first_search(gr, filter=find(5)) assert st == {} assert lo == []