aboutsummaryrefslogtreecommitdiffstats
path: root/test/ngResource
diff options
context:
space:
mode:
Diffstat (limited to 'test/ngResource')
-rw-r--r--test/ngResource/resourceSpec.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/test/ngResource/resourceSpec.js b/test/ngResource/resourceSpec.js
index 01466f1c..3d263688 100644
--- a/test/ngResource/resourceSpec.js
+++ b/test/ngResource/resourceSpec.js
@@ -356,6 +356,35 @@ describe("resource", function() {
});
+ it('should support dynamic default parameters (global)', function() {
+ var currentGroup = 'students',
+ Person = $resource('/Person/:group/:id', { group: function() { return currentGroup; }});
+
+
+ $httpBackend.expect('GET', '/Person/students/fedor').respond({id: 'fedor', email: 'f@f.com'});
+
+ var fedor = Person.get({id: 'fedor'});
+ $httpBackend.flush();
+
+ expect(fedor).toEqualData({id: 'fedor', email: 'f@f.com'});
+ });
+
+
+ it('should support dynamic default parameters (action specific)', function() {
+ var currentGroup = 'students',
+ Person = $resource('/Person/:group/:id', {}, {
+ fetch: {method: 'GET', params: {group: function() { return currentGroup; }}}
+ });
+
+ $httpBackend.expect('GET', '/Person/students/fedor').respond({id: 'fedor', email: 'f@f.com'});
+
+ var fedor = Person.fetch({id: 'fedor'});
+ $httpBackend.flush();
+
+ expect(fedor).toEqualData({id: 'fedor', email: 'f@f.com'});
+ });
+
+
it('should exercise full stack', function() {
var Person = $resource('/Person/:id');