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

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

Issue 2766093002: MD Settings: validate home button url input (Closed)
Patch Set: fix formatting 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..3beb0a747e40463d643ec7c1e70a7cb71d577c97 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 */
@@ -22,6 +23,9 @@ var TestAppearanceBrowserProxy = function() {
/** @private */
this.isSupervised_ = false;
+
+ /** @private */
+ this.isHomeUrlValid_ = true;
};
TestAppearanceBrowserProxy.prototype = {
@@ -69,6 +73,19 @@ TestAppearanceBrowserProxy.prototype = {
setIsSupervised: function(isSupervised) {
this.isSupervised_ = isSupervised;
},
+
+ /** @override */
+ validateStartupPage: function(value) {
+ this.methodCalled('validateStartupPage');
+ return Promise.resolve(this.isHomeUrlValid_);
+ },
+
+ /**
+ * @param {boolean} isValid
+ */
+ setValidStartupPageResponse: function(isValid) {
+ this.isHomeUrlValid_ = isValid;
+ }
};
var appearancePage = null;
@@ -224,4 +241,43 @@ 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 = '@@@';
+ appearanceBrowserProxy.setValidStartupPageResponse(false);
+ input.fire('input');
+
+ return appearanceBrowserProxy.whenCalled('validateStartupPage')
+ .then(function() {
+ Polymer.dom.flush();
+ assertEquals(input.value, '@@@');
+ 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