GEN('#include "chrome/browser/ui/webui/options/options_browsertest.h"');
-/** @const */ var MANAGED_USERS_PREF = 'profile.managed_users';
+/** @const */ var SUPERVISED_USERS_PREF = 'profile.managed_users';
/**
* Wait for the method specified by |methodName|, on the |object| object, to be
var buttonToClick = confirmInterstitial ? $('do-not-track-confirm-ok') :
$('do-not-track-confirm-cancel');
var dntCheckbox = $('do-not-track-enabled');
- var dntOverlay = OptionsPage.registeredOverlayPages['donottrackconfirm'];
+ var dntOverlay = PageManager.registeredOverlayPages['donottrackconfirm'];
assertFalse(dntCheckbox.checked);
var visibleChangeCounter = 0;
TEST_F('OptionsWebUITest', 'EnableAndDisableDoNotTrack', function() {
Preferences.prefsFetchedCallback({'enable_do_not_track': {'value': false}});
var dntCheckbox = $('do-not-track-enabled');
- var dntOverlay = OptionsPage.registeredOverlayPages.donottrackconfirm;
+ var dntOverlay = PageManager.registeredOverlayPages.donottrackconfirm;
assertFalse(dntCheckbox.checked);
var visibleChangeCounter = 0;
default:
assertNotReached();
}
- }
+ };
dntOverlay.addEventListener('visibleChange', visibleChangeHandler);
this.mockHandler.expects(once()).setBooleanPref(
assertFalse(dntCheckbox.checked);
testDone();
}, 0);
- }
+ };
this.mockHandler.expects(once()).setBooleanPref(
eq(['enable_do_not_track', false, 'Options_DoNotTrackCheckbox'])).will(
callFunction(verifyCorrectEndState));
// default button. See crbug.com/268336.
TEST_F('OptionsWebUITest', 'EnterPreventsDefault', function() {
var page = HomePageOverlay.getInstance();
- OptionsPage.showPageByName(page.name);
+ PageManager.showPageByName(page.name);
var event = new KeyboardEvent('keydown', {
'bubbles': true,
'cancelable': true,
testDone();
});
- OptionsPage.navigateToPage(overlayName);
+ PageManager.showPageByName(overlayName);
var numFrozenPages = frozenPages.length;
expectGT(numFrozenPages, 0);
});
+GEN('#if defined(OS_CHROMEOS)');
+// Verify that range inputs respond to touch events. Currently only Chrome OS
+// uses slider options.
+TEST_F('OptionsWebUITest', 'RangeInputHandlesTouchEvents', function() {
+ this.mockHandler.expects(once()).setIntegerPref([
+ 'settings.touchpad.sensitivity2', 1]);
+
+ var touchpadRange = $('touchpad-sensitivity-range');
+ var event = document.createEvent('UIEvent');
+ event.initUIEvent('touchstart', true, true, window);
+ touchpadRange.dispatchEvent(event);
+
+ event = document.createEvent('UIEvent');
+ event.initUIEvent('touchmove', true, true, window);
+ touchpadRange.dispatchEvent(event);
+
+ touchpadRange.value = 1;
+
+ event = document.createEvent('UIEvent');
+ event.initUIEvent('touchend', true, true, window);
+ touchpadRange.dispatchEvent(event);
+
+ // touchcancel should also trigger the handler, since it
+ // changes the slider position.
+ this.mockHandler.expects(once()).setIntegerPref([
+ 'settings.touchpad.sensitivity2', 2]);
+
+ event = document.createEvent('UIEvent');
+ event.initUIEvent('touchstart', true, true, window);
+ touchpadRange.dispatchEvent(event);
+
+ touchpadRange.value = 2;
+
+ event = document.createEvent('UIEvent');
+ event.initUIEvent('touchcancel', true, true, window);
+ touchpadRange.dispatchEvent(event);
+
+ testDone();
+});
+GEN('#endif'); // defined(OS_CHROMEOS)
+
/**
* TestFixture for OptionsPage WebUI testing including tab history and support
* for preference manipulation. If you don't need the features in the C++
testGenPreamble: function() {
// Start with no supervised users managed by this profile.
- GEN(' ClearPref("' + MANAGED_USERS_PREF + '");');
+ GEN(' ClearPref("' + SUPERVISED_USERS_PREF + '");');
},
/** @override */
*/
verifyOpenPages_: function(expectedPages, opt_expectedUrl) {
// Check the topmost page.
- expectEquals(null, OptionsPage.getVisibleBubble());
- var currentPage = OptionsPage.getTopmostVisiblePage();
+ expectEquals(null, PageManager.getVisibleBubble());
+ var currentPage = PageManager.getTopmostVisiblePage();
var lastExpected = expectedPages[expectedPages.length - 1];
expectEquals(lastExpected, currentPage.name);
expectEquals(fullExpectedUrl, window.location.href);
// Collect open pages.
- var allPageNames = Object.keys(OptionsPage.registeredPages).concat(
- Object.keys(OptionsPage.registeredOverlayPages));
+ var allPageNames = Object.keys(PageManager.registeredPages).concat(
+ Object.keys(PageManager.registeredOverlayPages));
var openPages = [];
for (var i = 0; i < allPageNames.length; ++i) {
var name = allPageNames[i];
- var page = OptionsPage.registeredPages[name] ||
- OptionsPage.registeredOverlayPages[name];
+ var page = PageManager.registeredPages[name] ||
+ PageManager.registeredOverlayPages[name];
if (page.visible)
openPages.push(page.name);
}
},
/**
- * Overrides the page callbacks for the given OptionsPage overlay to verify
+ * Overrides the page callbacks for the given PageManager overlay to verify
* that they are not called.
* @param {Object} overlay The singleton instance of the overlay.
* @private
// Test disabled because it's flaky. crbug.com/303841
TEST_F('OptionsWebUIExtendedTest', 'DISABLED_ShowSearchPageNoQuery',
function() {
- OptionsPage.showPageByName('search');
+ PageManager.showPageByName('search');
this.verifyOpenPages_(['settings']);
this.verifyHistory_(['settings'], testDone);
});
TEST_F('OptionsWebUIExtendedTest', 'ShowPageNoHistory', function() {
this.verifyOpenPages_(['settings'], '');
// There are only two main pages, 'settings' and 'search'. It's not possible
- // to show the search page using OptionsPage.showPageByName, because it
+ // to show the search page using PageManager.showPageByName, because it
// reverts to the settings page if it has no search text set. So we show the
// search page by performing a search, then test showPageByName.
$('search-field').onsearch({currentTarget: {value: 'query'}});
this.verifyOpenPages_(['settings', 'search'], 'search#query');
var self = this;
this.verifyHistory_(['', 'search#query'], function() {
- OptionsPage.showPageByName('settings', false);
+ PageManager.showPageByName('settings', false);
self.verifyOpenPages_(['settings'], 'search#query');
self.verifyHistory_(['', 'search#query'], testDone);
});
$('search-field').onsearch({currentTarget: {value: 'query'}});
var self = this;
this.verifyHistory_(['', 'search#query'], function() {
- OptionsPage.showPageByName('settings', true);
+ PageManager.showPageByName('settings', true);
self.verifyOpenPages_(['settings'], '#query');
self.verifyHistory_(['', 'search#query', '#query'],
testDone);
$('search-field').onsearch({currentTarget: {value: 'query'}});
var self = this;
this.verifyHistory_(['', 'search#query'], function() {
- OptionsPage.showPageByName('settings', true, {'replaceState': true});
+ PageManager.showPageByName('settings', true, {'replaceState': true});
self.verifyOpenPages_(['settings'], '#query');
self.verifyHistory_(['', '#query'], testDone);
});
$('search-field').onsearch({currentTarget: {value: 'query'}});
var self = this;
this.verifyHistory_(['', 'search#query'], function() {
- OptionsPage.navigateToPage('settings');
+ PageManager.showPageByName('settings');
self.verifyOpenPages_(['settings'], '#query');
self.verifyHistory_(['', 'search#query', '#query'],
testDone);
// normally with none of the latter's quirks in the expected history or URL.
TEST_F('OptionsWebUIExtendedTest', 'ShowOverlayNoHistory', function() {
// Open a layer-1 overlay, not updating history.
- OptionsPage.showPageByName('languages', false);
+ PageManager.showPageByName('languages', false);
this.verifyOpenPages_(['settings', 'languages'], '');
var self = this;
this.verifyHistory_([''], function() {
// Open a layer-2 overlay for which the layer-1 is a parent, not updating
// history.
- OptionsPage.showPageByName('addLanguage', false);
+ PageManager.showPageByName('addLanguage', false);
self.verifyOpenPages_(['settings', 'languages', 'addLanguage'],
'');
self.verifyHistory_([''], testDone);
TEST_F('OptionsWebUIExtendedTest', 'ShowOverlayWithHistory', function() {
// Open a layer-1 overlay, updating history.
- OptionsPage.showPageByName('languages', true);
+ PageManager.showPageByName('languages', true);
this.verifyOpenPages_(['settings', 'languages']);
var self = this;
this.verifyHistory_(['', 'languages'], function() {
// Open a layer-2 overlay, updating history.
- OptionsPage.showPageByName('addLanguage', true);
+ PageManager.showPageByName('addLanguage', true);
self.verifyOpenPages_(['settings', 'languages', 'addLanguage']);
self.verifyHistory_(['', 'languages', 'addLanguage'], testDone);
});
TEST_F('OptionsWebUIExtendedTest', 'ShowOverlayReplaceHistory', function() {
// Open a layer-1 overlay, updating history.
- OptionsPage.showPageByName('languages', true);
+ PageManager.showPageByName('languages', true);
var self = this;
this.verifyHistory_(['', 'languages'], function() {
// Open a layer-2 overlay, replacing history.
- OptionsPage.showPageByName('addLanguage', true, {'replaceState': true});
+ PageManager.showPageByName('addLanguage', true, {'replaceState': true});
self.verifyOpenPages_(['settings', 'languages', 'addLanguage']);
self.verifyHistory_(['', 'addLanguage'], testDone);
});
// current page is an ancestor but not a parent.
TEST_F('OptionsWebUIExtendedTest', 'ShowOverlayFurtherAbove', function() {
// Open a layer-2 overlay directly.
- OptionsPage.showPageByName('addLanguage', true);
+ PageManager.showPageByName('addLanguage', true);
this.verifyOpenPages_(['settings', 'languages', 'addLanguage']);
var self = this;
this.verifyHistory_(['', 'addLanguage'], testDone);
// parent.
TEST_F('OptionsWebUIExtendedTest', 'ShowUnrelatedOverlay', function() {
// Open a layer-1 overlay.
- OptionsPage.showPageByName('languages', true);
+ PageManager.showPageByName('languages', true);
this.verifyOpenPages_(['settings', 'languages']);
var self = this;
this.verifyHistory_(['', 'languages'], function() {
// Open an unrelated layer-2 overlay.
- OptionsPage.showPageByName('cookies', true);
+ PageManager.showPageByName('cookies', true);
self.verifyOpenPages_(['settings', 'content', 'cookies']);
self.verifyHistory_(['', 'languages', 'cookies'], testDone);
});
// Close an overlay.
TEST_F('OptionsWebUIExtendedTest', 'CloseOverlay', function() {
// Open a layer-1 overlay, then a layer-2 overlay on top of it.
- OptionsPage.showPageByName('languages', true);
+ PageManager.showPageByName('languages', true);
this.verifyOpenPages_(['settings', 'languages']);
- OptionsPage.showPageByName('addLanguage', true);
+ PageManager.showPageByName('addLanguage', true);
this.verifyOpenPages_(['settings', 'languages', 'addLanguage']);
var self = this;
this.verifyHistory_(['', 'languages', 'addLanguage'], function() {
// Close the layer-2 overlay.
- OptionsPage.closeOverlay();
+ PageManager.closeOverlay();
self.verifyOpenPages_(['settings', 'languages']);
self.verifyHistory_(
['', 'languages', 'addLanguage', 'languages'],
function() {
// Close the layer-1 overlay.
- OptionsPage.closeOverlay();
+ PageManager.closeOverlay();
self.verifyOpenPages_(['settings'], '');
self.verifyHistory_(
['', 'languages', 'addLanguage', 'languages', ''],
// again push history.
TEST_F('OptionsWebUIExtendedTest', 'CloseOverlayNoHistory', function() {
// Open the do not track confirmation prompt.
- OptionsPage.showPageByName('doNotTrackConfirm', false);
+ PageManager.showPageByName('doNotTrackConfirm', false);
// Opening the prompt does not add to the history.
this.verifyHistory_([''], function() {
// Close the overlay.
- OptionsPage.closeOverlay();
+ PageManager.closeOverlay();
// Still no history changes.
this.verifyHistory_([''], testDone);
}.bind(this));
// opened on top.
TEST_F('OptionsWebUIExtendedTest', 'OverlayAboveNoReset', function() {
// Open a layer-1 overlay.
- OptionsPage.showPageByName('languages', true);
+ PageManager.showPageByName('languages', true);
this.verifyOpenPages_(['settings', 'languages']);
// Open a layer-2 overlay on top. This should not close 'languages'.
this.prohibitChangesToOverlay_(options.LanguageOptions.getInstance());
- OptionsPage.showPageByName('addLanguage', true);
+ PageManager.showPageByName('addLanguage', true);
this.verifyOpenPages_(['settings', 'languages', 'addLanguage']);
testDone();
});
TEST_F('OptionsWebUIExtendedTest', 'OverlayTabNavigation', function() {
// Open a layer-1 overlay, then a layer-2 overlay on top of it.
- OptionsPage.showPageByName('languages', true);
- OptionsPage.showPageByName('addLanguage', true);
+ PageManager.showPageByName('languages', true);
+ PageManager.showPageByName('addLanguage', true);
var self = this;
// Go back twice, then forward twice.
// close the current one.
TEST_F('OptionsWebUIExtendedTest', 'OverlayBackToChild', function() {
// Open a layer-1 overlay, then a layer-2 overlay on top of it.
- OptionsPage.showPageByName('languages', true);
- OptionsPage.showPageByName('addLanguage', true);
+ PageManager.showPageByName('languages', true);
+ PageManager.showPageByName('addLanguage', true);
var self = this;
self.verifyOpenPages_(['settings', 'languages', 'addLanguage']);
self.verifyHistory_(['', 'languages', 'addLanguage'], function() {
// Close the top overlay, then go back to it.
- OptionsPage.closeOverlay();
+ PageManager.closeOverlay();
self.verifyOpenPages_(['settings', 'languages']);
self.verifyHistory_(
['', 'languages', 'addLanguage', 'languages'],
// Going back to an unrelated overlay should close the overlay and its parent.
TEST_F('OptionsWebUIExtendedTest', 'OverlayBackToUnrelated', function() {
// Open a layer-1 overlay, then an unrelated layer-2 overlay.
- OptionsPage.showPageByName('languages', true);
- OptionsPage.showPageByName('cookies', true);
+ PageManager.showPageByName('languages', true);
+ PageManager.showPageByName('cookies', true);
var self = this;
self.verifyOpenPages_(['settings', 'content', 'cookies']);
self.verifyHistory_(['', 'languages', 'cookies'], function() {
var loc = location.href;
document.documentElement.classList.add('loading');
- assertTrue(OptionsPage.isLoading());
- OptionsPage.navigateToPage('searchEngines');
+ assertTrue(PageManager.isLoading());
+ PageManager.showPageByName('searchEngines');
expectNotEquals(loc, location.href);
document.documentElement.classList.remove('loading');
- assertFalse(OptionsPage.isLoading());
- OptionsPage.showDefaultPage();
+ assertFalse(PageManager.isLoading());
+ PageManager.showDefaultPage();
expectEquals(loc, location.href);
testDone();
// Remove all supervised users, then add some, watching for the pref change
// notifications and UI updates in each case. Any non-empty pref dictionary
// is interpreted as having supervised users.
- chrome.send('optionsTestSetPref', [MANAGED_USERS_PREF, {key: 'value'}]);
+ chrome.send('optionsTestSetPref', [SUPERVISED_USERS_PREF, {key: 'value'}]);
waitForResponse(BrowserOptions, 'updateManagesSupervisedUsers', function() {
assertFalse($('profiles-supervised-dashboard-tip').hidden);
- chrome.send('optionsTestSetPref', [MANAGED_USERS_PREF, {}]);
+ chrome.send('optionsTestSetPref', [SUPERVISED_USERS_PREF, {}]);
waitForResponse(BrowserOptions, 'updateManagesSupervisedUsers', function() {
assertTrue($('profiles-supervised-dashboard-tip').hidden);
testDone();