Chromium Code Reviews| Index: chrome/test/data/webui/settings.js |
| diff --git a/chrome/test/data/webui/settings.js b/chrome/test/data/webui/settings.js |
| index 2e4453687a150db20d2ac88c713ef3447ce5ef73..48447e9cd0719c4a83f6948bee80aa3d8fbcd069 100644 |
| --- a/chrome/test/data/webui/settings.js |
| +++ b/chrome/test/data/webui/settings.js |
| @@ -3,16 +3,82 @@ |
| // found in the LICENSE file. |
| // Utility functions for settings WebUI page. |
| -function refreshPage() { |
| - window.location.reload(); |
| -} |
| +var util = { |
| + 'refreshPage': function() { |
| + window.location.reload(); |
| + }, |
| + 'openUnderTheHood': function() { |
| + var item = $('advancedPageNav'); |
| + assertTrue(item != null); |
| + assertTrue(item.onclick != null); |
| + item.onclick(); |
| + }, |
| +}; |
| + |
| +(function() { |
| + function MockHandler() { |
| + this.__proto__ = MockHandler.prototype; |
| + } |
| + |
| + MockHandler.prototype = { |
| + 'called': false, |
| + 'setBooleanPref': function(inlist) { |
| + var true_list_value = ['browser.show_home_button', |
| + true, |
| + 'Options_Homepage_HomeButton']; |
| + assertEqualsArray(true_list_value, inlist); |
| + }, |
| + 'coreOptionsInitialize': function() { |
| + console.log('coreOptionsInitialize'); |
| + }, |
| + 'fetchPrefs': function() { |
| + console.log('fetchPrefs'); |
| + }, |
| + 'observePrefs': function() { |
| + console.log('observePrefs'); |
| + }, |
| + 'setBooleanPref': function(inlist) { |
| + console.log('setBooleanPref'); |
| + var true_list_value = ['browser.show_home_button', |
| + true, |
| + 'Options_Homepage_HomeButton']; |
| + assertEqualsArray(true_list_value, inlist); |
| + }, |
| + 'setIntegerPref': function() { |
| + console.log('setIntegerPref'); |
| + }, |
| + 'setDoublePref': function() { |
| + console.log('setDoublePref'); |
| + }, |
| + 'setStringPref': function() { |
| + console.log('setStringPref'); |
| + }, |
| + 'setObjectPref': function() { |
| + console.log('setObjectPref'); |
| + }, |
| + 'clearPref': function() { |
| + console.log('clearPref'); |
| + }, |
| + 'coreOptionsUserMetricsAction': function() { |
| + console.log('coreOptionsUserMetricsAction'); |
| + }, |
| + }; |
| + |
| + function registerCallbacks() { |
| + console.log('registeringCallbacks'); |
| + var mock_handler = new MockHandler(); |
| + for (func in MockHandler.prototype) { |
| + if (typeof(mock_handler[func]) == 'function') |
| + registerMessageCallback(func, |
| + mock_handler, |
| + mock_handler[func]); |
| + } |
| + }; |
| + |
| + if ('window' in this && 'registerMessageCallback' in window) |
| + registerCallbacks(); |
| +})(); |
| -function openUnderTheHood() { |
| - var item = $('advancedPageNav'); |
| - assertTrue(item != null); |
| - assertTrue(item.onclick != null); |
| - item.onclick(); |
| -} |
| // Tests. |
| function testSetBooleanPrefTriggers() { |
|
David Tseng
2011/07/07 19:26:28
When do you assert that the proper handler gets ca
Sheridan Rawlins
2011/07/07 23:39:23
Good point. As we discussed, I'll try to pull in
|
| @@ -23,7 +89,15 @@ function testSetBooleanPrefTriggers() { |
| showHomeButton.blur(); |
| } |
| +// Crashes on Mac only. See http://crbug.com/79181 |
| +if (this['OS_MACOSX'] !== undefined) { |
| + this['DISABLED_testSetBooleanPrefTriggers'] = testSetBooleanPrefTriggers; |
| + delete testSetBooleanPrefTriggers; |
| +} |
| + |
| function testPageIsUnderTheHood() { |
| + util.openUnderTheHood(); |
| + util.refreshPage(); |
| var pageInstance = AdvancedOptions.getInstance(); |
| var topPage = OptionsPage.getTopmostVisiblePage(); |
| var expectedTitle = pageInstance.title; |
| @@ -32,3 +106,16 @@ function testPageIsUnderTheHood() { |
| assertEquals(expectedTitle, actualTitle); |
| assertEquals(pageInstance, topPage); |
| } |
| + |
| +// Not meant to run on ChromeOS at this time. |
| +// Not finishing in windows. http://crbug.com/81723 |
| +if (this['OS_CHROMEOS'] !== undefined || |
| + this['OS_MACOSX'] !== undefined || |
| + this['OS_WIN'] !== undefined || |
| + this['TOUCH_UI'] !== undefined) { |
| + this['DISABLED_testPageIsUnderTheHood'] = testPageIsUnderTheHood; |
| + delete testPageIsUnderTheHood; |
| +} |
| + |
| +var test_fixture = 'SettingsWebUITest'; |
| +var test_browse_preload = 'chrome://settings'; |