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

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

Issue 2766093002: MD Settings: validate home button url input (Closed)
Patch Set: add tests for home button urls Created 3 years, 9 months 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/appearance_page_test.js
diff --git a/chrome/test/data/webui/settings/appearance_page_test.js b/chrome/test/data/webui/settings/appearance_page_test.js
index 92c08a5dfc3acaa866e6c62289a422feab8a70f4..1fb348f94c248d2b104315a030eeafd77de6681a 100644
--- a/chrome/test/data/webui/settings/appearance_page_test.js
+++ b/chrome/test/data/webui/settings/appearance_page_test.js
@@ -15,6 +15,7 @@ var TestAppearanceBrowserProxy = function() {
'openWallpaperManager',
'useDefaultTheme',
'useSystemTheme',
+ 'validateStartupPage',
]);
/** @private */
@@ -60,6 +61,11 @@ TestAppearanceBrowserProxy.prototype = {
this.methodCalled('useSystemTheme');
},
+ /** @override */
+ useSystemTheme: function() {
+ this.methodCalled('useSystemTheme');
+ },
+
/** @param {number} defaultZoom */
setDefaultZoom: function(defaultZoom) {
this.defaultZoom_ = defaultZoom;
@@ -69,6 +75,17 @@ TestAppearanceBrowserProxy.prototype = {
setIsSupervised: function(isSupervised) {
this.isSupervised_ = isSupervised;
},
+
+ /**
+ * @param {string} value The string represnatation of boolean to return.
dpapad 2017/03/24 01:39:32 No need for @param when you are using @override.
scottchen 2017/03/24 20:48:54 Done.
+ * @override
+ */
+ validateStartupPage: function(value) {
+ this.methodCalled('validateStartupPage');
+ // 'false' is an invalid value for testing purposes.
+ var returnValue = 'false' ? false : true; // 'false'
+ return Promise.resolve(returnValue);
+ },
};
var appearancePage = null;
@@ -224,4 +241,42 @@ suite('AppearanceHandler', function() {
assertEquals('175%', getDefaultZoomText());
});
});
+
+ test('show home button toggling', function() {
+ assertFalse(!!appearancePage.$$('.list-frame'));
+ appearancePage.set('prefs', {browser: {show_home_button: {value: true}}});
+
+ Polymer.dom.flush();
+
+ assertTrue(!!appearancePage.$$('.list-frame'));
+ });
+
+ test('home button urls', function() {
+ appearancePage.set('prefs', {
+ browser: {show_home_button: {value: true}},
+ homepage: {type: chrome.settingsPrivate.PrefType.URL, value: 'test'}
+ });
+
+ Polymer.dom.flush();
+
+ var input = appearancePage.$$('#customHomePage');
+ assertTrue(!!input);
+ assertFalse(input.invalid);
+ assertEquals(input.value, 'test');
+
+ input.value = 'false'; // 'false' is an invalid value for testing purposes.
+ input.fire('input');
+
+ return appearanceBrowserProxy.whenCalled('validateStartupPage')
+ .then(function() {
+ Polymer.dom.flush();
+ assertEquals(input.value, 'false');
+ assertTrue(input.invalid);
+
+ // Should reset to default value on change event.
+ input.$$('paper-input').fire('change');
+ Polymer.dom.flush();
+ assertEquals(input.value, 'test');
+ });
+ });
});

Powered by Google App Engine
This is Rietveld 408576698