def test_make_by_manufacturer_id(self, mock_get): with open("tests/responses/get_makes_for_manufacturer_id_response.json") as f: expected_response = json.load(f) mock_get.return_value.json.return_value = expected_response makes = get_makes(988) self.assertTrue( mock.call(self.TEST_MANUFACTURER_ID_MAKES_URL) in mock_get.mock_calls ) for make in makes: self.assertTrue(isinstance(make, Make)) first = makes[0] self.assertEqual(first.make_id, 474) self.assertEqual(first.make_name, "HONDA") self.assertEqual(first.manufacturer, "HONDA OF AMERICA MFG., INC.")
def test_make_by_vehicle_type(self, mock_get): with open("tests/responses/get_makes_for_vehicle_type_response.json") as f: expected_response = json.load(f) mock_get.return_value.json.return_value = expected_response makes = get_makes(vehicle_type="car") self.assertTrue( mock.call(self.TEST_VEHICLE_TYPE_MAKES_URL) in mock_get.mock_calls ) for make in makes: self.assertTrue(isinstance(make, Make)) first = makes[0] self.assertEqual(first.make_id, 440) self.assertEqual(first.make_name, "ASTON MARTIN") self.assertEqual(first.vehicle_type, "Passenger Car")
def test_make_by_manufacturer_name(self, mock_get): with open("tests/responses/get_makes_for_manufacturer_name_response.json") as f: expected_response = json.load(f) mock_get.return_value.json.return_value = expected_response makes = get_makes("honda") self.assertTrue( mock.call(self.TEST_MANUFACTURER_NAME_MAKES_URL) in mock_get.mock_calls ) for make in makes: self.assertTrue(isinstance(make, Make)) first = makes[0] self.assertEqual(first.make_id, 474) self.assertEqual(first.make_name, "HONDA") self.assertEqual(first.manufacturer, "HONDA MOTOR CO., LTD") expected_results = expected_response["Results"] # testing get_results() self.assertEqual(expected_results, makes.get_results()) self.assertEqual(expected_results[0], first.get_results()) # Making sure that get_df() doesn't error out makes.get_df() makes.get_df(raw=True) makes.get_df(raw=True, drop_na=False) # Making sure that string and html reps don't error out str(makes) makes._repr_html_() str(first) first._repr_html_()
def test_make_by_manufacturer_name_and_year(self, mock_get): with open( "tests/responses/get_makes_for_manufacturer_name_and_year_response.json" ) as f: expected_response = json.load(f) mock_get.return_value.json.return_value = expected_response makes = get_makes("honda", 2004) self.assertTrue( mock.call(self.TEST_MANUFACTURER_NAME_AND_YEAR_MAKES_URL) in mock_get.mock_calls ) for make in makes: self.assertTrue(isinstance(make, Make)) first = makes[0] self.assertEqual(first.make_id, 474) self.assertEqual(first.make_name, "HONDA") self.assertEqual(first.manufacturer, "HONDA MOTOR CO., LTD")
def test_exceptions(self): with self.assertRaises(TypeError): get_makes(10.0) with self.assertRaises(TypeError): get_makes(manufacturer_name_or_id="honda", model_year=2005.0) with self.assertRaises(ValueError): get_makes(manufacturer_name_or_id="honda", model_year=1952) with self.assertRaises(TypeError): get_makes(vehicle_type=1) with self.assertRaises(ValueError): get_makes(manufacturer_name_or_id="honda", vehicle_type="PASSENGER CAR") with self.assertRaises(ValueError): get_makes(model_year=1999)