summaryrefslogtreecommitdiffstats
path: root/js/tests
diff options
context:
space:
mode:
authorBernhard Posselt <dev@bernhard-posselt.com>2014-09-13 02:42:19 +0200
committerBernhard Posselt <dev@bernhard-posselt.com>2014-09-13 02:42:19 +0200
commit0a818fa9ff21d98c16def02cfbf1043ea675d2a9 (patch)
tree53cfa5d989fe2046d81fe086fd26d1c8ae5dd6b6 /js/tests
parent8c38ef40bd9b1ff794de218ea71d43971bef4c59 (diff)
delete + undo folders
Diffstat (limited to 'js/tests')
-rw-r--r--js/tests/unit/controller/NavigationControllerSpec.js78
-rw-r--r--js/tests/unit/service/FeedResourceSpec.js5
-rw-r--r--js/tests/unit/service/FolderResourceSpec.js16
3 files changed, 86 insertions, 13 deletions
diff --git a/js/tests/unit/controller/NavigationControllerSpec.js b/js/tests/unit/controller/NavigationControllerSpec.js
index f5781dafa..4dc4e40f9 100644
--- a/js/tests/unit/controller/NavigationControllerSpec.js
+++ b/js/tests/unit/controller/NavigationControllerSpec.js
@@ -738,7 +738,7 @@ describe('NavigationController', function () {
var feed = {
id: 3,
- deleted: false
+ deleted: true
};
ctrl.undoDeleteFeed(feed);
@@ -750,7 +750,7 @@ describe('NavigationController', function () {
it('should delete a feed', inject(function (
$controller, FeedResource) {
- FeedResource.delete = jasmine.createSpy('undoDelete');
+ FeedResource.delete = jasmine.createSpy('delete');
var ctrl = $controller('NavigationController', {
FeedResource: FeedResource,
@@ -766,4 +766,78 @@ describe('NavigationController', function () {
}));
+ it('should reversibly delete a folder', inject(function (
+ $controller, FolderResource, FeedResource) {
+ FolderResource.reversiblyDelete = jasmine.createSpy('reversiblyDelete');
+
+ var ctrl = $controller('NavigationController', {
+ FolderResource: FolderResource,
+ });
+
+ var folder = {
+ id: 3,
+ deleted: false,
+ name: 'test'
+ };
+
+ ctrl.reversiblyDeleteFolder(folder);
+
+ expect(FolderResource.reversiblyDelete).toHaveBeenCalledWith(3);
+ expect(folder.deleted).toBe(true);
+ expect(FeedResource.size(2)).toBe(1);
+ expect(ctrl._deletedFeedsBackup.test.length).toBe(2);
+ }));
+
+
+ it('should undo delete a folder', inject(function (
+ $controller, FolderResource, FeedResource) {
+ FolderResource.undoDelete = jasmine.createSpy('undoDelete');
+
+ var ctrl = $controller('NavigationController', {
+ FolderResource: FolderResource,
+ FeedResource: FeedResource
+ });
+
+ var folder = {
+ id: 3,
+ deleted: true,
+ name: 'test'
+ };
+
+ var feed1 = FeedResource.delete(1);
+ var feed2 = FeedResource.delete(3);
+ expect(FeedResource.size()).toBe(1);
+
+ ctrl._deletedFeedsBackup.test = [feed1, feed2];
+
+ ctrl.undoDeleteFolder(folder);
+
+ expect(FolderResource.undoDelete).toHaveBeenCalledWith(3);
+ expect(folder.deleted).toBe(false);
+ expect(FeedResource.size()).toBe(3);
+ }));
+
+
+ it('should delete a folder', inject(function (
+ $controller, FolderResource) {
+ FolderResource.delete = jasmine.createSpy('delete');
+
+ var ctrl = $controller('NavigationController', {
+ FolderResource: FolderResource,
+ });
+
+ var folder = {
+ id: 3,
+ name: 'test'
+ };
+
+ ctrl._deletedFeedsBackup.test = [1, 2];
+
+ ctrl.deleteFolder(folder);
+
+ expect(FolderResource.delete).toHaveBeenCalledWith('test');
+ expect(ctrl._deletedFeedsBackup.test).toBe(undefined);
+ }));
+
+
});
diff --git a/js/tests/unit/service/FeedResourceSpec.js b/js/tests/unit/service/FeedResourceSpec.js
index c6f3ba050..a64b1b162 100644
--- a/js/tests/unit/service/FeedResourceSpec.js
+++ b/js/tests/unit/service/FeedResourceSpec.js
@@ -229,7 +229,10 @@ describe('FeedResource', function () {
it ('should delete a feed', inject(function (FeedResource) {
- FeedResource.delete(2);
+ var feed = FeedResource.getById(2);
+ var deletedFeed = FeedResource.delete(2);
+
+ expect(deletedFeed).toBe(feed);
expect(FeedResource.get('sye')).toBe(undefined);
expect(FeedResource.size()).toBe(2);
}));
diff --git a/js/tests/unit/service/FolderResourceSpec.js b/js/tests/unit/service/FolderResourceSpec.js
index a5902d2ee..444dba2e0 100644
--- a/js/tests/unit/service/FolderResourceSpec.js
+++ b/js/tests/unit/service/FolderResourceSpec.js
@@ -35,13 +35,9 @@ describe('FolderResource', function () {
it ('should delete a folder', inject(function (FolderResource) {
- http.expectDELETE('base/folders/1').respond(200, {});
-
FolderResource.delete('ye');
-
- http.flush();
-
expect(FolderResource.size()).toBe(2);
+ expect(FolderResource.get('ye')).toBe(undefined);
}));
@@ -111,21 +107,21 @@ describe('FolderResource', function () {
}));
- it ('should undo a delete folder', inject(function (FolderResource) {
+ it ('should reversibly delete a folder', inject(function (FolderResource) {
http.expectDELETE('base/folders/1').respond(200, {});
- FolderResource.delete('ye');
+ FolderResource.reversiblyDelete(1);
http.flush();
+ }));
+ it ('should undo a delete folder', inject(function (FolderResource) {
http.expectPOST('base/folders/1/restore').respond(200, {});
- FolderResource.undoDelete();
+ FolderResource.undoDelete(1);
http.flush();
-
- expect(FolderResource.get('ye').id).toBe(1);
}));