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)
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]
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)
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)