summaryrefslogtreecommitdiffstats
path: root/js/tests
diff options
context:
space:
mode:
authorBernhard Posselt <dev@bernhard-posselt.com>2014-09-12 23:54:49 +0200
committerBernhard Posselt <dev@bernhard-posselt.com>2014-09-12 23:54:49 +0200
commit72c4fc9acb1380021eb4665af78ef8e26058c86a (patch)
tree8ae59a2df7f4deaafbbb61060a47d2efddf8702b /js/tests
parentf7feeecf398fc9a7ba62596f784bf9ec28677940 (diff)
rename folder
Diffstat (limited to 'js/tests')
-rw-r--r--js/tests/unit/controller/NavigationControllerSpec.js96
-rw-r--r--js/tests/unit/service/FolderResourceSpec.js13
2 files changed, 107 insertions, 2 deletions
diff --git a/js/tests/unit/controller/NavigationControllerSpec.js b/js/tests/unit/controller/NavigationControllerSpec.js
index 411c43ef2..d502d99c6 100644
--- a/js/tests/unit/controller/NavigationControllerSpec.js
+++ b/js/tests/unit/controller/NavigationControllerSpec.js
@@ -595,8 +595,7 @@ describe('NavigationController', function () {
}));
- it('should rename a feed', inject(
- function ($controller, FEED_TYPE, FeedResource) {
+ it('should rename a feed', inject(function ($controller, FeedResource) {
FeedResource.rename = jasmine.createSpy('rename');
var ctrl = $controller('NavigationController', {
@@ -615,4 +614,97 @@ describe('NavigationController', function () {
expect(feed.editing).toBe(false);
}));
+
+ it('should rename a folder', inject(function ($controller, FolderResource) {
+ FolderResource.rename = jasmine.createSpy('rename')
+ .andCallFake(function () {
+ return {
+ then: function (success) {
+ success();
+ return {
+ finally: function (callback) {
+ callback();
+ }
+ };
+ }
+ };
+ });
+
+ var ctrl = $controller('NavigationController', {
+ FolderResource: FolderResource,
+ });
+
+ var folder = {
+ id: 3,
+ name: 'test',
+ renameError: 'nope',
+ editing: true
+ };
+
+ ctrl.renameFolder(folder, 'abc');
+
+ expect(FolderResource.rename).toHaveBeenCalledWith('test', 'abc');
+ expect(folder.renameError).toBe('');
+ expect(folder.editing).toBe(false);
+ }));
+
+
+ it('should handle rename folder error', inject(function ($controller,
+ FolderResource) {
+ FolderResource.rename = jasmine.createSpy('rename')
+ .andCallFake(function () {
+ return {
+ then: function (success, error) {
+ error('no');
+ return {
+ finally: function (callback) {
+ callback();
+ }
+ };
+ }
+ };
+ });
+
+ var ctrl = $controller('NavigationController', {
+ FolderResource: FolderResource,
+ });
+
+ var folder = {
+ id: 3,
+ name: 'test',
+ renameError: 'nope',
+ editing: true
+ };
+
+ ctrl.renameFolder(folder, 'abc');
+
+ expect(FolderResource.rename).toHaveBeenCalledWith('test', 'abc');
+ expect(folder.renameError).toBe('no');
+ expect(folder.editing).toBe(true);
+ }));
+
+
+ it('should handle rename a folder if the name did not change',
+ inject(function ($controller, FolderResource) {
+ FolderResource.rename = jasmine.createSpy('rename');
+
+ var ctrl = $controller('NavigationController', {
+ FolderResource: FolderResource,
+ });
+
+ var folder = {
+ id: 3,
+ name: 'test',
+ renameError: 'nope',
+ editing: true
+ };
+
+ ctrl.renameFolder(folder, 'test');
+
+ expect(FolderResource.rename).not.toHaveBeenCalled();
+ expect(folder.renameError).toBe('');
+ expect(folder.editing).toBe(false);
+ expect(ctrl.renamingFolder).toBe(false);
+ }));
+
});
diff --git a/js/tests/unit/service/FolderResourceSpec.js b/js/tests/unit/service/FolderResourceSpec.js
index 6d3e73799..a5902d2ee 100644
--- a/js/tests/unit/service/FolderResourceSpec.js
+++ b/js/tests/unit/service/FolderResourceSpec.js
@@ -58,6 +58,19 @@ describe('FolderResource', function () {
}));
+ it ('should handle a folderrename error', inject(function (FolderResource) {
+ http.expectPOST('base/folders/1/rename', {
+ folderName: 'heho'
+ }).respond(400, {});
+
+ FolderResource.rename('ye', 'heho');
+
+ http.flush();
+
+ expect(FolderResource.get('ye').id).toBe(1);
+ }));
+
+
it ('should open a folder', inject(function (FolderResource) {
http.expectPOST('base/folders/3/open', {
folderId: 3,