Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8422)

Unified Diff: chrome/test/data/webui/settings/settings_main_test.js

Issue 2518233004: MD Settings: Move settings-advanced-page into settings-basic-page (Closed)
Patch Set: rebase Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/test/data/webui/settings/settings_main_test.js
diff --git a/chrome/test/data/webui/settings/settings_main_test.js b/chrome/test/data/webui/settings/settings_main_test.js
index 177581b8e7471ca1770fe7fb333e12ff0ecdcdef..dc2715111a1ee04541e1ce9ab69edf025dc16151 100644
--- a/chrome/test/data/webui/settings/settings_main_test.js
+++ b/chrome/test/data/webui/settings/settings_main_test.js
@@ -104,20 +104,40 @@ cr.define('settings_main_page', function() {
});
});
+ /** @return {!HTMLElement} */
+ function getToggleContainer() {
+ var page = settingsMain.$$('settings-basic-page');
+ assertTrue(!!page);
+ var toggleContainer = page.$$('#toggleContainer');
+ assertTrue(!!toggleContainer);
+ return toggleContainer;
+ }
+
+ /**
+ * Asserts that the Advanced toggle container exists in the combined
+ * settings page and asserts whether it should be visible.
+ * @param {boolean} expectedVisible
+ */
+ function assertToggleContainerVisible(expectedVisible) {
+ var toggleContainer = getToggleContainer();
+ if (expectedVisible)
+ assertNotEquals('none', toggleContainer.style.display);
+ else
+ assertEquals('none', toggleContainer.style.display);
+ }
+
test('no results page shows and hides', function() {
Polymer.dom.flush();
var noSearchResults = settingsMain.$.noSearchResults;
assertTrue(!!noSearchResults);
assertTrue(noSearchResults.hidden);
- var toggleContainer = settingsMain.$$('#toggleContainer');
- assertTrue(!!toggleContainer);
- assertNotEquals('none', toggleContainer.style.display);
+ assertToggleContainerVisible(true);
searchManager.setMatchesFound(false);
return settingsMain.searchContents('Query1').then(function() {
assertFalse(noSearchResults.hidden);
- assertEquals('none', toggleContainer.style.display);
+ assertToggleContainerVisible(false);
searchManager.setMatchesFound(true);
return settingsMain.searchContents('Query2');
@@ -134,20 +154,37 @@ cr.define('settings_main_page', function() {
assertTrue(!!noSearchResults);
assertTrue(noSearchResults.hidden);
- var toggleContainer = settingsMain.$$('#toggleContainer');
- assertTrue(!!toggleContainer);
- assertNotEquals('none', toggleContainer.style.display);
+ assertToggleContainerVisible(true);
searchManager.setMatchesFound(false);
// Clearing the search box is effectively a search for the empty string.
return settingsMain.searchContents('').then(function() {
Polymer.dom.flush();
assertTrue(noSearchResults.hidden);
- assertNotEquals('none', toggleContainer.style.display);
+ assertToggleContainerVisible(true);
});
});
/**
+ * Asserts the visibility of the basic and advanced pages.
+ * @param {string} Expected 'display' value for the basic page.
+ * @param {string} Expected 'display' value for the advanced page.
+ */
+ function assertPageVisibility(expectedBasic, expectedAdvanced) {
+ Polymer.dom.flush();
+ var page = settingsMain.$$('settings-basic-page');
+ assertEquals(
+ expectedBasic, page.$$('#basicPage').style.display);
+ assertEquals(
+ expectedAdvanced, page.$$('#advancedPage').style.display);
+ }
+
+ // TODO(michaelpg): It would be better not to drill into
+ // settings-basic-page. If search should indeed only work in Settings
+ // (as opposed to Advanced), perhaps some of this logic should be
+ // delegated to settings-basic-page now instead of settings-main.
+
+ /**
* Asserts the visibility of the basic and advanced pages after exiting
* search mode.
* @param {string} Expected 'display' value for the basic page.
@@ -161,13 +198,7 @@ cr.define('settings_main_page', function() {
searchManager.setMatchesFound(false);
return settingsMain.searchContents('');
}).then(function() {
- Polymer.dom.flush();
- assertEquals(
- expectedBasic,
- settingsMain.$$('settings-basic-page').style.display);
- assertEquals(
- expectedAdvanced,
- settingsMain.$$('settings-advanced-page').style.display);
+ assertPageVisibility(expectedBasic, expectedAdvanced);
});
}
@@ -202,39 +233,36 @@ cr.define('settings_main_page', function() {
Polymer.dom.flush();
// Simulate clicking the left arrow to go back to the search results.
- settingsMain.currentRouteChanged(settings.Route.BASIC);
- Polymer.dom.flush();
- assertEquals(
- '', settingsMain.$$('settings-basic-page').style.display);
- assertEquals(
- '', settingsMain.$$('settings-advanced-page').style.display);
+ settings.navigateTo(settings.Route.BASIC);
+ assertPageVisibility('', '');
});
});
+ // TODO(michaelpg): Move these to a new test for settings-basic-page.
test('can collapse advanced on advanced section route', function() {
settings.navigateTo(settings.Route.PRIVACY);
Polymer.dom.flush();
- var advancedToggle = settingsMain.$$('#advancedToggle');
+ var advancedToggle =
+ getToggleContainer().querySelector('#advancedToggle');
assertTrue(!!advancedToggle);
MockInteractions.tap(advancedToggle);
Polymer.dom.flush();
- assertFalse(settingsMain.showPages_.advanced);
+ assertPageVisibility('', 'none');
});
test('navigating to a basic page does not collapse advanced', function() {
settings.navigateTo(settings.Route.PRIVACY);
Polymer.dom.flush();
- var advancedToggle = settingsMain.$$('#advancedToggle');
- assertTrue(!!advancedToggle);
+ assertToggleContainerVisible(true);
settings.navigateTo(settings.Route.PEOPLE);
Polymer.dom.flush();
- assertTrue(settingsMain.showPages_.advanced);
+ assertPageVisibility('', '');
});
});
}

Powered by Google App Engine
This is Rietveld 408576698