def test_breadth_first_example(): """ Refer to the README Examples for visual aids. """ g = Graph() pandora = g.add_node('Pandora') adrendelle = g.add_node('Arendelle') metroville = g.add_node('Metroville') monstroplolis = g.add_node('Monstroplolis') naboo = g.add_node('Naboo') narnia = g.add_node('Narnia') g.add_edge(pandora, adrendelle) g.add_edge(adrendelle, metroville) g.add_edge(adrendelle, monstroplolis) g.add_edge(adrendelle, pandora) g.add_edge(metroville, adrendelle) g.add_edge(metroville, monstroplolis) g.add_edge(metroville, narnia) g.add_edge(metroville, naboo) g.add_edge(monstroplolis, adrendelle) g.add_edge(monstroplolis, metroville) g.add_edge(monstroplolis, naboo) g.add_edge(naboo, narnia) g.add_edge(naboo, metroville) g.add_edge(naboo, monstroplolis) actual = g.breadth_first(pandora) expected = [ 'Pandora', 'Arendelle', 'Metroville', 'Monstroplolis', 'Narnia', 'Naboo' ] assert actual == expected
def test_breadth_first_example_2_different_start(): g = Graph() bob = g.add_node('Bob') tom = g.add_node('Tom') sam = g.add_node('Sam') joe = g.add_node('Joe') jon = g.add_node('Jon') g.add_edge(bob, tom) g.add_edge(tom, bob) g.add_edge(tom, jon) g.add_edge(tom, sam) g.add_edge(tom, joe) g.add_edge(jon, tom) g.add_edge(jon, sam) g.add_edge(sam, jon) g.add_edge(sam, tom) g.add_edge(sam, joe) g.add_edge(joe, sam) g.add_edge(joe, tom) actual = g.breadth_first(tom) expected = ['Tom', 'Bob', 'Jon', 'Sam', 'Joe'] assert actual == expected
def test_breadth_first_example_2(): """ Refer to the README Examples for visual aids. """ g = Graph() bob = g.add_node('Bob') tom = g.add_node('Tom') sam = g.add_node('Sam') joe = g.add_node('Joe') jon = g.add_node('Jon') g.add_edge(bob, tom) g.add_edge(tom, bob) g.add_edge(tom, jon) g.add_edge(tom, sam) g.add_edge(tom, joe) g.add_edge(jon, tom) g.add_edge(jon, sam) g.add_edge(sam, jon) g.add_edge(sam, tom) g.add_edge(sam, joe) g.add_edge(joe, sam) g.add_edge(joe, tom) actual = g.breadth_first(bob) expected = ['Bob', 'Tom', 'Jon', 'Sam', 'Joe'] assert actual == expected