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

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

Issue 2681373002: MD Settings: Fix the Network Prediction toggle box. (Closed)
Patch Set: fix comment Created 3 years, 10 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/settings_toggle_button_tests.js
diff --git a/chrome/test/data/webui/settings/settings_toggle_button_tests.js b/chrome/test/data/webui/settings/settings_toggle_button_tests.js
index 212cf2d8b652ce82a8a278e59b26dfa5de485ffb..4206bbdd397e27ae977822d5036031e6a23e5cdc 100644
--- a/chrome/test/data/webui/settings/settings_toggle_button_tests.js
+++ b/chrome/test/data/webui/settings/settings_toggle_button_tests.js
@@ -94,6 +94,57 @@ cr.define('settings_toggle_button', function() {
assertTrue(testElement.checked);
assertEquals(1, prefNum.value);
});
+
+ test('numerical pref with custom values', function() {
+ var prefNum = {
+ key: 'test',
+ type: chrome.settingsPrivate.PrefType.NUMBER,
+ value: 1
+ };
+
+ testElement.numericUncheckedValue = 1;
+ testElement.numericCheckedValue = 4;
+
+ testElement.set('pref', prefNum);
+ assertFalse(testElement.checked);
+
+ testElement.setAttribute('checked', '');
+ assertTrue(testElement.checked);
+ assertEquals(4, prefNum.value);
+
+ testElement.removeAttribute('checked');
+ assertFalse(testElement.checked);
+ assertEquals(1, prefNum.value);
+ });
+
+ test('numerical pref with unknown inital value', function() {
+ prefNum = {
+ key: 'test',
+ type: chrome.settingsPrivate.PrefType.NUMBER,
+ value: 2
+ };
+
+ testElement.numericUncheckedValue = 1;
+ testElement.numericCheckedValue = 4;
+
+ testElement.set('pref', prefNum);
+
+ // Unknown value should still count as checked.
+ assertTrue(testElement.checked);
+
+ // The control should not clobber an existing unknown value.
+ assertEquals(2, prefNum.value);
+
+ // Unchecking should still send the unchecked value to prefs.
+ testElement.removeAttribute('checked');
+ assertFalse(testElement.checked);
+ assertEquals(1, prefNum.value);
+
+ // Checking should still send the checked value to prefs.
+ testElement.setAttribute('checked', '');
+ assertTrue(testElement.checked);
+ assertEquals(4, prefNum.value);
+ });
});
}

Powered by Google App Engine
This is Rietveld 408576698