def clear_test(self): """Test if the clear() methods of the Way class works correctly.""" # put some regular points to the way first first = (0.0, 0.0, 0.0) second = (1.0, 1.0, 100.0) third = (2.0, 2.0, 200.0) lle_list = [first, second, third] way = Way(points=lle_list) # add some message points point1 = Point(lat=50.0, lon=50.0, elevation=300.0, message="foo") point2 = Point(lat=75.0, lon=75.0, elevation=600.0, message="bar") way.add_message_point(point1) way.add_message_point(point2) # check there are points & message points self.assertEqual(way.point_count, 3) self.assertEqual(way.message_point_count, 2) self.assertTrue(len(way.points_lle) > 0) self.assertTrue(len(way.message_points) > 0) self.assertTrue(len(way.message_points_lle) > 0) # call the clear methods way.clear() way.clear_message_points() # check that the way is empty self.assertEqual(way.point_count, 0) self.assertEqual(way.message_point_count, 0) self.assertListEqual(way.points_lle, []) self.assertListEqual(way.message_points, []) self.assertListEqual(way.message_points_lle, [])
def empty_way_test(self): """Test if an empty Way can be created.""" way = Way() # points self.assertListEqual(way.points_lle, []) self.assertListEqual(way.points_radians_ll, []) self.assertListEqual(way.points_radians_lle, []) self.assertListEqual(way.points_radians_lle, []) self.assertListEqual(way.get_points_lle_radians(drop_elevation=False), []) self.assertListEqual(way.get_points_lle_radians(drop_elevation=True), []) self.assertIsNone(way.get_closest_point(point=Point(lat=0, lon=0))) #message points self.assertListEqual(way.message_points, []) self.assertListEqual(way.message_points_lle, []) self.assertEqual(way.message_point_count, 0) self.assertIsNone( way.get_closest_message_point(point=Point(lat=0, lon=0))) # misc self.assertIsNone(way.length) self.assertIsNone(way.duration) # test getters and setters with self.assertRaises(IndexError): way.get_point_by_index(1) with self.assertRaises(IndexError): way.get_message_point_by_index(1) with self.assertRaises(IndexError): way.set_message_point_by_index(1, Point(lat=1, lon=1)) self.assertIsNone(way.get_closest_message_point(Point(lat=1, lon=1))) # clearing should also work way.clear_message_points()