From 1777110958f76ee4be5760e36c96702223385918 Mon Sep 17 00:00:00 2001 From: Igor Minar Date: Tue, 15 Feb 2011 01:12:45 -0500 Subject: split up services into individual files - split up services into files under src/service - split up specs into files under test/service - rewrite all specs so that they don't depend on one global forEach - get rid of obsolete code and tests in ng:switch - rename mock $log spec from "$log" to "$log mock" --- test/service/xhr.errorSpec.js | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 test/service/xhr.errorSpec.js (limited to 'test/service/xhr.errorSpec.js') diff --git a/test/service/xhr.errorSpec.js b/test/service/xhr.errorSpec.js new file mode 100644 index 00000000..da1b102e --- /dev/null +++ b/test/service/xhr.errorSpec.js @@ -0,0 +1,36 @@ +describe('$xhr.error', function() { + var scope, $browser, $browserXhr, $xhr, $xhrError, log; + + beforeEach(function(){ + scope = angular.scope({}, angular.service, { + '$xhr.error': $xhrError = jasmine.createSpy('$xhr.error') + }); + $browser = scope.$service('$browser'); + $browserXhr = $browser.xhr; + $xhr = scope.$service('$xhr'); + log = ''; + }); + + + afterEach(function(){ + dealoc(scope); + }); + + + function callback(code, response) { + expect(code).toEqual(200); + log = log + toJson(response) + ';'; + } + + + it('should handle non 200 status codes by forwarding to error handler', function(){ + $browserXhr.expectPOST('/req', 'MyData').respond(500, 'MyError'); + $xhr('POST', '/req', 'MyData', callback); + $browserXhr.flush(); + var cb = $xhrError.mostRecentCall.args[0].callback; + expect(typeof cb).toEqual($function); + expect($xhrError).wasCalledWith( + {url:'/req', method:'POST', data:'MyData', callback:cb}, + {status:500, body:'MyError'}); + }); +}); -- cgit v1.2.3