diff options
author | Bernhard Posselt <dev@bernhard-posselt.com> | 2014-09-13 12:46:29 +0200 |
---|---|---|
committer | Bernhard Posselt <dev@bernhard-posselt.com> | 2014-09-13 12:46:29 +0200 |
commit | e06aaac5120f95212598b54cd1fb6e2513e77b86 (patch) | |
tree | fb156d6c90c63fb14363c8f19f2ba4dd8ad3e1a9 /js/tests/unit | |
parent | 021b68025223f2f3fdc8a7f588ae2e87128cbbc0 (diff) |
fix starred count for deleted folders, reload path when deleting
Diffstat (limited to 'js/tests/unit')
-rw-r--r-- | js/tests/unit/controller/NavigationControllerSpec.js | 76 |
1 files changed, 64 insertions, 12 deletions
diff --git a/js/tests/unit/controller/NavigationControllerSpec.js b/js/tests/unit/controller/NavigationControllerSpec.js index 36687de9b..c3c34bad6 100644 --- a/js/tests/unit/controller/NavigationControllerSpec.js +++ b/js/tests/unit/controller/NavigationControllerSpec.js @@ -709,11 +709,17 @@ describe('NavigationController', function () { it('should reversibly delete a feed', inject(function ( - $controller, FeedResource) { - FeedResource.reversiblyDelete = jasmine.createSpy('reversiblyDelete'); + $controller, FeedResource, $q, $rootScope) { + var deferred = $q.defer(); + FeedResource.reversiblyDelete = jasmine.createSpy('reversiblyDelete') + .andReturn(deferred.promise); + var route = { + reload: jasmine.createSpy('reload') + }; var ctrl = $controller('NavigationController', { FeedResource: FeedResource, + $route: route }); var feed = { @@ -724,16 +730,27 @@ describe('NavigationController', function () { ctrl.reversiblyDeleteFeed(feed); + // $q is triggered by $digest on $rootScope + deferred.resolve(); + $rootScope.$digest(); + expect(FeedResource.reversiblyDelete).toHaveBeenCalledWith(3); + expect(route.reload).toHaveBeenCalled(); })); it('should undo delete a feed', inject(function ( - $controller, FeedResource) { - FeedResource.undoDelete = jasmine.createSpy('undoDelete'); + $controller, FeedResource, $q, $rootScope) { + var deferred = $q.defer(); + FeedResource.undoDelete = jasmine.createSpy('undoDelete') + .andReturn(deferred.promise); + var route = { + reload: jasmine.createSpy('reload') + }; var ctrl = $controller('NavigationController', { FeedResource: FeedResource, + $route: route }); var feed = { @@ -743,7 +760,12 @@ describe('NavigationController', function () { ctrl.undoDeleteFeed(feed); + // $q is triggered by $digest on $rootScope + deferred.resolve(); + $rootScope.$digest(); + expect(FeedResource.undoDelete).toHaveBeenCalledWith(3); + expect(route.reload).toHaveBeenCalled(); })); @@ -767,14 +789,24 @@ describe('NavigationController', function () { it('should reversibly delete a folder', inject(function ( - $controller, FolderResource, FeedResource) { - FolderResource.reversiblyDelete = jasmine.createSpy('reversiblyDelete'); + $controller, FolderResource, FeedResource, $q, $rootScope) { + var deferredFeed = $q.defer(); + var deferredFolder = $q.defer(); + + FolderResource.reversiblyDelete = jasmine.createSpy('reversiblyDelete') + .andReturn(deferredFolder.promise); FeedResource.reversiblyDeleteFolder = - jasmine.createSpy('reversiblyDelete'); + jasmine.createSpy('reversiblyDelete') + .andReturn(deferredFolder.promise); + + var route = { + reload: jasmine.createSpy('reload') + }; var ctrl = $controller('NavigationController', { FolderResource: FolderResource, - FeedResource: FeedResource + FeedResource: FeedResource, + $route: route }); var folder = { @@ -785,19 +817,33 @@ describe('NavigationController', function () { ctrl.reversiblyDeleteFolder(folder); + // $q is triggered by $digest on $rootScope + deferredFeed.resolve(); + deferredFolder.resolve(); + $rootScope.$digest(); + expect(FolderResource.reversiblyDelete).toHaveBeenCalledWith('test'); expect(FeedResource.reversiblyDeleteFolder).toHaveBeenCalledWith(3); + expect(route.reload).toHaveBeenCalled(); })); it('should undo delete a folder', inject(function ( - $controller, FolderResource, FeedResource) { - FolderResource.undoDelete = jasmine.createSpy('undoDelete'); - FeedResource.undoDeleteFolder = jasmine.createSpy('undoDelete'); + $controller, FolderResource, FeedResource, $q, $rootScope) { + var deferredFeed = $q.defer(); + var deferredFolder = $q.defer(); + FolderResource.undoDelete = jasmine.createSpy('undoDelete') + .andReturn(deferredFolder.promise); + FeedResource.undoDeleteFolder = jasmine.createSpy('undoDelete') + .andReturn(deferredFeed.promise); + var route = { + reload: jasmine.createSpy('reload') + }; var ctrl = $controller('NavigationController', { FolderResource: FolderResource, - FeedResource: FeedResource + FeedResource: FeedResource, + $route: route }); var folder = { @@ -808,8 +854,14 @@ describe('NavigationController', function () { ctrl.undoDeleteFolder(folder); + // $q is triggered by $digest on $rootScope + deferredFeed.resolve(); + deferredFolder.resolve(); + $rootScope.$digest(); + expect(FolderResource.undoDelete).toHaveBeenCalledWith('test'); expect(FeedResource.undoDeleteFolder).toHaveBeenCalledWith(3); + expect(route.reload).toHaveBeenCalled(); })); |