Commit 7ad4cef4 authored by James Hawkins's avatar James Hawkins Committed by Commit Bot

cr_components/network: Convert NetworkConfigElementBehavior to Polymer3.

R=khorimoto@chromium.org

Bug: 1045266
Test: CrComponentsNetworkConfigElementBehaviorTestV3.All
Change-Id: Iec3529a023fb5c00c341d6f8d535991fe37552d5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2347072
Commit-Queue: James Hawkins <jhawkins@chromium.org>
Commit-Queue: Kyle Horimoto <khorimoto@chromium.org>
Reviewed-by: default avatarKyle Horimoto <khorimoto@chromium.org>
Auto-Submit: James Hawkins <jhawkins@chromium.org>
Cr-Commit-Position: refs/heads/master@{#797428}
parent 5ea693ce
......@@ -190,6 +190,7 @@ if (include_js_tests) {
data = [
"$root_gen_dir/chrome/test/data/webui/cr_components/chromeos/cr_policy_network_behavior_mojo_tests.m.js",
"$root_gen_dir/chrome/test/data/webui/cr_components/chromeos/cr_policy_network_indicator_mojo_tests.m.js",
"$root_gen_dir/chrome/test/data/webui/cr_components/chromeos/network_config_element_behavior_test.m.js",
"$root_gen_dir/chrome/test/data/webui/cr_components/managed_footnote_test.m.js",
"$root_gen_dir/chrome/test/data/webui/cr_elements/cr_button_tests.m.js",
"$root_gen_dir/chrome/test/data/webui/cr_elements/cr_container_shadow_behavior_test.m.js",
......
......@@ -8,5 +8,6 @@ js_modulizer("modulize") {
input_files = [
"cr_policy_network_behavior_mojo_tests.js",
"cr_policy_network_indicator_mojo_tests.js",
"network_config_element_behavior_test.js",
]
}
......@@ -38,6 +38,9 @@ GEN('#endif');
'../../chromeos/fake_network_config_mojom.js',
]
],
['NetworkConfigElementBehavior', 'network_config_element_behavior_test.js',
[]
],
].forEach(test => registerTest(...test));
// clang-format on
......@@ -55,5 +58,5 @@ function registerTest(testName, module, deps) {
}
};
TEST_F(className, 'MAYBE_All', () => mocha.run());
TEST_F(className, 'All', () => mocha.run());
}
......@@ -11,6 +11,7 @@ GEN('#include "content/public/test/browser_test.h"');
// clang-format off
[['CrPolicyNetworkBehaviorMojo', 'cr_policy_network_behavior_mojo_tests.m.js'],
['CrPolicyNetworkIndicatorMojo', 'cr_policy_network_indicator_mojo_tests.m.js'],
['NetworkConfigElementBehavior', 'network_config_element_behavior_test.m.js'],
].forEach(test => registerTest(...test));
// clang-format on
......
// Copyright 2020 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// clang-format off
// #import 'chrome://resources/mojo/mojo/public/js/mojo_bindings_lite.js';
// #import 'chrome://resources/mojo/services/network/public/mojom/ip_address.mojom-lite.js';
// #import 'chrome://resources/mojo/chromeos/services/network_config/public/mojom/network_types.mojom-lite.js';
// #import 'chrome://resources/mojo/mojo/public/mojom/base/time.mojom-lite.js';
// #import 'chrome://resources/mojo/chromeos/services/network_config/public/mojom/cros_network_config.mojom-lite.js';
// #import {NetworkConfigElementBehavior} from 'chrome://resources/cr_components/chromeos/network/network_config_element_behavior.m.js';
// #import {OncMojo} from 'chrome://resources/cr_components/chromeos/network/onc_mojo.m.js';
// #import {flush, Polymer} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js';
// #import {assertFalse, assertTrue} from '../../chai_assert.js';
// clang-format on
suite('CrComponentsNetworkConfigElementBehaviorTest', function() {
/** @type {!NetworkConfigElementBehavior} */
let config;
/** @polymerBehavior */
const TestNetworkPolicyEnforcer = {
properties: {
/** True if the policy should be enforced. */
enforced: {
type: Boolean,
value: false,
},
},
/** @override */
isNetworkPolicyEnforced(policy) {
// In tests, toggle |policy| and |enforced| to elicit different behaviors.
return !!policy && this.enforced;
},
};
suiteSetup(function() {
Polymer({
is: 'test-network-config-element',
behaviors: [
NetworkConfigElementBehavior,
TestNetworkPolicyEnforcer,
],
properties: {
showPolicyIndicator: {
type: Boolean,
value: false,
computed: 'getDisabled_(disabled, property)',
}
},
});
});
setup(function() {
config = document.createElement('test-network-config-element');
document.body.appendChild(config);
Polymer.dom.flush();
});
test('Policy indicator states', function() {
config.disabled = false;
config.enforced = false;
config.property = null;
assertFalse(config.showPolicyIndicator);
config.disabled = false;
config.enforced = true;
config.property = null;
assertFalse(config.showPolicyIndicator);
config.disabled = true;
config.enforced = false;
config.property = null;
assertTrue(config.showPolicyIndicator);
config.disabled = true;
config.enforced = true;
config.property = null;
assertTrue(config.showPolicyIndicator);
config.disabled = false;
config.enforced = false;
config.property = OncMojo.createManagedString('policy');
assertFalse(config.showPolicyIndicator);
config.disabled = false;
config.enforced = true;
config.property = OncMojo.createManagedString('policy');
assertTrue(config.showPolicyIndicator);
config.disabled = true;
config.enforced = false;
config.property = OncMojo.createManagedString('policy');
assertTrue(config.showPolicyIndicator);
config.disabled = true;
config.enforced = true;
config.property = OncMojo.createManagedString('policy');
assertTrue(config.showPolicyIndicator);
});
});
......@@ -252,7 +252,7 @@ js_type_check("closure_compile_module") {
# ":network_apnlist.m",
# ":network_choose_mobile.m",
# ":network_config.m",
# ":network_config_element_behavior.m",
":network_config_element_behavior.m",
# ":network_config_input.m",
# ":network_config_select.m",
# ":network_config_toggle.m",
......@@ -333,9 +333,6 @@ js_library("network_config.m") {
js_library("network_config_element_behavior.m") {
sources = [ "$root_gen_dir/ui/webui/resources/cr_components/chromeos/network/network_config_element_behavior.m.js" ]
deps = [
# TODO: Fill those in.
]
extra_deps = [ ":modulize" ]
}
......
......@@ -7,7 +7,7 @@
*/
/** @polymerBehavior */
const NetworkConfigElementBehavior = {
/* #export */ const NetworkConfigElementBehavior = {
properties: {
disabled: {
type: Boolean,
......
......@@ -30,6 +30,10 @@
file="${root_gen_dir}/ui/webui/resources/cr_components/chromeos/network/cr_policy_network_indicator_mojo.m.js"
use_base_dir="false"
type="BINDATA" />
<include name="IDR_WEBUI_CHROMEOS_NETWORK_CONFIG_ELEMENT_BEHAVIOR_M_JS"
file="${root_gen_dir}/ui/webui/resources/cr_components/chromeos/network/network_config_element_behavior.m.js"
use_base_dir="false"
type="BINDATA" />
<include name="IDR_WEBUI_CHROMEOS_NETWORK_LISTENER_BEHAVIOR_M_JS"
file="${root_gen_dir}/ui/webui/resources/cr_components/chromeos/network/network_listener_behavior.m.js"
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