def test_connect_one_machine_to_link(default_scenario: Lab): default_scenario.connect_machine_to_link("pc1", "A") assert len(default_scenario.machines) == 1 assert default_scenario.machines['pc1'] assert len(default_scenario.links) == 1 assert default_scenario.links['A'] assert default_scenario.machines['pc1'].interfaces[0].name == 'A'
def two_device_scenario(): lab = Lab("Default scenario") pc1 = lab.get_or_new_machine("pc1", **{'image': 'kathara/test1'}) pc2 = lab.get_or_new_machine("pc2", **{'image': 'kathara/test2'}) lab.connect_machine_to_link(pc1.name, "A") lab.connect_machine_to_link(pc1.name, "B") lab.connect_machine_to_link(pc2.name, "A") return lab
def test_intersect_machines(default_scenario: Lab): default_scenario.connect_machine_to_link("pc1", "A") default_scenario.connect_machine_to_link("pc2", "A") default_scenario.connect_machine_to_link("pc2", "B") assert len(default_scenario.machines) == 2 links = default_scenario.get_links_from_machines(selected_machines=["pc1"]) assert len(default_scenario.machines) == 2 assert 'pc1' in default_scenario.machines assert 'pc2' in default_scenario.machines assert 'A' in links assert 'B' not in links