def test_to_dict_method(self): """ Tests to_dict() of State class and check types inside """ my_model = State() my_model.my_number = 777 d = dict(my_model.__dict__) d['__class__'] = "State" d['created_at'] = d['created_at'].isoformat() d['updated_at'] = d['updated_at'].isoformat() self.assertEqual(d, my_model.to_dict()) types = [str, "updated_at", "created_at", "__class__", "id", "name"] self.assertTrue(all(isinstance(v, types[0]) for k, v in d.items() if k in types[1:])) types = [int, "my_number"] self.assertTrue(all(isinstance(v, types[0]) for k, v in d.items() if k in types[1:]))
def test_basic_test(self): """Basic tests for State class""" self.assertTrue(issubclass(State, BaseModel)) my_model = State() my_model.name = "Holberton" my_model.my_number = 89 self.assertEqual([my_model.name, my_model.my_number], ["Holberton", 89])
def test_kwargs_instantiation(self): """Tests instantiation with **kwargs.""" my_model = State() my_model.name = "Holberton" my_model.my_number = 89 my_model_json = my_model.to_dict() my_new_model = State(**my_model_json) self.assertEqual(my_new_model.to_dict(), my_model.to_dict())
def test_new_user(self): ''' test base case ''' new_a = State() self.assertTrue(issubclass(State, BaseModel)) new_a.name = "betty" new_a.my_number = 12 self.assertEqual([new_a.name, new_a.my_number], ["betty", 12])
def test_normal_cases_state(self): """normal cases""" my_object = State() my_object.name = "Holbiland" my_object.my_number = 29 my_object.save() my_object_dict = my_object.to_dict() self.assertEqual(my_object.name, "Holbiland") self.assertEqual(my_object.my_number, 29) self.assertEqual(my_object.__class__.__name__, "State") self.assertEqual(isinstance(my_object.created_at, datetime), True) self.assertEqual(isinstance(my_object.updated_at, datetime), True) self.assertEqual(type(my_object.__dict__), dict)
def test_to_dict_contains_added_attributes(self): st = State() st.middle_name = "Holberton" st.my_number = 98 self.assertEqual("Holberton", st.middle_name) self.assertIn("my_number", st.to_dict())