def test_move_simple(): """Test moving a car to another location.""" manager = SuperDuperManager() manager.add_car('car1', 2) manager.add_car('car2', 10) manager.add_car('car3', 20) manager.move_car('car2', 2, 3) assert manager.get_car_position('car2') == (2, 3) assert manager.get_car_fuel('car2') == 5
def test_move_negative(): """Test moving a car to a position with negative coordinates.""" manager = SuperDuperManager() manager.add_car('car1', 2) manager.add_car('car2', 10) manager.add_car('car3', 20) manager.move_car('car2', 2, 3) manager.move_car('car3', -2, -3) assert manager.get_car_position('car3') == (-2, -3) assert manager.get_car_fuel('car3') == 15
def test_move_not_enough(): """Test moving a car that doesn't have enough fuel.""" manager = SuperDuperManager() manager.add_car('car1', 2) manager.add_car('car2', 10) manager.add_car('car3', 20) manager.move_car('car2', 2, 3) manager.move_car('car1', 3, 5) assert manager.get_car_position('car1') == (0, 0) assert manager.get_car_fuel('car1') == 2
def test_dispatch(): """Test moving a car that doesn't have enough fuel.""" manager = SuperDuperManager() manager.add_car('car1', 30) manager.add_car('car2', 30) manager.add_car('car3', 20) manager.move_car('car2', 6, 2) manager.move_car('car1', 3, 5) manager.dispatch(6, 6) assert manager.get_car_position('car1') == (6, 6)
class TestCar(unittest.TestCase): """Sample unit tests for Exercise 1.""" def setUp(self): """This is a special method that's called at the beginning of each test. It is used to create a SuperDuperManager object with three cars; these will be the cars used in subsequent tests. """ self.manager = SuperDuperManager() self.manager.add_car('car1', 2) self.manager.add_car('car2', 10) self.manager.add_car('car3', 20) def test_move_simple(self): self.manager.move_car('car2', 2, 3) pos = self.manager.get_car_position('car2') self.assertEqual(pos, (2, 3)) self.assertEqual(self.manager.get_car_fuel('car2'), 5) def test_move_not_enough(self): self.manager.move_car('car1', 3, 5) pos = self.manager.get_car_position('car1') self.assertEqual(pos, (0, 0)) self.assertEqual(self.manager.get_car_fuel('car1'), 2) def test_move_negative(self): self.manager.move_car('car3', -2, -3) pos = self.manager.get_car_position('car3') self.assertEqual(pos, (-2, -3)) self.assertEqual(self.manager.get_car_fuel('car3'), 15)