From a808837ec9143df3c7f000f150c1f1c6420ad535 Mon Sep 17 00:00:00 2001 From: Vincent Petry Date: Sun, 30 Aug 2015 17:14:57 +0200 Subject: [PATCH] Add apps unit test --- core/js/tests/specs/appsSpec.js | 48 +++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 core/js/tests/specs/appsSpec.js diff --git a/core/js/tests/specs/appsSpec.js b/core/js/tests/specs/appsSpec.js new file mode 100644 index 0000000000..536d41c7f1 --- /dev/null +++ b/core/js/tests/specs/appsSpec.js @@ -0,0 +1,48 @@ +/** +* ownCloud +* +* @author Vincent Petry +* @copyright 2015 Vincent Petry +* +* This library is free software; you can redistribute it and/or +* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE +* License as published by the Free Software Foundation; either +* version 3 of the License, or any later version. +* +* This library is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU AFFERO GENERAL PUBLIC LICENSE for more details. +* +* You should have received a copy of the GNU Affero General Public +* License along with this library. If not, see . +* +*/ + +describe('Apps base tests', function() { + describe('Sidebar utility functions', function() { + beforeEach(function() { + $('#testArea').append('
Content
The sidebar
'); + }); + it('shows sidebar', function() { + var $el = $('#app-sidebar'); + OC.Apps.showAppSidebar(); + expect($el.hasClass('disappear')).toEqual(false); + }); + it('hides sidebar', function() { + var $el = $('#app-sidebar'); + OC.Apps.showAppSidebar(); + OC.Apps.hideAppSidebar(); + expect($el.hasClass('disappear')).toEqual(true); + }); + it('triggers appresize event when visibility changed', function() { + var eventStub = sinon.stub(); + $('#app-content').on('appresized', eventStub); + OC.Apps.showAppSidebar(); + expect(eventStub.calledOnce).toEqual(true); + OC.Apps.hideAppSidebar(); + expect(eventStub.calledTwice).toEqual(true); + }); + }); +}); +