Skip to content

Commit f002b5d

Browse files
authored
Merge pull request #225 from mrbatista/expose-variable-loopback-resource
Expose configured properties (authHeader and urlBase) on LoopBackResource
2 parents c8cb9ae + 5d9d23e commit f002b5d

File tree

2 files changed

+45
-1
lines changed

2 files changed

+45
-1
lines changed

lib/services.template.ejs

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -464,7 +464,7 @@ if (typeof module !== 'undefined' && typeof exports !== 'undefined' &&
464464
};
465465
466466
this.$get = ['$resource', function($resource) {
467-
return function(url, params, actions) {
467+
var LoopBackResource = function(url, params, actions) {
468468
var resource = $resource(url, params, actions);
469469
470470
// Angular always calls POST on $save()
@@ -478,6 +478,16 @@ if (typeof module !== 'undefined' && typeof exports !== 'undefined' &&
478478
};
479479
return resource;
480480
};
481+
482+
LoopBackResource.getUrlBase = function() {
483+
return urlBase;
484+
};
485+
486+
LoopBackResource.getAuthHeader = function() {
487+
return authHeader;
488+
};
489+
490+
return LoopBackResource;
481491
}];
482492
});
483493
<%

test.e2e/spec/services.spec.js

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,40 @@ define(['angular', 'given', 'util'], function(angular, given, util) {
164164
});
165165
});
166166

167+
describe('LoopBackResource', function() {
168+
it('has getAuthHeader method', function() {
169+
var $injector = createInjector();
170+
var loopBackResource = $injector.get('LoopBackResource');
171+
expect(loopBackResource).to.have.property('getAuthHeader');
172+
});
173+
174+
it('can get authHeader', function() {
175+
var $injector = createInjector();
176+
var loopBackResource = $injector.get('LoopBackResource');
177+
var authHeader = 'X-Awesome-Token';
178+
loopBackResourceProvider.setAuthHeader(authHeader);
179+
var gotAuthHeader = loopBackResource.getAuthHeader();
180+
181+
return expect(gotAuthHeader).to.equal(authHeader);
182+
});
183+
184+
it('has getUrlBase method', function() {
185+
var $injector = createInjector();
186+
var loopBackResource = $injector.get('LoopBackResource');
187+
expect(loopBackResource).to.have.property('getUrlBase');
188+
});
189+
190+
it('can get urlBase', function() {
191+
var $injector = createInjector();
192+
var loopBackResource = $injector.get('LoopBackResource');
193+
var urlBase = 'http://test.urlbase';
194+
loopBackResourceProvider.setUrlBase(urlBase);
195+
var base = loopBackResource.getUrlBase();
196+
197+
return expect(base).to.equal(urlBase);
198+
});
199+
});
200+
167201
describe('LoopBackAuthRequestInterceptor', function() {
168202
it('should be configured as an $httpProvider\'s interceptor',
169203
function() {

0 commit comments

Comments
 (0)