// Copyright 2012 Citrix Systems, Inc. Licensed under the // Apache License, Version 2.0 (the "License"); you may not use this // file except in compliance with the License. Citrix Systems, Inc. // reserves all rights not expressly granted by the License. // You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // // Automatically generated by addcopyright.py at 04/03/2012 (function($) { var $browser, $breadcrumbs, $browserContainer; module('Browser', { setup: function() { $.fx.off = true; $browser = $('
').addClass('browser-test').appendTo('#qunit-fixture'); $breadcrumbs = $('
').attr('id', 'breadcrumbs').appendTo($browser); $browserContainer = $('
').addClass('container').appendTo($browser); ok($browserContainer.cloudBrowser(), 'Browser initialized'); equal($breadcrumbs.find('ul').size(), 1, 'Breadcrumbs initialized'); } }); // Browser tests test('Add panel', function() { ok($browserContainer.cloudBrowser('addPanel', { title: 'testPanel123' }), 'Add panel'); equal($browser.find('.panel').size(), 1, 'Browser has 1 panel'); equal($breadcrumbs.find('ul li').size(), 1, 'Browser has 1 breadcrumb'); equal($breadcrumbs.find('ul li:first span').html(), 'testPanel123', 'Panel has correct title'); }); test('Add a second panel', function() { ok($browserContainer.cloudBrowser('addPanel', { title: 'testPanel123' }), 'Add first panel'); ok($browserContainer.cloudBrowser('addPanel', { title: 'testPanel456' }), 'Add second panel'); equal($browser.find('.panel').size(), 2, 'Browser has 2 panels'); equal($breadcrumbs.find('ul li').size(), 2, 'Browser has 2 breadcrumbs'); equal($breadcrumbs.find('ul li:last span').html(), 'testPanel456', 'New panel has correct title'); equal($breadcrumbs.find('ul li:first span').html(), 'testPanel123', 'First panel still has correct title'); }); test('Add maximized panel', function() { var $maximizedPanel, $normalPanel; ok($browserContainer.cloudBrowser('addPanel', { title: 'testPanel123' }, 'Add first panel')); ok($browserContainer.cloudBrowser('addPanel', { title: 'testPanel456' }, 'Add normal-sized-panel')); ok($browserContainer.cloudBrowser('addPanel', { title: 'testPanel789', maximizeIfSelected: true }), 'Add maximized panel'); $maximizedPanel = $browserContainer.find('.panel:last'); $normalPanel = $browserContainer.find('.panel:first').next(); ok($maximizedPanel.hasClass('always-maximized'), 'Maximized panel has maximized class'); ok(!$normalPanel.hasClass('always-maximized'), 'Normal panel has maximized class'); equal($maximizedPanel.width(), $browserContainer.width(), 'Maximized panel covers full width of browser container'); notEqual($normalPanel.width(), $browserContainer.width(), 'Normal panel doesn\'t have maximized appearance'); }); test('Select panel', function() { ok($browserContainer.cloudBrowser('addPanel', { title: 'testPanel123' }), 'Add first panel'); ok($browserContainer.cloudBrowser('addPanel', { title: 'testPanel456' }), 'Add second panel'); ok($browserContainer.cloudBrowser('addPanel', { title: 'testPanel789' }), 'Add third panel'); stop(); $browserContainer.cloudBrowser('selectPanel', { panel: $browser.find('.panel:first').next(), complete: function() { start(); ok(true, 'Select second panel'); } }); equal($browser.find('.panel').size(), 2, 'Browser has 2 panels'); equal($breadcrumbs.find('ul li:first span').html(), 'testPanel123', 'First panel still has correct title'); equal($breadcrumbs.find('ul li:last span').html(), 'testPanel456', 'Second panel still has correct title'); equal($breadcrumbs.find('ul li').size(), 2, 'Browser has 2 breadcrumbs'); stop(); $browserContainer.cloudBrowser('selectPanel', { panel: $browser.find('.panel:first'), complete: function() { start(); ok(true, 'Select first panel'); } }); equal($browser.find('.panel').size(), 1, 'Browser has 1 panel'); equal($breadcrumbs.find('ul li:first span').html(), 'testPanel123', 'First panel still has correct title'); equal($breadcrumbs.find('ul li').size(), 1, 'Browser has 1 breadcrumb'); }); test('Remove all panels', function() { ok($browserContainer.cloudBrowser('addPanel', { title: 'testPanel123' }), 'Add first panel'); ok($browserContainer.cloudBrowser('addPanel', { title: 'testPanel456' }), 'Add second panel'); ok($browserContainer.cloudBrowser('addPanel', { title: 'testPanel789' }), 'Add third panel'); equal($browserContainer.find('.panel').size(), 3, 'Correct # of panels'); ok($browserContainer.cloudBrowser('removeAllPanels'), 'Remove all panels'); equal($browserContainer.find('.panel').size(), 0, 'All panels removed'); ok($browserContainer.cloudBrowser('addPanel', { title: 'testPanel123' }), 'Add 1 panel'); equal($browserContainer.find('.panel').size(), 1, 'Correct # of panels'); }); test('Maximize panel', function() { ok($browserContainer.cloudBrowser('addPanel', { title: 'testPanel123' }), 'Add first panel'); ok($browserContainer.cloudBrowser('addPanel', { title: 'testPanel456' }), 'Add second panel'); equal($browserContainer.find('.panel').size(), 2, 'Correct # of panels'); ok($browserContainer.cloudBrowser('toggleMaximizePanel', { panel: $browserContainer.find('.panel:first')}), 'Maximize first panel'); ok($browserContainer.find('.panel:first').hasClass('maximized'), 'First panel has maximized style'); ok(!$browserContainer.find('.panel:last').hasClass('maximized'), 'Last panel has correct style'); }); }(jQuery));