Commit e063f324 authored by sauski's avatar sauski Committed by Commit Bot

WebUI Settings: Extend test type checking

Added type checking for the following tests:
    - collapse_radio_button_tests.js
    - do_not_track_toggle_test.js
    - recent_site_permissions_test.js

Bug: 1000989
Change-Id: I310777a6f17ffff9c63b03965c71ea14485b54d1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2489630
Commit-Queue: Theodore Olsauskas-Warren <sauski@google.com>
Reviewed-by: default avatarSean Harrison <harrisonsean@chromium.org>
Cr-Commit-Position: refs/heads/master@{#820172}
parent 0f134b1a
......@@ -64,6 +64,7 @@ js_type_check("closure_compile_module") {
js_library("cookies_page") {
deps = [
":collapse_radio_button",
":do_not_track_toggle",
"..:metrics_browser_proxy",
"..:route",
"..:router.m",
......
......@@ -85,13 +85,15 @@ js_type_check("closure_compile") {
#":chooser_exception_list_tests",
#":chrome_cleanup_page_test",
#":clear_browsing_data_test",
#":collapse_radio_button_tests",
":collapse_radio_button_tests",
#":controlled_button_tests",
#":controlled_radio_button_tests",
":cookies_page_test",
#":default_browser_browsertest",
#":do_not_track_toggle_test",
":do_not_track_toggle_test",
#":downloads_page_test",
#":dropdown_menu_tests",
#":edit_dictionary_page_test",
......@@ -131,7 +133,8 @@ js_type_check("closure_compile") {
":privacy_page_test",
#":protocol_handlers_tests",
#":recent_site_permissions_test",
":recent_site_permissions_test",
#":reset_page_test",
#":reset_profile_banner_test",
#":route_tests",
......@@ -225,6 +228,16 @@ js_library("advanced_page_test") {
externs_list = [ "$externs_path/mocha-2.5.js" ]
}
js_library("collapse_radio_button_tests") {
deps = [
"..:chai_assert",
"..:test_util.m",
"//chrome/browser/resources/settings:lazy_load",
"//chrome/browser/resources/settings:settings",
]
externs_list = [ "$externs_path/mocha-2.5.js" ]
}
js_library("cookies_page_test") {
deps = [
":test_metrics_browser_proxy",
......@@ -238,6 +251,17 @@ js_library("cookies_page_test") {
externs_list = [ "$externs_path/mocha-2.5.js" ]
}
js_library("do_not_track_toggle_test") {
deps = [
":test_metrics_browser_proxy",
"..:chai_assert",
"..:test_util.m",
"//chrome/browser/resources/settings:lazy_load",
"//ui/webui/resources/js:load_time_data.m",
]
externs_list = [ "$externs_path/mocha-2.5.js" ]
}
js_library("fake_language_settings_private.m") {
sources = [ "$root_gen_dir/chrome/test/data/webui/settings/fake_language_settings_private.m.js" ]
deps = [
......@@ -310,6 +334,19 @@ js_library("privacy_page_test") {
externs_list = [ "$externs_path/mocha-2.5.js" ]
}
js_library("recent_site_permissions_test") {
deps = [
":test_site_settings_prefs_browser_proxy",
"..:chai_assert",
"..:test_util.m",
"//chrome/browser/resources/settings:lazy_load",
"//chrome/browser/resources/settings:settings",
"//ui/webui/resources/js:cr.m",
"//ui/webui/resources/js:load_time_data.m",
]
externs_list = [ "$externs_path/mocha-2.5.js" ]
}
js_library("safety_check_chrome_cleaner_test") {
deps = [
":test_metrics_browser_proxy",
......
......@@ -3,21 +3,22 @@
// found in the LICENSE file.
// clang-format off
import {flush} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js';
import 'chrome://settings/lazy_load.js';
import {flush} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js';
import {isChildVisible} from 'chrome://test/test_util.m.js';
import {assertFalse, assertTrue} from '../chai_assert.js';
import {isChildVisible} from '../test_util.m.js';
// clang-format on
suite('CrCollapseRadioButton', function() {
/** @type {SettingsCollapseRadioButtonElement} */
/** @type {!SettingsCollapseRadioButtonElement} */
let collapseRadioButton;
setup(function() {
PolymerTest.clearBody();
collapseRadioButton =
document.createElement('settings-collapse-radio-button');
document.body.innerHTML = '';
collapseRadioButton = /** @type {!SettingsCollapseRadioButtonElement} */ (
document.createElement('settings-collapse-radio-button'));
document.body.appendChild(collapseRadioButton);
flush();
});
......
......@@ -3,24 +3,29 @@
// found in the LICENSE file.
// clang-format off
import 'chrome://settings/lazy_load.js';
import {flush} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js';
import 'chrome://settings/lazy_load.js';
import {MetricsBrowserProxyImpl, PrivacyElementInteractions} from 'chrome://settings/settings.js';
import {TestMetricsBrowserProxy} from 'chrome://test/settings/test_metrics_browser_proxy.js';
import {assertEquals, assertFalse, assertTrue} from '../chai_assert.js';
import {TestMetricsBrowserProxy} from './test_metrics_browser_proxy.js';
// clang-format on
suite('CrSettingsDoNotTrackToggleTest', function() {
/** @type {settings.TestMetricsBrowserProxy} */
/** @type {TestMetricsBrowserProxy} */
let testMetricsBrowserProxy;
/** @type {SettingsDoNotTrackToggle} */
/** @type {SettingsDoNotTrackToggleElement} */
let testElement;
setup(function() {
testMetricsBrowserProxy = new TestMetricsBrowserProxy();
MetricsBrowserProxyImpl.instance_ = testMetricsBrowserProxy;
PolymerTest.clearBody();
testElement = document.createElement('settings-do-not-track-toggle');
document.body.innerHTML = '';
testElement = /** @type {SettingsDoNotTrackToggleElement} */ (
document.createElement('settings-do-not-track-toggle'));
testElement.prefs = {
enable_do_not_track: {value: false},
};
......
......@@ -4,10 +4,13 @@
// clang-format off
import {flush} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js';
import {ContentSetting,SiteSettingSource,SiteSettingsPrefsBrowserProxyImpl} from 'chrome://settings/lazy_load.js';
import {routes} from 'chrome://settings/settings.js';
import {TestSiteSettingsPrefsBrowserProxy} from 'chrome://test/settings/test_site_settings_prefs_browser_proxy.js';
import {isChildVisible,isVisible} from 'chrome://test/test_util.m.js';
import {ContentSetting, SiteSettingSource, SiteSettingsPrefsBrowserProxyImpl} from 'chrome://settings/lazy_load.js';
import {Router, routes} from 'chrome://settings/settings.js';
import {assertEquals, assertFalse, assertTrue} from '../chai_assert.js';
import {isChildVisible, isVisible} from '../test_util.m.js';
import {TestSiteSettingsPrefsBrowserProxy} from './test_site_settings_prefs_browser_proxy.js';
// clang-format on
......@@ -18,33 +21,36 @@ suite('CrSettingsRecentSitePermissionsTest', function() {
*/
let browserProxy = null;
/** @type {SettingsRecentSitePermissionsElement} */
/** @type {!SettingsRecentSitePermissionsElement} */
let testElement;
setup(function() {
browserProxy = new TestSiteSettingsPrefsBrowserProxy();
SiteSettingsPrefsBrowserProxyImpl.instance_ = browserProxy;
PolymerTest.clearBody();
testElement = document.createElement('settings-recent-site-permissions');
document.body.innerHTML = '';
testElement =
/** @type {!SettingsRecentSitePermissionsElement} */
(document.createElement('settings-recent-site-permissions'));
document.body.appendChild(testElement);
flush();
});
teardown(function() {
testElement.remove();
Router.getInstance().navigateTo(routes.BASIC);
});
test('No recent permissions', async function() {
browserProxy.setRecentSitePermissions([]);
testElement.currentRouteChanged(routes.SITE_SETTINGS);
Router.getInstance().navigateTo(routes.SITE_SETTINGS);
await browserProxy.whenCalled('getRecentSitePermissions');
flush();
assertTrue(isVisible(testElement, '#noPermissionsText'));
assertTrue(isChildVisible(testElement, '#noPermissionsText'));
});
test('Various recent permissions', async function() {
const mockData = Promise.resolve([
const mockData = [
{
origin: 'https://bar.com',
incognito: true,
......@@ -66,9 +72,9 @@ suite('CrSettingsRecentSitePermissionsTest', function() {
}
]
},
]);
];
browserProxy.setRecentSitePermissions(mockData);
testElement.currentRouteChanged(routes.SITE_SETTINGS);
Router.getInstance().navigateTo(routes.SITE_SETTINGS);
await browserProxy.whenCalled('getRecentSitePermissions');
flush();
......@@ -78,8 +84,8 @@ suite('CrSettingsRecentSitePermissionsTest', function() {
const siteEntries = testElement.shadowRoot.querySelectorAll('.link-button');
assertEquals(3, siteEntries.length);
const incognitoIcons =
testElement.shadowRoot.querySelectorAll('.incognito-icon');
const incognitoIcons = /** @type !NodeList<!HTMLElement> */ (
testElement.shadowRoot.querySelectorAll('.incognito-icon'));
assertTrue(isVisible(incognitoIcons[0]));
assertFalse(isVisible(incognitoIcons[1]));
assertFalse(isVisible(incognitoIcons[2]));
......
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