Commit dfb07d54 authored by rbpotter's avatar rbpotter Committed by Commit Bot

WebUI: Port cr_elements/policy/cr_policy_pref_* to Polymer3

- Add rules to autogenerate Polymer3 versions of
  cr_policy_pref_behavior and cr_policy_pref_indicator at build time
- Autogenerate tests for the Polymer 3 version of
  cr_policy_pref_indicator.

This will be used to migrate the chrome://settings page in future.

Bug: 1042558
Change-Id: I4721c7c4ae9d898135fea09111dcc6c79b529888
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2021335Reviewed-by: default avatarDemetrios Papadopoulos <dpapad@chromium.org>
Commit-Queue: Rebekah Potter <rbpotter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#735694}
parent 758a02d9
...@@ -190,6 +190,7 @@ js2gtest("browser_tests_js_webui") { ...@@ -190,6 +190,7 @@ js2gtest("browser_tests_js_webui") {
"$root_gen_dir/chrome/test/data/webui/cr_elements/cr_link_row_tests.m.js", "$root_gen_dir/chrome/test/data/webui/cr_elements/cr_link_row_tests.m.js",
"$root_gen_dir/chrome/test/data/webui/cr_elements/cr_policy_indicator_behavior_tests.m.js", "$root_gen_dir/chrome/test/data/webui/cr_elements/cr_policy_indicator_behavior_tests.m.js",
"$root_gen_dir/chrome/test/data/webui/cr_elements/cr_policy_indicator_tests.m.js", "$root_gen_dir/chrome/test/data/webui/cr_elements/cr_policy_indicator_tests.m.js",
"$root_gen_dir/chrome/test/data/webui/cr_elements/cr_policy_pref_indicator_tests.m.js",
"$root_gen_dir/chrome/test/data/webui/cr_elements/cr_radio_button_test.m.js", "$root_gen_dir/chrome/test/data/webui/cr_elements/cr_radio_button_test.m.js",
"$root_gen_dir/chrome/test/data/webui/cr_elements/cr_radio_group_test.m.js", "$root_gen_dir/chrome/test/data/webui/cr_elements/cr_radio_group_test.m.js",
"$root_gen_dir/chrome/test/data/webui/cr_elements/cr_search_field_tests.m.js", "$root_gen_dir/chrome/test/data/webui/cr_elements/cr_search_field_tests.m.js",
......
...@@ -22,6 +22,7 @@ js_modulizer("modulize") { ...@@ -22,6 +22,7 @@ js_modulizer("modulize") {
"cr_link_row_tests.js", "cr_link_row_tests.js",
"cr_policy_indicator_tests.js", "cr_policy_indicator_tests.js",
"cr_policy_indicator_behavior_tests.js", "cr_policy_indicator_behavior_tests.js",
"cr_policy_pref_indicator_tests.js",
"cr_profile_avatar_selector_tests.js", "cr_profile_avatar_selector_tests.js",
"cr_radio_button_test.js", "cr_radio_button_test.js",
"cr_radio_group_test.js", "cr_radio_group_test.js",
......
...@@ -306,6 +306,20 @@ TEST_F('CrElementsPolicyIndicatorV3Test', 'All', function() { ...@@ -306,6 +306,20 @@ TEST_F('CrElementsPolicyIndicatorV3Test', 'All', function() {
mocha.run(); mocha.run();
}); });
// eslint-disable-next-line no-var
var CrElementsPolicyPrefIndicatorV3Test =
class extends CrElementsV3BrowserTest {
/** @override */
get browsePreload() {
// Preload a settings URL, so that the test can access settingsPrivate.
return 'chrome://settings/test_loader.html?module=cr_elements/cr_policy_pref_indicator_tests.m.js';
}
};
TEST_F('CrElementsPolicyPrefIndicatorV3Test', 'All', function() {
mocha.run();
});
// eslint-disable-next-line no-var // eslint-disable-next-line no-var
var CrElementsPolicyIndicatorBehaviorV3Test = var CrElementsPolicyIndicatorBehaviorV3Test =
class extends CrElementsV3BrowserTest { class extends CrElementsV3BrowserTest {
......
...@@ -2,6 +2,12 @@ ...@@ -2,6 +2,12 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
// clang-format off
// #import 'chrome://resources/cr_elements/policy/cr_policy_pref_indicator.m.js';
// #import 'chrome://test/cr_elements/cr_policy_strings.js';
// #import {flush} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js';
// clang-format on
/** @fileoverview Suite of tests for cr_policy-pref-indicator. */ /** @fileoverview Suite of tests for cr_policy-pref-indicator. */
suite('CrPolicyPrefIndicator', function() { suite('CrPolicyPrefIndicator', function() {
/** @type {!CrPolicyPrefIndicatorElement|undefined} */ /** @type {!CrPolicyPrefIndicatorElement|undefined} */
......
...@@ -34,7 +34,6 @@ js_library("cr_policy_indicator_behavior") { ...@@ -34,7 +34,6 @@ js_library("cr_policy_indicator_behavior") {
} }
js_library("cr_policy_pref_behavior") { js_library("cr_policy_pref_behavior") {
deps = [ ":cr_policy_indicator_behavior" ]
externs_list = [ "$externs_path/settings_private.js" ] externs_list = [ "$externs_path/settings_private.js" ]
} }
...@@ -73,6 +72,8 @@ js_type_check("closure_compile_module") { ...@@ -73,6 +72,8 @@ js_type_check("closure_compile_module") {
deps = [ deps = [
":cr_policy_indicator.m", ":cr_policy_indicator.m",
":cr_policy_indicator_behavior.m", ":cr_policy_indicator_behavior.m",
":cr_policy_pref_behavior.m",
":cr_policy_pref_indicator.m",
":cr_tooltip_icon.m", ":cr_tooltip_icon.m",
] ]
} }
...@@ -92,6 +93,22 @@ js_library("cr_policy_indicator_behavior.m") { ...@@ -92,6 +93,22 @@ js_library("cr_policy_indicator_behavior.m") {
extra_deps = [ ":modulize" ] extra_deps = [ ":modulize" ]
} }
js_library("cr_policy_pref_behavior.m") {
sources = [ "$root_gen_dir/ui/webui/resources/cr_elements/policy/cr_policy_pref_behavior.m.js" ]
externs_list = [ "$externs_path/settings_private.js" ]
extra_deps = [ ":modulize" ]
}
js_library("cr_policy_pref_indicator.m") {
sources = [ "$root_gen_dir/ui/webui/resources/cr_elements/policy/cr_policy_pref_indicator.m.js" ]
deps = [
":cr_policy_indicator_behavior.m",
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
]
externs_list = [ "$externs_path/settings_private.js" ]
extra_deps = [ ":cr_policy_pref_indicator_module" ]
}
js_library("cr_tooltip_icon.m") { js_library("cr_tooltip_icon.m") {
sources = [ sources = [
"$root_gen_dir/ui/webui/resources/cr_elements/policy/cr_tooltip_icon.m.js", "$root_gen_dir/ui/webui/resources/cr_elements/policy/cr_tooltip_icon.m.js",
...@@ -105,6 +122,7 @@ js_library("cr_tooltip_icon.m") { ...@@ -105,6 +122,7 @@ js_library("cr_tooltip_icon.m") {
group("polymer3_elements") { group("polymer3_elements") {
deps = [ deps = [
":cr_policy_indicator_module", ":cr_policy_indicator_module",
":cr_policy_pref_indicator_module",
":cr_tooltip_icon_module", ":cr_tooltip_icon_module",
":modulize", ":modulize",
] ]
...@@ -117,6 +135,13 @@ polymer_modulizer("cr_policy_indicator") { ...@@ -117,6 +135,13 @@ polymer_modulizer("cr_policy_indicator") {
auto_imports = [ "ui/webui/resources/cr_elements/policy/cr_policy_indicator_behavior.html|CrPolicyIndicatorBehavior,CrPolicyIndicatorType" ] auto_imports = [ "ui/webui/resources/cr_elements/policy/cr_policy_indicator_behavior.html|CrPolicyIndicatorBehavior,CrPolicyIndicatorType" ]
} }
polymer_modulizer("cr_policy_pref_indicator") {
js_file = "cr_policy_pref_indicator.js"
html_file = "cr_policy_pref_indicator.html"
html_type = "dom-module"
auto_imports = [ "ui/webui/resources/cr_elements/policy/cr_policy_indicator_behavior.html|CrPolicyIndicatorBehavior,CrPolicyIndicatorType" ]
}
polymer_modulizer("cr_tooltip_icon") { polymer_modulizer("cr_tooltip_icon") {
js_file = "cr_tooltip_icon.js" js_file = "cr_tooltip_icon.js"
html_file = "cr_tooltip_icon.html" html_file = "cr_tooltip_icon.html"
...@@ -124,5 +149,8 @@ polymer_modulizer("cr_tooltip_icon") { ...@@ -124,5 +149,8 @@ polymer_modulizer("cr_tooltip_icon") {
} }
js_modulizer("modulize") { js_modulizer("modulize") {
input_files = [ "cr_policy_indicator_behavior.js" ] input_files = [
"cr_policy_indicator_behavior.js",
"cr_policy_pref_behavior.js",
]
} }
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
*/ */
/** @polymerBehavior */ /** @polymerBehavior */
const CrPolicyPrefBehavior = { /* #export */ const CrPolicyPrefBehavior = {
properties: { properties: {
/** /**
* Showing that an extension is controlling a pref is sometimes done with a * Showing that an extension is controlling a pref is sometimes done with a
......
...@@ -195,6 +195,16 @@ ...@@ -195,6 +195,16 @@
use_base_dir="false" use_base_dir="false"
type="BINDATA" type="BINDATA"
compress="gzip" /> compress="gzip" />
<include name="IDR_CR_ELEMENTS_POLICY_CR_POLICY_PREF_INDICATOR_M_JS"
file="${root_gen_dir}/ui/webui/resources/cr_elements/policy/cr_policy_pref_indicator.m.js"
use_base_dir="false"
type="BINDATA"
compress="gzip" />
<include name="IDR_CR_ELEMENTS_POLICY_CR_POLICY_PREF_BEHAVIOR_M_JS"
file="${root_gen_dir}/ui/webui/resources/cr_elements/policy/cr_policy_pref_behavior.m.js"
use_base_dir="false"
type="BINDATA"
compress="gzip" />
<include name="IDR_CR_ELEMENTS_CR_VIEW_MANAGER_M_JS" <include name="IDR_CR_ELEMENTS_CR_VIEW_MANAGER_M_JS"
file="${root_gen_dir}/ui/webui/resources/cr_elements/cr_view_manager/cr_view_manager.m.js" file="${root_gen_dir}/ui/webui/resources/cr_elements/cr_view_manager/cr_view_manager.m.js"
use_base_dir="false" use_base_dir="false"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment