Commit 9a7bc8d5 authored by James Hawkins's avatar James Hawkins Committed by Commit Bot

OS Settings: Convert InternetConfig to Polymer 3.

Bug:  1045266
Test: OSSettingsInternetConfig*

Change-Id: Iea02f06dcf1f322b787d6bc0122e07a25b97f2cb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2425065
Commit-Queue: James Hawkins <jhawkins@chromium.org>
Reviewed-by: default avatarKyle Horimoto <khorimoto@chromium.org>
Cr-Commit-Position: refs/heads/master@{#809683}
parent 35c6236c
......@@ -181,7 +181,7 @@ js_type_check("closure_compile_module") {
is_polymer3 = true
deps = [
":cellular_setup_dialog.m",
# ":internet_config.m",
":internet_config.m",
# ":internet_detail_page.m",
":internet_known_networks_page.m",
# ":internet_page.m",
......@@ -209,7 +209,16 @@ js_library("cellular_setup_dialog.m") {
js_library("internet_config.m") {
sources = [ "$root_gen_dir/chrome/browser/resources/settings/chromeos/internet_page/internet_config.m.js" ]
deps = [
# TODO: Fill those in.
":internet_shared_css.m",
"//chrome/browser/resources/settings/chromeos:metrics_recorder.m",
"//chrome/browser/resources/settings:router.m",
"//third_party/polymer/v3_0/components-chromium/iron-flex-layout:iron-flex-layout",
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
"//ui/webui/resources/cr_components/chromeos/network:network_config.m",
"//ui/webui/resources/cr_elements/cr_button:cr_button.m",
"//ui/webui/resources/cr_elements/cr_dialog:cr_dialog.m",
"//ui/webui/resources/js:i18n_behavior.m",
"//ui/webui/resources/js:util.m",
]
extra_deps = [ ":internet_config_module" ]
}
......@@ -327,6 +336,8 @@ polymer_modulizer("internet_config") {
js_file = "internet_config.js"
html_file = "internet_config.html"
html_type = "dom-module"
auto_imports = os_settings_auto_imports
namespace_rewrites = os_settings_namespace_rewrites
}
polymer_modulizer("internet_detail_page") {
......
......@@ -4,6 +4,7 @@
<link rel="import" href="chrome://resources/cr_elements/cr_button/cr_button.html">
<link rel="import" href="chrome://resources/cr_elements/cr_dialog/cr_dialog.html">
<link rel="import" href="chrome://resources/html/i18n_behavior.html">
<link rel="import" href="chrome://resources/html/util.html">
<link rel="import" href="chrome://resources/polymer/v1_0/iron-flex-layout/iron-flex-layout-classes.html">
<link rel="import" href="../metrics_recorder.html">
<link rel="import" href="internet_shared_css.html">
......
......@@ -121,7 +121,7 @@ Polymer({
/** @private */
onSaveTap_() {
this.$.networkConfig.save();
/** @type {!NetworkConfigElement} */ (this.$.networkConfig).save();
settings.recordSettingChange();
},
......
......@@ -130,6 +130,7 @@ os_settings_auto_imports = settings_auto_imports +
"ui/webui/resources/html/cr.html|sendWithPromise,removeWebUIListener,addWebUIListener,WebUIListener",
"ui/webui/resources/html/icon.html|getImage",
"ui/webui/resources/html/polymer.html|afterNextRender,Polymer,html,flush",
"ui/webui/resources/html/util.html|HTMLEscape",
"chrome/browser/resources/settings/chromeos/os_printing_page/cups_printers_browser_proxy.html|CupsPrintersBrowserProxy,CupsPrintersBrowserProxyImpl,CupsPrinterInfo,PrinterSetupResult,CupsPrintersList,PrinterPpdMakeModel,ManufacturersInfo,ModelsInfo,PrintServerResult,PrinterMakeModel",
"chrome/browser/resources/settings/chromeos/os_printing_page/cups_printers_entry_list_behavior.html|CupsPrintersEntryListBehavior",
"chrome/browser/resources/settings/chromeos/os_printing_page/cups_printers_entry_manager.html|CupsPrintersEntryManager",
......
......@@ -8,6 +8,7 @@ import './bluetooth_page/bluetooth_page.m.js';
import './bluetooth_page/bluetooth_subpage.m.js';
import './bluetooth_page/bluetooth_device_list_item.m.js';
import './internet_page/cellular_setup_dialog.m.js';
import './internet_page/internet_config.m.js';
import './internet_page/internet_known_networks_page.m.js';
import './nearby_share_page/nearby_share_receive_dialog.m.js';
import './nearby_share_page/nearby_share_subpage.m.js';
......
......@@ -35,6 +35,11 @@
use_base_dir="false"
compress="false"
type="BINDATA" />
<include name="IDR_OS_SETTINGS_INTERNET_CONFIG_M_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/chromeos/internet_page/internet_config.m.js"
use_base_dir="false"
compress="false"
type="BINDATA" />
<include name="IDR_OS_SETTINGS_INTERNET_KNOWN_NETWORKS_PAGE_M_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/chromeos/internet_page/internet_known_networks_page.m.js"
use_base_dir="false"
......
......@@ -291,6 +291,7 @@ if (include_js_tests) {
"$root_gen_dir/chrome/test/data/webui/settings/chromeos/fake_quick_unlock_private.m.js",
"$root_gen_dir/chrome/test/data/webui/settings/chromeos/input_method_options_page_test.m.js",
"$root_gen_dir/chrome/test/data/webui/settings/chromeos/input_page_test.m.js",
"$root_gen_dir/chrome/test/data/webui/settings/chromeos/internet_config_test.m.js",
"$root_gen_dir/chrome/test/data/webui/settings/chromeos/internet_known_networks_page_tests.m.js",
"$root_gen_dir/chrome/test/data/webui/settings/chromeos/localized_link_test.m.js",
"$root_gen_dir/chrome/test/data/webui/settings/chromeos/multidevice_feature_item_tests.m.js",
......
......@@ -43,6 +43,7 @@ js_modulizer("modulize") {
"fake_user_action_recorder.js",
"input_method_options_page_test.js",
"input_page_test.js",
"internet_config_test.js",
"internet_known_networks_page_tests.js",
"localized_link_test.js",
"multidevice_feature_item_tests.js",
......
// 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://os-settings/chromeos/os_settings.js';
// #import {FakeNetworkConfig} from 'chrome://test/chromeos/fake_network_config_mojom.m.js';
// #import {MojoInterfaceProviderImpl} from 'chrome://resources/cr_components/chromeos/network/mojo_interface_provider.m.js';
// #import {OncMojo} from 'chrome://resources/cr_components/chromeos/network/onc_mojo.m.js';
// #import {flush} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js';
// clang-format on
suite('InternetConfig', function() {
/** @type {!InternetConfig|undefined} */
let internetConfig;
/** @type {!chromeos.networkConfig.mojom.CrosNetworkConfigRemote|undefined} */
let mojoApi_;
suiteSetup(function() {
mojoApi_ = new FakeNetworkConfig();
network_config.MojoInterfaceProviderImpl.getInstance().remote_ = mojoApi_;
});
setup(function() {
internetConfig = document.createElement('internet-config');
internetConfig.type = OncMojo.getNetworkTypeString(
chromeos.networkConfig.mojom.NetworkType.kWiFi);
document.body.appendChild(internetConfig);
Polymer.dom.flush();
});
test('Cancel button closes the dialog', function() {
internetConfig.open();
assertTrue(internetConfig.$.dialog.open);
internetConfig.$$('cr-button.cancel-button').click();
assertFalse(internetConfig.$.dialog.open);
});
});
......@@ -730,6 +730,22 @@ TEST_F('OSSettingsGoogleAssistantPageTest', 'AllJsTests', () => {
mocha.run();
});
// Test fixture for settings-internet-detail-page.
// eslint-disable-next-line no-var
var OSSettingsInternetConfigTest = class extends OSSettingsBrowserTest {
/** @override */
get extraLibraries() {
return super.extraLibraries.concat([
BROWSER_SETTINGS_PATH + '../chromeos/fake_network_config_mojom.js',
'internet_config_test.js',
]);
}
};
TEST_F('OSSettingsInternetConfigTest', 'All', () => {
mocha.run();
});
// Test fixture for settings-internet-detail-page.
// eslint-disable-next-line no-var
var OSSettingsInternetDetailPageTest = class extends OSSettingsBrowserTest {
......
......@@ -96,6 +96,7 @@ TEST_F('OSSettingsNearbyShareSubPageV3Test', 'All', () => mocha.run());
['CellularSetupDialog', 'cellular_setup_dialog_test.m.js'],
['DateTimePage', 'date_time_page_tests.m.js'],
['InputMethodOptionPage', 'input_method_options_page_test.m.js'],
['InternetConfig', 'internet_config_test.m.js'],
['InternetKnownNetworksPage', 'internet_known_networks_page_tests.m.js'],
['LocalizedLink', 'localized_link_test.m.js'],
['MultideviceFeatureItem', 'multidevice_feature_item_tests.m.js'],
......
......@@ -19,8 +19,6 @@ const VPNConfigType = {
OPEN_VPN: 'OpenVPN',
};
(function() {
// Note: This pattern does not work for elements that are stamped on initial
// load because chromeos.networkConfig is not defined yet. <network-config>
// however is always embedded in a <cr-dialog> so it is not stamped immediately.
......@@ -1740,4 +1738,3 @@ Polymer({
return undefined;
},
});
})();
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