def test_delete_failure(self): """should handle a failed delete appropriately""" http_server.set_response(status=500) model = TestModel({'id': 1}, False) self.assertEqual(model.delete(), False) self.assertEqual(model.frozen(), False) self.assertEqual(model.errors['base'], 'record not deleted')
def test_delete_failure(self): """should handle a failed delete appropriately""" http_server.set_response(status=500) model = TestModel({'id':1}, False) self.assertEqual(model.delete(), False) self.assertEqual(model.frozen(), False) self.assertEqual(model.errors['base'], 'record not deleted')
def test_delete(self): """should delete a model through the RestfulHttpAdapter""" http_server.set_response() model = TestModel({'id': 1}, False) self.assertEqual(model.delete(), True) self.assertEqual(model.frozen(), True) self.assertEqual(http_server.last_request()['method'], 'DELETE')
def test_delete(self): """should delete a model through the RestfulHttpAdapter""" http_server.set_response() model = TestModel({'id':1}, False) self.assertEqual(model.delete(), True) self.assertEqual(model.frozen(), True) self.assertEqual(http_server.last_request()['method'], 'DELETE')
def test_create_success(self): """should create a model through the RestfulHttpAdapter""" http_server.set_response(body=json.dumps({"id": 42, "foo": "bar"})) model = TestModel({}) self.assertEqual(model.new_record, True) self.assertEqual(model.save(), True) self.assertEqual(model.new_record, False) self.assertEqual(model.saved, True)
def test_update_fields_attributes_failure(self): """should handle a failed update appropriately""" http_server.set_response(status=500, body=json.dumps({ "errors":{"foo":"is not bar"} })) model = TestModel({}, False) self.assertEqual(model.update_fields({'id':7, 'foo':'boo'}), False) self.assertEqual(model.saved, False) self.assertEqual(model.errors['foo'], 'is not bar')
def test_update_fields_attributes_failure(self): """should handle a failed update appropriately""" http_server.set_response(status=500, body=json.dumps( {"errors": { "foo": "is not bar" }})) model = TestModel({}, False) self.assertEqual(model.update_fields({'id': 7, 'foo': 'boo'}), False) self.assertEqual(model.saved, False) self.assertEqual(model.errors['foo'], 'is not bar')
def test_create_failure(self): """should handle a failed create appropriately""" http_server.set_response(status=500, body=json.dumps({ "errors": {"foo": "is not bar"} })) model = TestModel({}) self.assertEqual(model.new_record, True) self.assertEqual(model.save(), False) self.assertEqual(model.new_record, True) self.assertEqual(model.saved, False) self.assertEqual(model.errors['foo'], 'is not bar')
def test_create_failure(self): """should handle a failed create appropriately""" http_server.set_response(status=500, body=json.dumps( {"errors": { "foo": "is not bar" }})) model = TestModel({}) self.assertEqual(model.new_record, True) self.assertEqual(model.save(), False) self.assertEqual(model.new_record, True) self.assertEqual(model.saved, False) self.assertEqual(model.errors['foo'], 'is not bar')
def test_update_fields_attributes_with_dict(self): """ should update a model with given attribute dict through the RestfulHttpAdapter """ attrs = {"id": 7, "foo": "bar"} http_server.set_response(body=json.dumps(attrs)) http_server.set_response(method='GET', body=json.dumps([attrs])) model = TestModel({}, False) self.assertEqual(model.update_fields({'id':7, 'foo':'bar'}), True) self.assertEqual(model.saved, True) self.assertEqual(model.new_record, False) self.assertEqual(model.id, 7) self.assertEqual(model.foo, 'bar')
def test_query(self): records = [ {'id': 1, 'foo': 'bar'}, {'id': 2, 'foo': 'bar'}, {'id': 3, 'foo': 'bar'} ] http_server.set_response(method='GET', body=json.dumps(records)) models = TestModel.where({'foo': 'bar'}).limit(3).all() self.assertEqual(len(models), 3) for i, model in enumerate(models): self.assertEqual(type(model), TestModel) self.assertEqual(model.new_record, False) self.assertEqual(model.id, records[i]['id']) self.assertEqual(model.foo, records[i]['foo'])
def test_update_attributes_with_keywords(self): """ should update a model with the attributes given as keyword args through the RestfulHttpAdapter """ attrs = {"id": 7, "foo": "bar"} http_server.set_response(body=json.dumps(attrs)) http_server.set_response(method='GET', body=json.dumps([attrs])) model = TestModel({}, False) self.assertEqual(model.update_attributes(id=7, foo='bar'), True) self.assertEqual(model.saved, True) self.assertEqual(model.new_record, False) self.assertEqual(model.id, 7) self.assertEqual(model.foo, 'bar')
def test_update_fields_attributes_with_dict(self): """ should update a model with given attribute dict through the RestfulHttpAdapter """ attrs = {"id": 7, "foo": "bar"} http_server.set_response(body=json.dumps(attrs)) http_server.set_response(method='GET', body=json.dumps([attrs])) model = TestModel({}, False) self.assertEqual(model.update_fields({'id': 7, 'foo': 'bar'}), True) self.assertEqual(model.saved, True) self.assertEqual(model.new_record, False) self.assertEqual(model.id, 7) self.assertEqual(model.foo, 'bar')
def test_query(self): records = [{ 'id': 1, 'foo': 'bar' }, { 'id': 2, 'foo': 'bar' }, { 'id': 3, 'foo': 'bar' }] http_server.set_response(method='GET', body=json.dumps(records)) models = TestModel.where({'foo': 'bar'}).limit(3).all() self.assertEqual(len(models), 3) for i, model in enumerate(models): self.assertEqual(type(model), TestModel) self.assertEqual(model.new_record, False) self.assertEqual(model.id, records[i]['id']) self.assertEqual(model.foo, records[i]['foo'])
def respond_with_failure(self, **kwargs): error_kwargs = {"status": 500, "body": "ERROR"} error_kwargs.update(kwargs) http_server.set_response(**error_kwargs)
def respond_with_success(self, **kwargs): http_server.set_response(**kwargs)
def test_raise_if_not_list(self): """should raise if parsed response is not a list of records""" http_server.set_response(body=json.dumps({})) self.assertRaises(errors.MalformedResponse, self.adapter.read, relation=pyperry.Base.scoped())
def setUp(self): self.config = {"host": "localhost:8888", "service": "foo"} self.adapter = RestfulHttpAdapter(self.config, mode="read") self.records = [{"id": 1}, {"id": 2}, {"id": 3}] http_server.set_response(body=json.dumps(self.records))
def assert_success_with_status(self, status, success): http_server.set_response(status=status) response = self.adapter_method(model=self.model) self.assertEqual(response.success, success)
def respond_with_failure(self, **kwargs): error_kwargs = {'status': 500, 'body': 'ERROR'} error_kwargs.update(kwargs) http_server.set_response(**error_kwargs)
def setUp(self): self.config = {'host': 'localhost:8888', 'service': 'foo'} self.adapter = RestfulHttpAdapter(self.config) self.records = [{'id': 1}, {'id': 2}, {'id': 3}] http_server.set_response(body=json.dumps(self.records))
def setUp(self): self.config = { 'host': 'localhost:8888', 'service': 'foo' } self.adapter = RestfulHttpAdapter(self.config) self.records = [{'id': 1}, {'id': 2}, {'id': 3}] http_server.set_response(body=json.dumps(self.records))
def setUp(self): http_server.set_response(method='GET', body=json.dumps([{"id": 42, "foo": "bar"}]))
def setUp(self): http_server.set_response(method='GET', body=json.dumps([{ "id": 42, "foo": "bar" }]))