| Index: chrome/test/data/webui/extensions/extension_manager_test.js
|
| diff --git a/chrome/test/data/webui/extensions/extension_manager_test.js b/chrome/test/data/webui/extensions/extension_manager_test.js
|
| index 503114f0cf2e4dee89f768a297b3afc3bdf74ebe..baefe11bc59d7bce4a48dc7c90ecdeb3ea4abea8 100644
|
| --- a/chrome/test/data/webui/extensions/extension_manager_test.js
|
| +++ b/chrome/test/data/webui/extensions/extension_manager_test.js
|
| @@ -6,12 +6,9 @@
|
| cr.define('extension_manager_tests', function() {
|
| /** @enum {string} */
|
| var TestNames = {
|
| - SplitSections: 'split sections',
|
| ItemOrder: 'item order',
|
| - ExtensionSectionVisibility: 'extension section visibility',
|
| - AppSectionVisibility: 'app section visibility',
|
| - WebsiteSectionVisibility: 'website section visibility',
|
| - Scrolling: 'scrolling',
|
| + ItemListVisibility: 'item list visibility',
|
| + ShowItems: 'show items',
|
| };
|
|
|
| function getDataByName(list, name) {
|
| @@ -27,34 +24,6 @@ cr.define('extension_manager_tests', function() {
|
| manager = document.querySelector('extensions-manager');
|
| });
|
|
|
| - test(assert(TestNames.SplitSections), function() {
|
| - var testManagerElementVisible =
|
| - extension_test_util.testVisible.bind(null, manager);
|
| - // All sections should be visible.
|
| - testManagerElementVisible('#extensions-list', true);
|
| - testManagerElementVisible('#apps-list', true);
|
| - testManagerElementVisible('#websites-list', true);
|
| -
|
| - var sectionHasItemWithName = function(section, name) {
|
| - return !!manager[section].find(function(el) {
|
| - return el.name == name;
|
| - });
|
| - };
|
| -
|
| - expectEquals(manager.extensions, manager.$['extensions-list'].items);
|
| - expectEquals(manager.apps, manager.$['apps-list'].items);
|
| - expectEquals(manager.websites, manager.$['websites-list'].items);
|
| -
|
| - // We really just have to test for existence of the items within the
|
| - // given subsection of the manager, since they are bound to the iron
|
| - // list with Polymer (and we kind of have to trust that Polymer works).
|
| - expectTrue(sectionHasItemWithName('extensions', 'My extension 1'));
|
| - expectTrue(sectionHasItemWithName(
|
| - 'apps', 'Platform App Test: minimal platform app'));
|
| - expectTrue(sectionHasItemWithName('websites', 'hosted_app'));
|
| - expectTrue(sectionHasItemWithName('websites', 'Packaged App Test'));
|
| - });
|
| -
|
| test(assert(TestNames.ItemOrder), function() {
|
| expectEquals(0, manager.extensions.length);
|
|
|
| @@ -105,82 +74,54 @@ cr.define('extension_manager_tests', function() {
|
| expectEquals(alphaFromStore.id, manager.extensions[5].id);
|
| });
|
|
|
| - test(assert(TestNames.ExtensionSectionVisibility), function() {
|
| + test(assert(TestNames.ItemListVisibility), function() {
|
| var testVisible = extension_test_util.testVisible.bind(null, manager);
|
| - var testSidebarVisible =
|
| - extension_test_util.testVisible.bind(null, manager.sidebar);
|
| -
|
| var extension = getDataByName(manager.extensions, 'My extension 1');
|
|
|
| - testVisible('#extensions-list', true);
|
| - testSidebarVisible('#sections-extensions', true);
|
| - manager.removeItem(extension);
|
| - Polymer.dom.flush();
|
| - testVisible('#extensions-list', false);
|
| - testSidebarVisible('#sections-extensions', false);
|
| + var listHasItemWithName = function(name) {
|
| + return !!manager.$['items-list'].items.find(function(el) {
|
| + return el.name == name;
|
| + });
|
| + };
|
|
|
| - manager.addItem(extension);
|
| - Polymer.dom.flush();
|
| - testVisible('#extensions-list', true);
|
| - testSidebarVisible('#sections-extensions', true);
|
| - });
|
| + expectEquals(manager.extensions, manager.$['items-list'].items);
|
| + testVisible('#items-list', true);
|
| + expectTrue(listHasItemWithName('My extension 1'));
|
|
|
| - test(assert(TestNames.AppSectionVisibility), function() {
|
| - var testVisible = extension_test_util.testVisible.bind(null, manager);
|
| - var testSidebarVisible =
|
| - extension_test_util.testVisible.bind(null, manager.sidebar);
|
| - var platformApp =
|
| - getDataByName(manager.apps,
|
| - 'Platform App Test: minimal platform app');
|
| -
|
| - testVisible('#apps-list', true);
|
| - testSidebarVisible('#sections-apps', true);
|
| - manager.removeItem(platformApp);
|
| + manager.removeItem(extension);
|
| Polymer.dom.flush();
|
| - testVisible('#apps-list', false);
|
| - testSidebarVisible('#sections-apps', false);
|
| + testVisible('#items-list', false);
|
| + expectFalse(listHasItemWithName('My extension 1'));
|
|
|
| - manager.addItem(platformApp);
|
| + manager.addItem(extension);
|
| Polymer.dom.flush();
|
| - testVisible('#apps-list', true);
|
| - testSidebarVisible('#sections-apps', true);
|
| + testVisible('#items-list', true);
|
| + expectTrue(listHasItemWithName('My extension 1'));
|
| });
|
|
|
| - test(assert(TestNames.WebsiteSectionVisibility), function() {
|
| - var testVisible = extension_test_util.testVisible.bind(null, manager);
|
| - var testSidebarVisible =
|
| - extension_test_util.testVisible.bind(null, manager.sidebar);
|
| -
|
| - var hostedApp = getDataByName(manager.websites, 'hosted_app');
|
| - var packagedApp = getDataByName(manager.websites, 'Packaged App Test');
|
| -
|
| - testVisible('#websites-list', true);
|
| - testSidebarVisible('#sections-websites', true);
|
| - expectEquals(2, manager.websites.length);
|
| - manager.removeItem(hostedApp);
|
| - Polymer.dom.flush();
|
| - expectEquals(1, manager.websites.length);
|
| - testVisible('#websites-list', true);
|
| - testSidebarVisible('#sections-websites', true);
|
| - manager.removeItem(packagedApp);
|
| - Polymer.dom.flush();
|
| - testVisible('#websites-list', false);
|
| - testSidebarVisible('#sections-websites', false);
|
| -
|
| - manager.addItem(hostedApp);
|
| - Polymer.dom.flush();
|
| - testVisible('#websites-list', true);
|
| - testSidebarVisible('#sections-websites', true);
|
| - });
|
| + test(assert(TestNames.ShowItems), function() {
|
| + var sectionHasItemWithName = function(section, name) {
|
| + return !!manager[section].find(function(el) {
|
| + return el.name == name;
|
| + });
|
| + };
|
|
|
| - test(assert(TestNames.Scrolling), function() {
|
| - // TODO(devlin): This doesn't really test anything, because scrolling is
|
| - // so heavily dependent on viewport size (which is very unpredictable in
|
| - // browser tests). But we can at least exercise the code path and check
|
| - // for errors.
|
| - manager.scrollHelper_.scrollToExtensions();
|
| - manager.scrollHelper_.scrollToApps();
|
| - manager.scrollHelper_.scrollToWebsites();
|
| + // Test that we properly split up the items into two sections.
|
| + expectTrue(sectionHasItemWithName('extensions', 'My extension 1'));
|
| + expectTrue(sectionHasItemWithName(
|
| + 'apps', 'Platform App Test: minimal platform app'));
|
| + expectTrue(sectionHasItemWithName('apps', 'hosted_app'));
|
| + expectTrue(sectionHasItemWithName('apps', 'Packaged App Test'));
|
| +
|
| + // Toggle between extensions and apps and back again.
|
| + expectEquals(manager.extensions, manager.$['items-list'].items);
|
| + manager.listHelper_.showType(extensions.ShowingType.APPS);
|
| + expectEquals(manager.apps, manager.$['items-list'].items);
|
| + manager.listHelper_.showType(extensions.ShowingType.EXTENSIONS);
|
| + expectEquals(manager.extensions, manager.$['items-list'].items);
|
| + // Repeating a selection should have no change.
|
| + manager.listHelper_.showType(extensions.ShowingType.EXTENSIONS);
|
| + expectEquals(manager.extensions, manager.$['items-list'].items);
|
| });
|
| });
|
| }
|
|
|