From 66dc3028d75c455f118c484b9de0708409026451 Mon Sep 17 00:00:00 2001 From: Bernhard Posselt Date: Fri, 23 May 2014 02:54:58 +0200 Subject: stuff --- js/tests/unit/controller/SettingsControllerSpec.js | 17 ++++--- js/tests/unit/service/FeedResourceSpec.js | 55 ++++++++++++++++++++++ 2 files changed, 66 insertions(+), 6 deletions(-) create mode 100644 js/tests/unit/service/FeedResourceSpec.js (limited to 'js/tests') diff --git a/js/tests/unit/controller/SettingsControllerSpec.js b/js/tests/unit/controller/SettingsControllerSpec.js index c438fbcd0..523d74bc0 100644 --- a/js/tests/unit/controller/SettingsControllerSpec.js +++ b/js/tests/unit/controller/SettingsControllerSpec.js @@ -10,10 +10,17 @@ describe('SettingsController', () => { 'use strict'; + let route; + beforeEach(module('News', ($provide) => { $provide.value('BASE_URL', 'base'); })); + beforeEach(() => { + route = { + reload: jasmine.createSpy('Route') + }; + }); it('should set values', inject(($controller) => { let Settings = { @@ -22,7 +29,8 @@ describe('SettingsController', () => { }; let ctrl = $controller('SettingsController', { - Settings: Settings + Settings: Settings, + $route: route }); ctrl.toggleSetting(3); @@ -37,10 +45,6 @@ describe('SettingsController', () => { get: key => key }; - let route = { - reload: jasmine.createSpy('Route') - }; - let ctrl = $controller('SettingsController', { Settings: settings, $route: route @@ -59,7 +63,8 @@ describe('SettingsController', () => { FeedResource.add({url: 'hi'}); let ctrl = $controller('SettingsController', { - FeedResource: FeedResource + FeedResource: FeedResource, + $route: route }); expect(ctrl.feedSize()).toBe(1); diff --git a/js/tests/unit/service/FeedResourceSpec.js b/js/tests/unit/service/FeedResourceSpec.js new file mode 100644 index 000000000..8b941d99d --- /dev/null +++ b/js/tests/unit/service/FeedResourceSpec.js @@ -0,0 +1,55 @@ +/** + * ownCloud - News + * + * This file is licensed under the Affero General Public License version 3 or + * later. See the COPYING file. + * + * @author Bernhard Posselt + * @copyright Bernhard Posselt 2014 + */ +describe('ItemResource', () => { + 'use strict'; + + let resource; + + beforeEach(module('News', ($provide) => { + $provide.value('BASE_URL', 'base'); + })); + + + beforeEach(inject((FeedResource) => { + resource = FeedResource; + FeedResource.add({id: 1, url: 'ye', unreadCount: 45}); + FeedResource.add({id: 2, url: 'sye', unreadCount: 25}); + FeedResource.add({id: 3, url: '1sye', unreadCount: 0}); + })); + + it('should mark all read', inject((FeedResource) => { + + FeedResource.markRead(); + + expect(FeedResource.getUnreadCount()).toBe(0); + })); + + it('should mark a feed read', inject((FeedResource) => { + + FeedResource.markFeedRead(1); + + expect(FeedResource.get('ye').unreadCount).toBe(0); + })); + + + it('should mark an item read', inject((FeedResource) => { + + FeedResource.markItemOfFeedRead(1); + + expect(FeedResource.get('ye').unreadCount).toBe(44); + })); + + it('should mark an item unread', inject((FeedResource) => { + + FeedResource.markItemOfFeedUnread(1); + + expect(FeedResource.get('ye').unreadCount).toBe(46); + })); +}); -- cgit v1.2.3