def test_create(self): data_list = [{"name": "bob", "age": a, "id": a} for a in range(100)] store = PythonListDataStore(data_list, ApiModel) # The object does not exists self.assertRaises(NotFound, store.get, 100) # The object is created self.assertEqual(store.create({"name": "bob", "age": 34}), 100) # The object exists self.assertEqual(store.get(100)["id"], 100) self.assertRaises(BadRequest, store.create, {"name": "bob", "age": "34"})
def test_validator(self): from rest_api_framework.datastore.validators import UniqueTogether data_list = [ {"name": "bob", "age": a, "id": a } for a in range(100) ] store = PythonListDataStore( data_list, ApiModel, validators=[UniqueTogether("age", "name")] ) self.assertEqual(store.validate({"name": "bob", "age": 209}), None) self.assertRaises(BadRequest, store.validate, {"name": "bob", "age": 20}) self.assertRaises( BadRequest, store.update, {"name": "bob", "age": 34, "id": 34}, {"age": 20}) store = SQLiteDataStore( {"name": "test.db", "table": "address"}, ApiModel, validators=[UniqueTogether("age", "name")] ) for i in range(100): store.create({"name": "bob", "age": i+1}) self.assertEqual(store.validate({"name": "bob", "age": 209}), None) self.assertRaises(BadRequest, store.validate, {"name": "bob", "age": 20}) os.remove("test.db")
def test_create(self): data_list = [{"name": "bob", "age": a, "id": a} for a in range(100)] store = PythonListDataStore(data_list, ApiModel) # The object does not exists self.assertRaises(NotFound, store.get, 100) # The object is created self.assertEqual(store.create({"name": "bob", "age": 34}), 100) # The object exists self.assertEqual(store.get(100)["id"], 100) self.assertRaises(BadRequest, store.create, { "name": "bob", "age": "34" })
def test_validator(self): from rest_api_framework.datastore.validators import UniqueTogether data_list = [{"name": "bob", "age": a, "id": a} for a in range(100)] store = PythonListDataStore(data_list, ApiModel, validators=[UniqueTogether("age", "name")]) self.assertEqual(store.validate({"name": "bob", "age": 209}), None) self.assertRaises(BadRequest, store.validate, { "name": "bob", "age": 20 }) self.assertRaises(BadRequest, store.update, { "name": "bob", "age": 34, "id": 34 }, {"age": 20}) store = SQLiteDataStore({ "name": "test.db", "table": "address" }, ApiModel, validators=[UniqueTogether("age", "name")]) for i in range(100): store.create({"name": "bob", "age": i + 1}) self.assertEqual(store.validate({"name": "bob", "age": 209}), None) self.assertRaises(BadRequest, store.validate, { "name": "bob", "age": 20 }) os.remove("test.db")