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

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

Issue 2280233002: [HBD] Update MD Site Settings Plugins section to show 3rd mode checkbox. (Closed)
Patch Set: Created 4 years, 4 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/site_settings_category_tests.js
diff --git a/chrome/test/data/webui/settings/site_settings_category_tests.js b/chrome/test/data/webui/settings/site_settings_category_tests.js
index 8f68198dab0f84f77cccac440c596595c0ab81e8..ec7b12d1f1ad603f4e52fff6ad5f28b8cd5b2dd5 100644
--- a/chrome/test/data/webui/settings/site_settings_category_tests.js
+++ b/chrome/test/data/webui/settings/site_settings_category_tests.js
@@ -121,15 +121,6 @@ cr.define('site_settings_category', function() {
if (category != settings.ContentSettingsTypes.FULLSCREEN &&
category != settings.ContentSettingsTypes.USB_DEVICES) {
assertNotEquals('', testElement.computeCategoryTextId(category));
-
- assertNotEquals(
- '', testElement.computeCategoryDesc(category, true, true));
- assertNotEquals(
- '', testElement.computeCategoryDesc(category, true, false));
- assertNotEquals(
- '', testElement.computeCategoryDesc(category, false, true));
- assertNotEquals(
- '', testElement.computeCategoryDesc(category, false, false));
Finnur 2016/08/29 11:26:27 I don't think we need to remove these... They catc
tommycli 2016/08/29 18:31:47 Done.
}
// All categories have an icon and a title.
@@ -139,6 +130,120 @@ cr.define('site_settings_category', function() {
'', testElement.computeTitleForContentCategory(category));
}
});
+
+ test('test special tri-state Flash category', function() {
+ browserProxy.setPrefs({
+ defaults: {
+ plugins: 'detect',
Finnur 2016/08/29 11:26:27 Wait, should this string not match this one? http
tommycli 2016/08/29 18:31:47 Done. Oops.
+ },
+ exceptions: {
+ plugins: [],
+ },
+ });
Finnur 2016/08/29 11:26:27 nit: I've made it a habit to group these at the to
tommycli 2016/08/29 18:31:47 Done.
+
+ testElement.category = settings.ContentSettingsTypes.PLUGINS;
+ var askCheckbox = null;
+
+ return browserProxy.whenCalled('getDefaultValueForContentType').then(
+ function(contentType) {
+ Polymer.dom.flush();
+
+ askCheckbox = testElement.$$('#flashAskCheckbox');
+ assertTrue(!!askCheckbox);
+
+ assertEquals(
+ settings.ContentSettingsTypes.PLUGINS, contentType);
+ assertTrue(testElement.categoryEnabled);
+ assertFalse(askCheckbox.disabled);
+ assertTrue(askCheckbox.checked);
+
+ MockInteractions.tap(testElement.$.toggle);
+ return browserProxy.whenCalled('setDefaultValueForContentType');
+ }).then(function(arguments) {
+ // Check DETECT => BLOCK transition succeeded.
+ Polymer.dom.flush();
+
+ assertEquals(
+ settings.ContentSettingsTypes.PLUGINS, arguments[0]);
+ assertEquals(settings.PermissionValues.BLOCK, arguments[1]);
+ assertFalse(testElement.categoryEnabled);
+ assertTrue(askCheckbox.disabled);
+ assertTrue(askCheckbox.checked);
Finnur 2016/08/29 11:26:27 This is a bit non-intuitive (to me, at least). If
tommycli 2016/08/29 18:31:47 Basically - we don't want the checkbox unchecked u
+
+ browserProxy.resetResolver('setDefaultValueForContentType');
+ MockInteractions.tap(testElement.$.toggle);
+ return browserProxy.whenCalled('setDefaultValueForContentType');
+ }).then(function(arguments) {
+ // Check BLOCK => DETECT transition succeeded.
+ Polymer.dom.flush();
+
+ assertEquals(
+ settings.ContentSettingsTypes.PLUGINS, arguments[0]);
+ assertEquals(
+ settings.PermissionValues.IMPORTANT_CONTENT, arguments[1]);
+ assertTrue(testElement.categoryEnabled);
+ assertFalse(askCheckbox.disabled);
+ assertTrue(askCheckbox.checked);
+
+ browserProxy.resetResolver('setDefaultValueForContentType');
+ MockInteractions.tap(askCheckbox);
+ return browserProxy.whenCalled('setDefaultValueForContentType');
+ }).then(function(arguments) {
+ // Check DETECT => ALLOW transition succeeded.
+ Polymer.dom.flush();
+
+ assertEquals(
+ settings.ContentSettingsTypes.PLUGINS, arguments[0]);
+ assertEquals(
+ settings.PermissionValues.ALLOW, arguments[1]);
+ assertTrue(testElement.categoryEnabled);
+ assertFalse(askCheckbox.disabled);
+ assertFalse(askCheckbox.checked);
+
+ browserProxy.resetResolver('setDefaultValueForContentType');
+ MockInteractions.tap(testElement.$.toggle);
+ return browserProxy.whenCalled('setDefaultValueForContentType');
+ }).then(function(arguments) {
+ // Check ALLOW => BLOCK transition succeeded.
+ Polymer.dom.flush();
+
+ assertEquals(
+ settings.ContentSettingsTypes.PLUGINS, arguments[0]);
+ assertEquals(settings.PermissionValues.BLOCK, arguments[1]);
+ assertFalse(testElement.categoryEnabled);
+ assertTrue(askCheckbox.disabled);
+ assertFalse(askCheckbox.checked);
+
+ browserProxy.resetResolver('setDefaultValueForContentType');
+ MockInteractions.tap(testElement.$.toggle);
+ return browserProxy.whenCalled('setDefaultValueForContentType');
+ }).then(function(arguments) {
+ // Check BLOCK => ALLOW transition succeeded.
+ Polymer.dom.flush();
+
+ assertEquals(
+ settings.ContentSettingsTypes.PLUGINS, arguments[0]);
+ assertEquals(settings.PermissionValues.ALLOW, arguments[1]);
+ assertTrue(testElement.categoryEnabled);
+ assertFalse(askCheckbox.disabled);
+ assertFalse(askCheckbox.checked);
+
+ browserProxy.resetResolver('setDefaultValueForContentType');
+ MockInteractions.tap(askCheckbox);
+ return browserProxy.whenCalled('setDefaultValueForContentType');
+ }).then(function(arguments) {
+ // Check ALLOW => DETECT transition succeeded.
+ Polymer.dom.flush();
+
+ assertEquals(
+ settings.ContentSettingsTypes.PLUGINS, arguments[0]);
+ assertEquals(
+ settings.PermissionValues.IMPORTANT_CONTENT, arguments[1]);
+ assertTrue(testElement.categoryEnabled);
+ assertFalse(askCheckbox.disabled);
+ assertTrue(askCheckbox.checked);
+ });;
+ });
});
}

Powered by Google App Engine
This is Rietveld 408576698