Exemple #1
0
class TestCar(unittest.TestCase):
    def setUp(self):
        self.driver = Driver('Anton', Car('AUDI', 'A7', 300), 0, 0)
        self.driver1 = Driver('Vasko', Car('NISSAN', 'GTR', 400), 0, 0)

    def test_will_crash(self):
        self.assertEqual(self.driver.will_crash(0.3), False)
        self.assertEqual(self.driver.will_crash(0.46), True)

    def test_eq_(self):
        self.assertEqual(self.driver.__eq__(self.driver1), False)
        self.driver2 = Driver('Anton', Car('AUDI', 'A7', 300), 2, 16)
        self.assertEqual(self.driver.__eq__(self.driver2), True)

    def test_dict_repr(self):
        self.assertEqual(
            self.driver.dict_repr(), {
                'name': 'Anton',
                'car': 'AUDI',
                'model': 'A7',
                'max_speed': 300,
                'races_done': 0,
                'points': 0
            })

    def test_driver_from_dict_with_no_races_done_and_points(self):
        dict_with_driver = {
            'name': 'Anton',
            'car': 'AUDI',
            'model': 'A7',
            'max_speed': 300
        }
        driver = Driver.get_driver_from_dict(dict_with_driver)
        self.assertEqual(driver, Driver('Anton', Car('AUDI', 'A7', 300)))
        self.assertEqual(driver.races_done, 0)
        self.assertEqual(driver.points, 0)

    def test_driver_from_dict_with_races_done_and_points(self):
        dict_with_driver = {
            'name': 'Anton',
            'car': 'AUDI',
            'model': 'A7',
            'max_speed': 30,
            'races_done': 2,
            'points': 16
        }
        driver = Driver.get_driver_from_dict(dict_with_driver)
        self.assertEqual(driver.races_done, 2)
        self.assertEqual(driver.points, 16)