From 94514a91f8e352e97c5eb44cdace29643e57f9d6 Mon Sep 17 00:00:00 2001 From: Anthony Lieuallen Date: Tue, 22 Mar 2011 13:51:48 -0400 Subject: Don't mutate resource if server responded with no body If the server provides response with no body to a resource request, resource should not mutate the resource model in the callback. --- test/ResourceSpec.js | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'test/ResourceSpec.js') diff --git a/test/ResourceSpec.js b/test/ResourceSpec.js index 633fd605..df5b624f 100644 --- a/test/ResourceSpec.js +++ b/test/ResourceSpec.js @@ -177,6 +177,20 @@ describe("resource", function() { expect(callback).wasCalledWith(cc); }); + it('should not mutate the resource object if response contains no body', function(){ + var data = {id:{key:123}, number:'9876'}; + xhr.expectGET("/CreditCard/123").respond(data); + var cc = CreditCard.get({id:123}); + xhr.flush(); + expect(cc instanceof CreditCard).toBeTruthy(); + var idBefore = cc.id; + + xhr.expectPOST("/CreditCard/123", data).respond(''); + cc.$save(); + xhr.flush(); + expect(idBefore).toEqual(cc.id); + }); + it('should bind default parameters', function(){ xhr.expectGET('/CreditCard/123.visa?minimum=0.05').respond({id:123}); var Visa = CreditCard.bind({verb:'.visa', minimum:0.05}); -- cgit v1.2.3