Commit 13fdff13 authored by David Lei's avatar David Lei Committed by Commit Bot

Enable Image Worker for guest-media-app (untrusted Web UI).

Won't show any changes until http://crrev.com/c/1895263 (serving bundle app resources) lands

Bug: 996088, b/142091425

Change-Id: I5fe3a942ac56f7eff30b0856f9e6ecf57bf28dc8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1895262Reviewed-by: default avatarTrent Apted <tapted@chromium.org>
Commit-Queue: David Lei <dlei@google.com>
Cr-Commit-Position: refs/heads/master@{#714902}
parent 7d88897e
......@@ -30,6 +30,7 @@ js2gtest("browser_tests_js") {
test_type = "mojo_lite_webui"
sources = [
"test/media_app_guest_ui_browsertest.js",
"test/media_app_ui_browsertest.js",
]
......
......@@ -39,6 +39,9 @@ content::WebUIDataSource* MediaAppGuestUI::CreateDataSource() {
}
source->DisableDenyXFrameOptions();
std::string csp =
std::string("worker-src ") + kChromeUIMediaAppGuestURL + ";";
source->OverrideContentSecurityPolicyChildSrc(csp);
return source;
}
......
// Copyright 2019 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 Test suite for chrome://media-app-guest.
*/
GEN('#include "chromeos/constants/chromeos_features.h"');
var MediaAppGuestUIBrowserTest = class extends testing.Test {
/** @override */
get browsePreload() {
return 'chrome://media-app-guest/app.html';
}
/** @override */
get featureList() {
return {enabled: ['chromeos::features::kMediaApp']};
}
/** @override */
get runAccessibilityChecks() {
return false;
}
/** @override */
preLoad() {
document.addEventListener('DOMContentLoaded', () => {
const mojoBindingsLite = document.createElement('script');
mojoBindingsLite.src = 'chrome://resources/mojo/mojo/public/js/mojo_bindings_lite.js';
document.head.appendChild(mojoBindingsLite);
});
}
};
// Test web workers can be spawned from chrome://media-app-guest. Errors
// will be logged in console from web_ui_browser_test.cc.
TEST_F('MediaAppGuestUIBrowserTest', 'GuestCanSpawnWorkers', () => {
let error = null;
try {
const worker = new Worker('js/app_drop_target_module.js');
} catch (e) {
error = e;
}
assertEquals(error, null);
});
\ No newline at end of file
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