Ejemplo n.º 1
0
 def test_add_neighbour(self):
     # vertex_a is pointing to vertex_b with a weight of 3, "A" -> "B"
     vertex_a = "A"
     vertex_b = "B"
     weight = 3
     vertex_a_obj = Vertex(vertex_a)
     vertex_b_obj = Vertex(vertex_b)
     vertex_a_obj.add_neighbour(vertex_b_obj, weight)
     self.assertEqual(len(vertex_a_obj.neighbours), 1)
     self.assertEqual(vertex_a_obj.neighbours[vertex_b_obj], weight)
Ejemplo n.º 2
0
    def add_vertex(self, key: str) -> object:
        """
        add a new vertex object to the graph with
        the given key and return the vertex
        """

        if key not in self.vert_dict.keys():
            # create new vertex and add to vertex dict
            self.vert_dict[key] = Vertex(key)
            # increment number of verticles
            self.num_vertices += 1
        return self.vert_dict[key]
Ejemplo n.º 3
0
 def test_get_neighbours(self):
     vertex_a = "A"
     vertex_b = "B"
     weight = 3
     vertex_a_obj = Vertex(vertex_a)
     vertex_b_obj = Vertex(vertex_b)
     vertex_a_obj.add_neighbour(vertex_b_obj, weight)
     dict_output = vertex_a_obj.get_neighbours()
     self.assertIsInstance(dict_output, dict)
     self.assertEqual(len(dict_output), 1)
     self.assertEqual(dict_output[vertex_b_obj], 3)
Ejemplo n.º 4
0
 def test_init(self):
     vertex_a = "A"
     vertex_obj = Vertex(vertex_a)
     # checking if vertex_obj is saved properly
     self.assertIsInstance(vertex_obj.id, str)
     self.assertEqual(len(vertex_obj.neighbours), 0)