def test_nodes(): node1 = Node(1, adjacency_dict={2: {'weight': 3, 'status': True}}) node2 = Node(2, adjacency_dict={1: {'weight': 3, 'status': True}}) test_net = Network({1: node1, 2: node2}) # test graph with 2 active nodes assert len(test_net.nodes()) is 2 assert len(test_net.nodes()) is len(test_net.network_dict) assert node1.node_id in test_net.nodes() assert node2.node_id in test_net.nodes() # test edge deactivation test_net.mark_edge_inactive(node1.node_id, node2.node_id) assert len(test_net.nodes()) is 2 assert len(test_net.nodes()) is len(test_net.network_dict) assert node1.node_id in test_net.nodes() assert node2.node_id in test_net.nodes() # deactivate 1 node and test test_net.mark_node_inactive(node1.node_id) assert len(test_net.nodes()) is 1 assert len(test_net.nodes()) is not len(test_net.network_dict) assert len(test_net.network_dict) is 2 assert node1.node_id not in test_net.nodes() assert node2.node_id in test_net.nodes() # deactivate last node test_net.mark_node_inactive(node2.node_id) assert not test_net.nodes() assert len(test_net.nodes()) is not len(test_net.network_dict) assert len(test_net.network_dict) is 2 assert node1.node_id not in test_net.nodes() assert node2.node_id not in test_net.nodes()
def test_mark_edge_inactive(): node1 = Node(1, adjacency_dict={2: {'weight': 3, 'status': True}}) node2 = Node(2, adjacency_dict={1: {'weight': 3, 'status': True}}) test_net = Network({1: node1, 2: node2}) # test existing nodes with shared, active edge test_net.mark_edge_inactive(node1.node_id, node2.node_id) assert not node1.adjacency_dict[node2.node_id]['status'] assert not node2.adjacency_dict[node1.node_id]['status'] assert not node1.get_adjacents() assert not node2.get_adjacents() assert len(test_net.network_dict) is 2 assert len(test_net.network_dict) is len(test_net.nodes()) # test existing nodes with shared, inactive edge test_net.mark_edge_inactive(node1.node_id, node2.node_id) assert not node1.adjacency_dict[node2.node_id]['status'] assert not node2.adjacency_dict[node1.node_id]['status'] assert not node1.get_adjacents() assert not node2.get_adjacents() assert len(test_net.network_dict) is 2 assert len(test_net.network_dict) is len(test_net.nodes()) # test existing nodes with shared, inactive edge test_net.add_node(Node(3)) test_net.mark_edge_inactive(node1.node_id, 3) assert not node1.adjacency_dict[node2.node_id]['status'] assert not node2.adjacency_dict[node1.node_id]['status'] assert not node1.get_adjacents() assert not node2.get_adjacents() assert len(test_net.network_dict) is 3 assert len(test_net.network_dict) is len(test_net.nodes()) # test with nonexistent node test_net.add_node(Node(3)) test_net.mark_edge_inactive(node1.node_id, 4) assert not node1.adjacency_dict[node2.node_id]['status'] assert not node2.adjacency_dict[node1.node_id]['status'] assert not node1.get_adjacents() assert not node2.get_adjacents() assert len(test_net.network_dict) is 3 assert len(test_net.network_dict) is len(test_net.nodes())
init_tester.mark_node_inactive(1) init_tester.mark_node_inactive(1) init_tester.mark_node_inactive(6) init_tester.mark_node_inactive(6) print(init_tester) print('\t---MARK NODE ACTIVE TESTS---') init_tester.mark_node_active(1) init_tester.mark_node_active(1) init_tester.mark_node_active(6) print(init_tester) print('\t---MARK EDGE INACTIVE TESTS---') init_tester.mark_edge_inactive(1, 5) init_tester.mark_edge_inactive(1, 5) init_tester.mark_edge_inactive(3, 5) init_tester.mark_edge_inactive(1, 6) print(init_tester) print('\t---MARK EDGE ACTIVE TESTS---') init_tester.mark_edge_active(1, 5) init_tester.mark_edge_active(1, 5) init_tester.mark_node_inactive(3) init_tester.mark_edge_active(1, 3) init_tester.mark_edge_active(3, 5) print(init_tester) print('\t---BREAK CONNECTIVITY VIA STATUS---') init_tester.mark_edge_inactive(1, 2)