Commit a2abca78 authored by Regan Hsu's avatar Regan Hsu Committed by Commit Bot

Revert "[CrOS settings] Port os_reset_page/ and localized_link/ to Polymer3"

This reverts commit 8603f25b.

Reason for revert: metrics recorder is missing some resources in Polymer2 settings, causing some breakage

Original change's description:
> [CrOS settings] Port os_reset_page/ and localized_link/ to Polymer3
> 
> - Forks TestLifetimeBrowserProxy into test_os_lifetime_browser_proxy.js
> - create new os_settings_v3_browsertest.js
> 
> Bug: 1045266
> Change-Id: I4500646fda8e8208d7bc63b405594592f9a7fce2
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2190976
> Commit-Queue: Nnamdi Theodore Johnson-kanu <tjohnsonkanu@google.com>
> Reviewed-by: dpapad <dpapad@chromium.org>
> Reviewed-by: Regan Hsu <hsuregan@chromium.org>
> Reviewed-by: Kyle Horimoto <khorimoto@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#771716}

TBR=khorimoto@chromium.org,dpapad@chromium.org,hsuregan@chromium.org,tjohnsonkanu@google.com

Change-Id: I99a42fac621b3fd5dab766f1dbe476ba52aa58b6
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 1045266
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2216914Reviewed-by: default avatarRegan Hsu <hsuregan@chromium.org>
Commit-Queue: Regan Hsu <hsuregan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#772083}
parent bae75d25
......@@ -292,10 +292,8 @@ if (is_chromeos) {
deps += [ "//chrome/browser/resources/settings/chromeos:build" ]
} else {
source = "settings/os_settings_resources.grd"
deps += [
"//chrome/browser/resources/settings/chromeos:polymer3_elements",
"//chrome/browser/ui/webui/settings/chromeos/search:mojo_bindings_js",
]
deps +=
[ "//chrome/browser/resources/settings/chromeos:polymer3_elements" ]
}
defines = chrome_grit_defines
......
......@@ -8,7 +8,6 @@ import("//tools/grit/grit_rule.gni")
import("//ui/webui/resources/tools/js_modulizer.gni")
import("//ui/webui/webui_features.gni")
import("../../optimize_webui.gni")
import("./os_settings.gni")
if (optimize_webui) {
settings_pak_file = "os_settings_resources.pak"
......@@ -44,7 +43,7 @@ if (optimize_webui) {
"chrome://os-settings/constants/setting.mojom-lite.js",
"chrome://os-settings/search/search.mojom-lite.js",
"chrome://os-settings/search/search_result_icon.mojom-lite.js",
"chromeos/search/user_action_recorder.mojom-lite.js",
"chrome://os-settings/search/user_action_recorder.mojom-lite.js",
"chrome://resources/mojo/mojo/public/mojom/base/big_buffer.mojom.html",
"chrome://resources/mojo/mojo/public/mojom/base/string16.mojom.html",
"chrome://resources/mojo/mojo/public/mojom/base/time.mojom.html",
......@@ -181,8 +180,7 @@ group("closure_compile_module") {
#"device_page:closure_compile_module",
#"google_assistant_page:closure_compile_module",
#"internet_page:closure_compile_module",
"localized_link:closure_compile_module",
#"localized_link:closure_compile_module",
#"multidevice_page:closure_compile_module",
#"os_a11y_page:closure_compile_module",
#"os_about_page:closure_compile_module",
......@@ -193,8 +191,7 @@ group("closure_compile_module") {
#"os_people_page:closure_compile_module",
#"os_printing_page:closure_compile_module",
#"os_privacy_page:closure_compile_module",
"os_reset_page:closure_compile_module",
#"os_reset_page:closure_compile_module",
#"os_search_page:closure_compile_module",
#"os_settings_main:closure_compile_module",
#"os_settings_menu:closure_compile_module",
......@@ -225,8 +222,10 @@ group("closure_compile_module") {
js_library("metrics_recorder.m") {
sources = [ "$root_gen_dir/chrome/browser/resources/settings/chromeos/metrics_recorder.m.js" ]
deps = [ "//chrome/browser/ui/webui/settings/chromeos/search:mojo_bindings_js_library_for_compile" ]
extra_deps = [ ":modulize" ]
deps = [
# TODO: Fill those in.
]
extra_deps = [ ":metrics_recorder_module" ]
}
js_library("os_icons.m") {
......@@ -324,17 +323,21 @@ group("polymer3_elements") {
"personalization_page:polymer3_elements",
# Local targets
":metrics_recorder_module",
":modulize",
":os_icons_module",
":os_page_visibility_module",
":os_route_module",
":os_settings_icons_css_module",
"..:modulize",
"..:settings_shared_css_module",
"..:settings_vars_css_module",
]
}
polymer_modulizer("metrics_recorder") {
js_file = "metrics_recorder.js"
html_file = "metrics_recorder.html"
html_type = "dom-module"
}
polymer_modulizer("os_icons") {
js_file = "os_icons.m.js"
html_file = "os_icons.html"
......@@ -361,10 +364,8 @@ polymer_modulizer("os_settings_icons_css") {
js_modulizer("modulize") {
input_files = [
"metrics_recorder.js",
"os_settings_routes.js",
"route_origin_behavior.js",
"search_handler.js",
]
namespace_rewrites = os_settings_namespace_rewrites
}
......@@ -3,9 +3,6 @@
# found in the LICENSE file.
import("//third_party/closure_compiler/compile_js.gni")
import("//tools/polymer/polymer.gni")
import("//ui/webui/resources/tools/js_modulizer.gni")
import("../os_settings.gni")
js_type_check("closure_compile") {
deps = [ ":localized_link" ]
......@@ -15,20 +12,24 @@ js_library("localized_link") {
deps = [ "//ui/webui/resources/js:assert" ]
}
js_type_check("closure_compile_module") {
is_polymer3 = true
deps = [ ":localized_link.m" ]
}
# TODO: Uncomment as the Polymer3 migration makes progress.
#js_type_check("closure_compile_module") {
# is_polymer3 = true
# deps = [
# ":localized_link.m"
# ]
#}
js_library("localized_link.m") {
sources = [ "$root_gen_dir/chrome/browser/resources/settings/chromeos/localized_link/localized_link.m.js" ]
deps = [
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
"//ui/webui/resources/js:assert.m",
# TODO: Fill those in.
]
extra_deps = [ ":localized_link_module" ]
}
import("//tools/polymer/polymer.gni")
group("polymer3_elements") {
public_deps = [ ":localized_link_module" ]
}
......@@ -37,8 +38,4 @@ polymer_modulizer("localized_link") {
js_file = "localized_link.js"
html_file = "localized_link.html"
html_type = "dom-module"
namespace_rewrites = os_settings_namespace_rewrites
auto_imports =
os_settings_auto_imports +
[ "ui/webui/resources/html/assert.html|assert,assertNotReached" ]
}
<link rel="import" href="chrome://resources/html/cr.html">
<link rel="import" href="chrome://resources/mojo/mojo/public/js/mojo_bindings_lite.html">
<script src="search/user_action_recorder.mojom-lite.js"></script>
<script src="chrome://os-settings/search/user_action_recorder.mojom-lite.js"></script>
<script src="metrics_recorder.js"></script>
......@@ -2,11 +2,6 @@
// 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 '../search/user_action_recorder.mojom-lite.js';
// clang-format on
/**
* @fileoverview
* Provides functions used for recording user actions within settings.
......@@ -21,7 +16,7 @@ cr.define('settings', function() {
* @param {!chromeos.settings.mojom.UserActionRecorderInterface}
* testRecorder
*/
/* #export */ function setUserActionRecorderForTesting(testRecorder) {
function setUserActionRecorderForTesting(testRecorder) {
userActionRecorder = testRecorder;
}
......@@ -37,27 +32,27 @@ cr.define('settings', function() {
return userActionRecorder;
}
/* #export */ function recordPageFocus() {
function recordPageFocus() {
getRecorder().recordPageFocus();
}
/* #export */ function recordPageBlur() {
function recordPageBlur() {
getRecorder().recordPageBlur();
}
/* #export */ function recordClick() {
function recordClick() {
getRecorder().recordClick();
}
/* #export */ function recordNavigation() {
function recordNavigation() {
getRecorder().recordNavigation();
}
/* #export */ function recordSearch() {
function recordSearch() {
getRecorder().recordSearch();
}
/* #export */ function recordSettingChange() {
function recordSettingChange() {
getRecorder().recordSettingChange();
}
......
......@@ -3,9 +3,6 @@
# found in the LICENSE file.
import("//third_party/closure_compiler/compile_js.gni")
import("//tools/polymer/polymer.gni")
import("//ui/webui/resources/tools/js_modulizer.gni")
import("../os_settings.gni")
js_type_check("closure_compile") {
deps = [
......@@ -28,7 +25,6 @@ js_library("os_reset_page") {
deps = [
"//ui/webui/resources/js:assert",
"//ui/webui/resources/js:cr",
"//ui/webui/resources/js:load_time_data",
"//ui/webui/resources/js/cr/ui:focus_without_ink",
]
}
......@@ -38,23 +34,20 @@ js_library("os_reset_browser_proxy") {
externs_list = [ "$externs_path/chrome_send.js" ]
}
js_type_check("closure_compile_module") {
is_polymer3 = true
deps = [
":os_powerwash_dialog.m",
":os_reset_browser_proxy.m",
":os_reset_page.m",
]
}
# TODO: Uncomment as the Polymer3 migration makes progress.
#js_type_check("closure_compile_module") {
# is_polymer3 = true
# deps = [
# ":os_powerwash_dialog.m",
# ":os_reset_browser_proxy.m",
# ":os_reset_page.m"
# ]
#}
js_library("os_powerwash_dialog.m") {
sources = [ "$root_gen_dir/chrome/browser/resources/settings/chromeos/os_reset_page/os_powerwash_dialog.m.js" ]
deps = [
":os_reset_browser_proxy.m",
"..:metrics_recorder.m",
"../..:lifetime_browser_proxy.m",
"../localized_link:localized_link.m",
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
# TODO: Fill those in.
]
extra_deps = [ ":os_powerwash_dialog_module" ]
}
......@@ -62,8 +55,7 @@ js_library("os_powerwash_dialog.m") {
js_library("os_reset_browser_proxy.m") {
sources = [ "$root_gen_dir/chrome/browser/resources/settings/chromeos/os_reset_page/os_reset_browser_proxy.m.js" ]
deps = [
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
"//ui/webui/resources/js:cr.m",
# TODO: Fill those in.
]
extra_deps = [ ":modulize" ]
}
......@@ -71,14 +63,13 @@ js_library("os_reset_browser_proxy.m") {
js_library("os_reset_page.m") {
sources = [ "$root_gen_dir/chrome/browser/resources/settings/chromeos/os_reset_page/os_reset_page.m.js" ]
deps = [
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
"//ui/webui/resources/js:assert.m",
"//ui/webui/resources/js:load_time_data.m",
"//ui/webui/resources/js/cr/ui:focus_without_ink.m",
# TODO: Fill those in.
]
extra_deps = [ ":os_reset_page_module" ]
}
import("//tools/polymer/polymer.gni")
group("polymer3_elements") {
public_deps = [
":modulize",
......@@ -91,21 +82,16 @@ polymer_modulizer("os_powerwash_dialog") {
js_file = "os_powerwash_dialog.js"
html_file = "os_powerwash_dialog.html"
html_type = "dom-module"
namespace_rewrites = os_settings_namespace_rewrites
auto_imports = os_settings_auto_imports
}
polymer_modulizer("os_reset_page") {
js_file = "os_reset_page.js"
html_file = "os_reset_page.html"
html_type = "dom-module"
migrated_imports = settings_migrated_imports
namespace_rewrites = os_settings_namespace_rewrites
auto_imports = os_settings_auto_imports +
[ "ui/webui/resources/html/assert.html|assert" ]
}
import("//ui/webui/resources/tools/js_modulizer.gni")
js_modulizer("modulize") {
input_files = [ "os_reset_browser_proxy.js" ]
namespace_rewrites = os_settings_namespace_rewrites
}
......@@ -2,11 +2,9 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// #import {addSingletonGetter} from 'chrome://resources/js/cr.m.js';
cr.define('settings', function() {
/** @interface */
/* #export */ class OsResetBrowserProxy {
class OsResetBrowserProxy {
/**
* A method to be called when the reset powerwash dialog is shown.
*/
......@@ -21,7 +19,7 @@ cr.define('settings', function() {
/**
* @implements {settings.OsResetBrowserProxy}
*/
/* #export */ class OsResetBrowserProxyImpl {
class OsResetBrowserProxyImpl {
/** @override */
onPowerwashDialogShow() {
chrome.send('onPowerwashDialogShow');
......
# 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.
import("//third_party/closure_compiler/compile_js.gni")
import("../settings.gni")
os_settings_namespace_rewrites =
settings_namespace_rewrites + [
"settings.OsResetBrowserProxy|OsResetBrowserProxy",
"settings.recordSettingChange|recordSettingChange",
]
os_settings_auto_imports = settings_auto_imports + [
"chrome/browser/resources/settings/chromeos/os_reset_page/os_reset_browser_proxy.html|OsResetBrowserProxy,OsResetBrowserProxyImpl",
"chrome/browser/resources/settings/chromeos/metrics_recorder.html|recordSettingChange",
"chrome/browser/resources/settings/lifetime_browser_proxy.html|LifetimeBrowserProxy,LifetimeBrowserProxyImpl",
]
......@@ -2,9 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import './os_reset_page/os_powerwash_dialog.m.js';
import './os_reset_page/os_reset_page.m.js';
import './localized_link/localized_link.m.js';
export {OsResetBrowserProxyImpl} from './os_reset_page/os_reset_browser_proxy.m.js';
export {LifetimeBrowserProxy, LifetimeBrowserProxyImpl} from '../../lifetime_browser_proxy.m.js';
\ No newline at end of file
import {getSearchHandler} from './search_handler.m.js';
console.log('getSearchHandler', getSearchHandler);
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<grit-part>
<include name="IDR_OS_SETTINGS_RESET_BROWSER_PROXY_M_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/chromeos/os_reset_page/os_reset_browser_proxy.m.js"
<include name="IDR_OS_SETTINGS_SEARCH_HANDLER_M_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/chromeos/search_handler.m.js"
use_base_dir="false"
compress="false"
type="BINDATA" />
<include name="IDR_OS_SETTINGS_RESET_POWERWASH_DIALOG_M_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/chromeos/os_reset_page/os_powerwash_dialog.m.js"
use_base_dir="false"
compress="false"
type="BINDATA" />
<include name="IDR_OS_SETTINGS_RESET_PAGE_M_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/chromeos/os_reset_page/os_reset_page.m.js"
use_base_dir="false"
compress="false"
type="BINDATA" />
<include name="IDR_OS_SETTINGS_LOCALIZED_LINK_M_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/chromeos/localized_link/localized_link.m.js"
use_base_dir="false"
compress="false"
type="BINDATA" />
<include name="IDR_OS_SETTINGS_METRIC_RECORDER_M_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/chromeos/metrics_recorder.m.js"
use_base_dir="false"
compress="false"
type="BINDATA" />
<include name="IDR_OS_SETTINGS_LIFETIME_BROWSER_PROXY_M_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/lifetime_browser_proxy.m.js"
use_base_dir="false"
compress="false"
type="BINDATA"/>
<include name="IDR_OS_SETTINGS_SETTINGS_SHARED_CSS_M_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/settings_shared_css.m.js"
use_base_dir="false"
preprocess="true"
compress="false"
type="BINDATA" />
<include name="IDR_OS_SETTINGS_SETTINGS_VARS_CSS_M_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/settings_vars_css.m.js"
use_base_dir="false"
compress="false"
type="BINDATA" />
<include name="IDR_OS_SETTINGS_I18N_SETUP_JS"
file="i18n_setup.js"
compress="false"
type="BINDATA" />
<include name="IDR_OS_SETTINGS_SETTINGS_V3_HTML"
file="chromeos/os_settings_v3.html"
compress="false"
type="BINDATA" />
<include name="IDR_OS_SETTINGS_SETTINGS_V3_JS"
file="chromeos/os_settings.js"
compress="false"
type="BINDATA" />
</grit-part>
\ No newline at end of file
......@@ -145,9 +145,6 @@ js2gtest("browser_tests_js_webui") {
"settings/chromeos/os_settings_ui_browsertest.js",
"sys_internals/sys_internals_browsertest.js",
]
if (!optimize_webui) {
sources += [ "settings/chromeos/os_settings_v3_browsertest.js" ]
}
} else {
sources += [
"signin/signin_browsertest.js",
......@@ -228,13 +225,7 @@ js2gtest("browser_tests_js_webui") {
"$root_gen_dir/chrome/test/data/webui/test_util.m.js",
]
if (is_chromeos) {
data += [
"$root_gen_dir/chrome/test/data/webui/cr_elements/cr_searchable_drop_down_tests.m.js",
"$root_gen_dir/chrome/test/data/webui/settings/chromeos/os_reset_page_test.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/test_os_reset_browser_proxy.m.js",
"$root_gen_dir/chrome/test/data/webui/settings/chromeos/test_os_lifetime_browser_proxy.m.js",
]
data += [ "$root_gen_dir/chrome/test/data/webui/cr_elements/cr_searchable_drop_down_tests.m.js" ]
}
defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]
}
......
......@@ -7,15 +7,7 @@ import("//third_party/closure_compiler/compile_js.gni")
import("//ui/webui/resources/tools/js_modulizer.gni")
import("../namespace_rewrites.gni")
group("modulize") {
public_deps = [ ":modulize_local" ]
if (is_chromeos) {
deps = [ "./chromeos:modulize" ]
}
}
js_modulizer("modulize_local") {
js_modulizer("modulize") {
input_files = [
"fake_input_method_private.js",
"fake_language_settings_private.js",
......@@ -357,7 +349,7 @@ js_library("test_about_page_browser_proxy") {
"//chrome/browser/resources/settings:settings",
"//ui/webui/resources/js:cr.m",
]
extra_deps = [ ":modulize_local" ]
extra_deps = [ ":modulize" ]
}
js_library("test_hats_browser_proxy") {
......@@ -373,7 +365,7 @@ js_library("test_lifetime_browser_proxy.m") {
"..:test_browser_proxy.m",
"//chrome/browser/resources/settings:settings",
]
extra_deps = [ ":modulize_local" ]
extra_deps = [ ":modulize" ]
}
js_library("test_local_data_browser_proxy") {
......@@ -389,7 +381,7 @@ js_library("test_search_engines_browser_proxy.m") {
"..:test_browser_proxy.m",
"//chrome/browser/resources/settings:settings",
]
extra_deps = [ ":modulize_local" ]
extra_deps = [ ":modulize" ]
}
js_library("test_site_settings_prefs_browser_proxy") {
......
......@@ -2,11 +2,7 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//chrome/browser/resources/settings/chromeos/os_settings.gni")
import("//third_party/closure_compiler/compile_js.gni")
import("//tools/polymer/polymer.gni")
import("//ui/webui/resources/tools/js_modulizer.gni")
import("./os_namespace_rewrites.gni")
js_type_check("closure_compile") {
deps = [
......@@ -28,16 +24,3 @@ js_library("fake_settings_search_handler") {
"//ui/webui/resources/js:cr",
]
}
js_modulizer("modulize") {
input_files = [
"fake_settings_search_handler.js",
"fake_user_action_recorder.js",
"localized_link_test.js",
"os_reset_page_test.js",
"test_os_reset_browser_proxy.js",
"test_os_lifetime_browser_proxy.js",
]
namespace_rewrites =
os_settings_namespace_rewrites + os_test_namespace_rewrites
}
......@@ -31,6 +31,5 @@ cr.define('settings', function() {
}
}
// #cr_define_end
return {FakeSettingsSearchHandler: FakeSettingsSearchHandler};
});
......@@ -48,6 +48,5 @@ cr.define('settings', function() {
}
}
// #cr_define_end
return {FakeUserActionRecorder: FakeUserActionRecorder};
});
......@@ -2,9 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// #import {assertEquals, assertFalse, assertNotEquals, assertTrue} from '../../chai_assert.js';
// #import 'chrome://os-settings/chromeos/os_settings.js';
suite('localized_link', function() {
let localizedStringWithLink;
......
os_test_namespace_rewrites = [
"reset_page.TestOsResetBrowserProxy|TestOsResetBrowserProxy",
"settings.TestLifetimeBrowserProxy|TestLifetimeBrowserProxy",
]
......@@ -2,12 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// #import {TestLifetimeBrowserProxy} from './test_os_lifetime_browser_proxy.m.js';
// #import {LifetimeBrowserProxy, LifetimeBrowserProxyImpl, OsResetBrowserProxyImpl} from 'chrome://os-settings/chromeos/os_settings.js';
// #import {TestOsResetBrowserProxy} from './test_os_reset_browser_proxy.m.js';
// #import {assertEquals, assertFalse, assertNotEquals, assertTrue} from '../../chai_assert.js';
// #import {flush} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js';
cr.define('settings_reset_page', function() {
/** @enum {string} */
const TestNames = {
......@@ -15,84 +9,85 @@ cr.define('settings_reset_page', function() {
PowerwashDialogOpenClose: 'PowerwashDialogOpenClose',
};
suite('DialogTests', function() {
let resetPage = null;
function registerDialogTests() {
suite('DialogTests', function() {
let resetPage = null;
/** @type {!settings.ResetPageBrowserProxy} */
let resetPageBrowserProxy = null;
/** @type {!settings.ResetPageBrowserProxy} */
let resetPageBrowserProxy = null;
/** @type {!settings.LifetimeBrowserProxy} */
let lifetimeBrowserProxy = null;
/** @type {!settings.LifetimeBrowserProxy} */
let lifetimeBrowserProxy = null;
setup(function() {
lifetimeBrowserProxy = new settings.TestLifetimeBrowserProxy();
settings.LifetimeBrowserProxyImpl.instance_ = lifetimeBrowserProxy;
setup(function() {
lifetimeBrowserProxy = new settings.TestLifetimeBrowserProxy();
settings.LifetimeBrowserProxyImpl.instance_ = lifetimeBrowserProxy;
resetPageBrowserProxy = new reset_page.TestOsResetBrowserProxy();
settings.OsResetBrowserProxyImpl.instance_ = resetPageBrowserProxy;
resetPageBrowserProxy = new reset_page.TestOsResetBrowserProxy();
settings.OsResetBrowserProxyImpl.instance_ = resetPageBrowserProxy;
PolymerTest.clearBody();
resetPage = document.createElement('os-settings-reset-page');
document.body.appendChild(resetPage);
Polymer.dom.flush();
});
PolymerTest.clearBody();
resetPage = document.createElement('os-settings-reset-page');
document.body.appendChild(resetPage);
Polymer.dom.flush();
});
teardown(function() {
resetPage.remove();
});
teardown(function() {
resetPage.remove();
});
/**
* @param {function(SettingsPowerwashDialogElement):!Element}
* closeButtonFn A function that returns the button to be used for
* closing the dialog.
* @return {!Promise}
*/
function testOpenClosePowerwashDialog(closeButtonFn) {
// Open powerwash dialog.
assertTrue(!!resetPage);
resetPage.$.powerwash.click();
Polymer.dom.flush();
const dialog = resetPage.$$('os-settings-powerwash-dialog');
assertTrue(!!dialog);
assertTrue(dialog.$.dialog.open);
const onDialogClosed = new Promise(function(resolve, reject) {
dialog.addEventListener('close', function() {
assertFalse(dialog.$.dialog.open);
resolve();
/**
* @param {function(SettingsPowerwashDialogElement):!Element}
* closeButtonFn A function that returns the button to be used for
* closing the dialog.
* @return {!Promise}
*/
function testOpenClosePowerwashDialog(closeButtonFn) {
// Open powerwash dialog.
assertTrue(!!resetPage);
resetPage.$.powerwash.click();
Polymer.dom.flush();
const dialog = resetPage.$$('os-settings-powerwash-dialog');
assertTrue(!!dialog);
assertTrue(dialog.$.dialog.open);
const onDialogClosed = new Promise(function(resolve, reject) {
dialog.addEventListener('close', function() {
assertFalse(dialog.$.dialog.open);
resolve();
});
});
});
closeButtonFn(dialog).click();
return Promise.all([
onDialogClosed,
resetPageBrowserProxy.whenCalled('onPowerwashDialogShow'),
]);
}
closeButtonFn(dialog).click();
return Promise.all([
onDialogClosed,
resetPageBrowserProxy.whenCalled('onPowerwashDialogShow'),
]);
}
// Tests that the powerwash dialog opens and closes correctly, and
// that chrome.send calls are propagated as expected.
test(TestNames.PowerwashDialogOpenClose, function() {
// Test case where the 'cancel' button is clicked.
return testOpenClosePowerwashDialog(function(dialog) {
return dialog.$.cancel;
// Tests that the powerwash dialog opens and closes correctly, and
// that chrome.send calls are propagated as expected.
test(TestNames.PowerwashDialogOpenClose, function() {
// Test case where the 'cancel' button is clicked.
return testOpenClosePowerwashDialog(function(dialog) {
return dialog.$.cancel;
});
});
});
// Tests that when powerwash is requested chrome.send calls are
// propagated as expected.
test(TestNames.PowerwashDialogAction, async () => {
// Open powerwash dialog.
resetPage.$.powerwash.click();
Polymer.dom.flush();
const dialog = resetPage.$$('os-settings-powerwash-dialog');
assertTrue(!!dialog);
dialog.$.powerwash.click();
const requestTpmFirmwareUpdate =
await lifetimeBrowserProxy.whenCalled('factoryReset');
assertFalse(requestTpmFirmwareUpdate);
// Tests that when powerwash is requested chrome.send calls are
// propagated as expected.
test(TestNames.PowerwashDialogAction, async () => {
// Open powerwash dialog.
resetPage.$.powerwash.click();
Polymer.dom.flush();
const dialog = resetPage.$$('os-settings-powerwash-dialog');
assertTrue(!!dialog);
dialog.$.powerwash.click();
const requestTpmFirmwareUpdate =
await lifetimeBrowserProxy.whenCalled('factoryReset');
assertFalse(requestTpmFirmwareUpdate);
});
});
});
}
// #cr_define_end
return {};
registerDialogTests();
});
......@@ -1329,7 +1329,6 @@ var OSSettingsResetPageTest = class extends OSSettingsBrowserTest {
BROWSER_SETTINGS_PATH + '../test_util.js',
'test_os_reset_browser_proxy.js',
'os_reset_page_test.js',
'test_os_lifetime_browser_proxy.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.
/** @fileoverview Tests for shared Polymer 3 elements. */
// Polymer BrowserTest fixture.
GEN_INCLUDE(['//chrome/test/data/webui/polymer_browser_test_base.js']);
GEN('#include "chrome/common/buildflags.h"');
GEN('#include "content/public/test/browser_test.h"');
GEN('#include "services/network/public/cpp/features.h"');
/** Test fixture for shared Polymer 3 elements. */
// eslint-disable-next-line no-var
var OSSettingsV3BrowserTest = class extends PolymerTest {
/** @override */
get browsePreload() {
return 'chrome://os-settings';
}
/** @override */
get extraLibraries() {
return [
'//third_party/mocha/mocha.js',
'//chrome/test/data/webui/mocha_adapter.js',
];
}
/** @override */
get featureList() {
return {
enabled: [
'network::features::kOutOfBlinkCors',
],
};
}
};
[['ResetPage', 'os_reset_page_test.m.js'],
['LocalizedLink', 'localized_link_test.m.js'],
].forEach(test => registerTest(...test));
function registerTest(testName, module, caseName) {
const className = `OSSettings${testName}V3Test`;
this[className] = class extends OSSettingsV3BrowserTest {
/** @override */
get browsePreload() {
return `chrome://os-settings/test_loader.html?module=settings/chromeos/${module}`;
}
};
TEST_F(className, caseName || 'All', () => mocha.run());
}
// 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.
// #import {TestBrowserProxy} from '../../test_browser_proxy.m.js';
// #import {LifetimeBrowserProxy} from 'chrome://os-settings/chromeos/os_settings.js';
cr.define('settings', function() {
/**
* A test version of LifetimeBrowserProxy.
*
* @implements {settings.LifetimeBrowserProxy}
*/
/* #export */ class TestLifetimeBrowserProxy extends TestBrowserProxy {
constructor() {
const methodNames = ['restart', 'relaunch'];
methodNames.push('signOutAndRestart', 'factoryReset');
super(methodNames);
}
/** @override */
restart() {
this.methodCalled('restart');
}
/** @override */
relaunch() {
this.methodCalled('relaunch');
}
/** @override */
signOutAndRestart() {
this.methodCalled('signOutAndRestart');
}
/** @override */
factoryReset(requestTpmFirmwareUpdate) {
this.methodCalled('factoryReset', requestTpmFirmwareUpdate);
}
}
// #cr_define_end
return {
TestLifetimeBrowserProxy: TestLifetimeBrowserProxy,
};
});
......@@ -2,11 +2,9 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// #import {TestBrowserProxy} from '../../test_browser_proxy.m.js';
cr.define('reset_page', function() {
/** @implements {settings.OsResetBrowserProxy} */
/* #export */ class TestOsResetBrowserProxy extends TestBrowserProxy {
class TestOsResetBrowserProxy extends TestBrowserProxy {
constructor() {
super([
'onPowerwashDialogShow',
......@@ -19,7 +17,6 @@ cr.define('reset_page', function() {
}
}
// #cr_define_end
return {
TestOsResetBrowserProxy: TestOsResetBrowserProxy,
};
......
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