class TestPlaneBuilder(unittest.TestCase): def setUp(self): self.node_a = Node(node_id="1") self.node_b = Node(node_id="2") self.node_c = Node(node_id="3") self.few_nodes = {} self.many_nodes = {} few_nodes_list = Node.generate_nodes(3, Node, node_parameters={}, protocol_manager=None) for node in few_nodes_list: self.few_nodes[node.id] = node many_nodes_list = Node.generate_nodes(300, Node, node_parameters={}, protocol_manager=None) for node in many_nodes_list: self.many_nodes[node.id] = node self.plane_1 = Plane(10, 20) self.plane_2 = Plane(30, 30) def test_small_plane_builder(self): plane_builders.degree_plane_builder(self.plane_1, 2, 4, self.few_nodes) self.assertEqual(len(self.plane_1.all_node_ids), 3) def test_bigger_plane_builder(self): plane_builders.degree_plane_builder(self.plane_2, 2, 2, self.many_nodes) self.assertEqual(len(self.plane_2.all_node_ids), 300) def test_square_plane_builder(self): plane_builders.square_builder(self.plane_2, 2, 2, self.many_nodes) self.assertEqual(len(self.plane_2.all_node_ids), 300) self.assert_(self.plane_2.get_node(Location(0,0)))
class TestPlane(unittest.TestCase): def setUp(self): self.test_plane_5_10 = Plane(x_size=5, y_size=10) def test_boundaries(self): self.assert_(self.test_plane_5_10.get_node(Location(4, 9)) is plane.CONST_EMPTY) self.assertRaises(IndexError, self.test_plane_5_10.get_node, **{'location':Location(5, 9)}) self.assertRaises(IndexError, self.test_plane_5_10.get_node, **{'location':Location(1, 10)}) self.assert_(self.test_plane_5_10.get_node(Location(1, 9)) is plane.CONST_EMPTY) self.assert_(self.test_plane_5_10.get_node(Location(0, 0)) is plane.CONST_EMPTY) def test_node_insertion_normal(self): self.test_plane_5_10.insert_node(Node(node_id=1), Location(0, 0)) self.assert_(self.test_plane_5_10.get_node(Location(0, 0))) self.assertFalse(self.test_plane_5_10.get_node(Location(0, 1))) self.test_plane_5_10.insert_node(Node(node_id=1), Location(0, 1)) self.assert_(self.test_plane_5_10.get_node(Location(0, 1))) def test_node_insertion_already_ocupied(self): self.test_plane_5_10.insert_node(Node(node_id=1), Location(0, 0)) self.assert_(self.test_plane_5_10.get_node(Location(0, 0))) self.assertRaises(LocationOcuppied, self.test_plane_5_10.insert_node, Node(2), Location(0, 0)) def test_remove_node_existing(self): """ Tests the removal of an existing node """ node = Node(node_id=1) self.test_plane_5_10.insert_node(node, Location(0, 0)) self.assert_(self.test_plane_5_10.get_node(Location(0, 0))) self.test_plane_5_10.remove_node(node) self.assertFalse(self.test_plane_5_10.get_node(Location(0, 0))) def test_plane_insertion(self): """ Tests the insertion of ids in plane """ my_plane = Plane(x_size=10, y_size=10) my_plane.insert_node(Node(node_id=1), Location(3, 4)) my_plane.insert_node(Node(node_id=2), Location(3, 5)) my_plane.insert_node(Node(node_id=3), Location(1, 2)) self.assert_("1" in my_plane.all_node_ids) self.assert_("2" in my_plane.all_node_ids) self.assert_("3" in my_plane.all_node_ids)