Tobias Jeger pushed to branch feature/cmng-psp1 at cms-community / hippo-addon-channel-manager
Commits: d227af10 by Tobias Jeger at 2016-05-31T10:59:54+02:00 CHANNELMGR-692 Unit test for triggering the changes menu from the menu editor - - - - - 2 changed files: - frontend-ng/src/angularjs/channel/menu/editor.controller.js - frontend-ng/src/angularjs/channel/menu/editor.spec.js Changes: ===================================== frontend-ng/src/angularjs/channel/menu/editor.controller.js ===================================== --- a/frontend-ng/src/angularjs/channel/menu/editor.controller.js +++ b/frontend-ng/src/angularjs/channel/menu/editor.controller.js @@ -57,7 +57,11 @@ export class MenuEditorCtrl { if (source.nodesScope !== destNodesScope || source.index !== dest.index) { SiteMenuService.moveMenuItem(sourceId, destId, dest.index) .then(() => { this.isMenuModified = true; }) - .catch(() => this.onError({ key: 'ERROR_MENU_MOVE_FAILED' })); + .catch((response) => { + response = response || {}; + + this.FeedbackService.showErrorOnSubpage('ERROR_MENU_MOVE_FAILED', response.data); + }); } }, }; ===================================== frontend-ng/src/angularjs/channel/menu/editor.spec.js ===================================== --- a/frontend-ng/src/angularjs/channel/menu/editor.spec.js +++ b/frontend-ng/src/angularjs/channel/menu/editor.spec.js @@ -28,13 +28,15 @@ describe('MenuEditor', () => { let DialogService; let FeedbackService; let HippoIframeService; + let ChannelService; let menu; let MenuEditorCtrl; beforeEach(() => { module('hippo-cm'); - inject((_$q_, _$rootScope_, _$compile_, _SiteMenuService_, _DialogService_, _FeedbackService_, _HippoIframeService_) => { + inject((_$q_, _$rootScope_, _$compile_, _SiteMenuService_, _DialogService_, _FeedbackService_, _HippoIframeService_, + _ChannelService_) => { $q = _$q_; $rootScope = _$rootScope_; $compile = _$compile_; @@ -42,6 +44,7 @@ describe('MenuEditor', () => { DialogService = _DialogService_; FeedbackService = _FeedbackService_; HippoIframeService = _HippoIframeService_; + ChannelService = _ChannelService_; }); menu = { items: [] }; @@ -168,13 +171,29 @@ describe('MenuEditor', () => { }); describe('onBack', () => { - it('sets the item to be the editing item', () => { - spyOn(HippoIframeService, 'reload').and.returnValue($q.when()); + it('returns to the main page with no changes', () => { + spyOn(HippoIframeService, 'reload'); + spyOn(ChannelService, 'recordOwnChange'); spyOn(MenuEditorCtrl, 'onDone'); MenuEditorCtrl.onBack(); - expect(HippoIframeService.reload).toHaveBeenCalled(); + expect(HippoIframeService.reload).not.toHaveBeenCalled(); + expect(ChannelService.recordOwnChange).not.toHaveBeenCalled(); + expect(MenuEditorCtrl.onDone).toHaveBeenCalled(); + }); + + it('returns to the mainpage with changes', () => { + spyOn(SiteMenuService, 'saveMenuItem').and.returnValue($q.when()); + MenuEditorCtrl.saveItem(); $rootScope.$apply(); + + spyOn(HippoIframeService, 'reload'); + spyOn(ChannelService, 'recordOwnChange'); + spyOn(MenuEditorCtrl, 'onDone'); + + MenuEditorCtrl.onBack(); + expect(HippoIframeService.reload).toHaveBeenCalled(); + expect(ChannelService.recordOwnChange).toHaveBeenCalled(); expect(MenuEditorCtrl.onDone).toHaveBeenCalled(); }); }); View it on GitLab: https://code.onehippo.org/cms-community/hippo-addon-channel-manager/commit/d227af10ab9ee5fb9c558b5377cc52b40c17a3d8
_______________________________________________ Hippocms-svn mailing list Hippocms-svn@lists.onehippo.org https://lists.onehippo.org/mailman/listinfo/hippocms-svn