diff options
| author | Igor Minar | 2012-04-10 23:20:53 -0700 | 
|---|---|---|
| committer | Igor Minar | 2012-04-11 17:29:16 -0700 | 
| commit | dceafd32ee140c8af5c7a0ca6cb808395fffeed3 (patch) | |
| tree | a594376801fa05233c39a58a7b7976d2a3b3fc20 /test/ng/httpSpec.js | |
| parent | 0a5050eb3c1f1ed84134f23a44b97a7261114060 (diff) | |
| download | angular.js-dceafd32ee140c8af5c7a0ca6cb808395fffeed3.tar.bz2 | |
feat($http): expose the defaults config as $http.defaults
Often it is impossible to set the http defaults during the config phase,
because the config info is not available at this time.
A good example is authentication - often the app needs to bootstrap,
allow user to enter credentials and only then it gains access to
session token which then should be sent to the server with every request.
Without having the ability to set the defaults at runtime, the developer
either has to resort to hacks, or has to set the session token header
with every request made by the app.
Diffstat (limited to 'test/ng/httpSpec.js')
| -rw-r--r-- | test/ng/httpSpec.js | 16 | 
1 files changed, 16 insertions, 0 deletions
| diff --git a/test/ng/httpSpec.js b/test/ng/httpSpec.js index 24ff50b4..9c01db65 100644 --- a/test/ng/httpSpec.js +++ b/test/ng/httpSpec.js @@ -940,6 +940,22 @@ describe('$http', function() {          $httpBackend.flush();        });      }); + + +    describe('defaults', function() { + +      it('should expose the defaults object at runtime', function() { +        expect($http.defaults).toBeDefined(); + +        $http.defaults.headers.common.foo = 'bar'; +        $httpBackend.expect('GET', '/url', undefined, function(headers) { +          return headers['foo'] == 'bar'; +        }).respond(''); + +        $http.get('/url'); +        $httpBackend.flush(); +      }); +    });    }); | 
