Exemple #1
0
 def test_AddNode(self):
     g0 = DiGraph()
     node0 = NodeData(0, (0, 1, 2))
     node1 = NodeData(1, (2.4, 7.1, 3.5))
     g0.add_node(node0.getkey())
     g0.add_node(node1.getkey())
     self.assertEqual(g0.v_size(), 2)
Exemple #2
0
 def test_removeNode(self):
     g0 = DiGraph()
     node0 = NodeData(0, (0, 1, 2))
     node1 = NodeData(1, (2, 7, 3))
     g0.add_node(node0.getkey())
     g0.add_node(node1.getkey())
     g0.remove_node(0)
     self.assertEqual(g0.v_size(), 1)
Exemple #3
0
 def test_initGraph(self):
     g0 = DiGraph()
     node0 = NodeData(0, (0, 1, 2))
     node1 = NodeData(1, (2.4, 7.1, 3.5))
     g0.add_node(node0.getkey())
     g0.add_node(node1.getkey())
     g1 = GraphAlgo(g0)
     self.assertEqual(g0.v_size(), g1.graph.v_size())
Exemple #4
0
 def test_save_and_load(self):
     g0 = DiGraph()
     node0 = NodeData(0, (0, 1, 2))
     node1 = NodeData(1, (2.4, 7.1, 3.5))
     g0.add_node(node0.getkey())
     g0.add_node(node1.getkey())
     g1 = GraphAlgo(g0)
     g1.save_to_json("graph.json")
     g2 = GraphAlgo()
     g2.load_from_json("graph.json")
     self.assertEqual(g1.graph.v_size(), g2.graph.v_size())
Exemple #5
0
    def test_shortest_path(self):
        g0 = DiGraph()
        node0 = NodeData(0, (0, 1, 2))
        node1 = NodeData(1, (2.4, 7.1, 3.5))
        node2 = NodeData(2, (1, 7, 8))
        node3 = NodeData(3, (7, 1.3, 6.3))

        g0.add_node(node0.getkey())
        g0.add_node(node1.getkey())
        g0.add_node(node2.getkey())
        g0.add_node(node3.getkey())

        g0.add_edge(0, 1, 1)
        g0.add_edge(1, 2, 3)
        g0.add_edge(2, 3, 4)
        g0.add_edge(3, 0, 1)

        g1 = GraphAlgo(g0)

        dist, path = g1.shortest_path(0, 1)
        self.assertEqual(dist, 1)
        dist, path = g1.shortest_path(1, 3)
        self.assertEqual(dist, 7)
Exemple #6
0
 def test_getMC(self):
     g0 = DiGraph()
     node0 = NodeData(0, (0, 1, 2))
     node1 = NodeData(1, (2.4, 7.1, 3.5))
     g0.add_node(node0.getkey())
     g0.add_node(node1.getkey())
     g0.add_edge(node0.getkey(), node1.getkey(), 7)
     g0.remove_edge(node0.getkey(), node1.getkey())
     self.assertEqual(g0.get_mc(), 4)
Exemple #7
0
 def test_AddEdge(self):
     g0 = DiGraph()
     node0 = NodeData(0, (0, 1, 2))
     node1 = NodeData(1, (2.4, 7.1, 3.5))
     g0.add_edge(node0.getkey(), node1.getkey(), 4)
     self.assertEqual(g0.e_size(), 1)