class CarTest(unittest.TestCase): """Car klassini tekshirish uchun test""" def setUp(self): make = "GM" model = "Malibu" year = 2020 self.price = 40000 self.km = 10000 self.avto1 = Car(make, model, year) self.avto2 = Car(make, model, year, price=self.price) def test_create(self): # Qiymatlar mavjudligini assertIsNotNone metodi bilan tekshiramiz self.assertIsNotNone(self.avto1.make) self.assertIsNotNone(self.avto1.model) self.assertIsNotNone(self.avto1.year) # Qiymat mavjud emasligini assertIsNone metodi bilan tekshiramiz self.assertIsNone(self.avto1.price) # Qiymat tengligini assertEquals metodi bilan tekshiramiz self.assertEqual(0, self.avto1.get_km()) # avto2 narhini tekshiramiz self.assertEqual(self.price, self.avto2.price) def test_set_price(self): self.avto2.set_price(self.price) self.assertEqual(self.price, self.avto2.price) def test_add_km(self): # Musbat qiymat berib ko'ramiz self.avto1.add_km(self.km) self.assertEqual(self.km, self.avto1.get_km()) # Manfiy qiymat berib ko'ramiz new_km = -5000 try: self.avto1.add_km(new_km) except ValueError as error: self.assertEqual(type(error), ValueError) def test_get_info(self): avto1_info = 'GM Malibu, 2020-yil, 0km yurgan.' self.assertEqual(avto1_info, self.avto1.get_info()) # avto1 narhi va km o'zgartiramiz self.avto1.set_price(50000) self.avto1.add_km(20000) avto1_info = 'GM Malibu, 2020-yil, 20000km yurgan. Narhi: 50000' self.assertEqual(avto1_info, self.avto1.get_info())
class MyTestCase(unittest.TestCase): # вызывается перед каждым тестом def setUp(self): print('test setUp') self.car = Car("car.jpg", "toyota", 756.7, 4) # вызывается после каждого теста def tearDown(self): print('test tearDown') # def test_something(self): # print('run test: test_something') # self.assertEqual(True, True) def mocked_get_info(self): return "???" # заменяем метод get_info класса Car из модуля cars на свою заглушку @patch('cars.Car.get_info', mocked_get_info) def test_get_info(self): print('run test: test_get_info') self.assertEqual(self.car.get_info(), "???")