Commit 91dbf31b authored by Wolfgang Beyer's avatar Wolfgang Beyer Committed by Chromium LUCI CQ

[DevTools] Report COEP status for service workers

This CL allows DevTools to look up the COEP status of service workers.

Bug: 1122507

Change-Id: I7e1c84d874139479f86d0defd91363edf7d3b10a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2575023Reviewed-by: default avatarSigurd Schneider <sigurds@chromium.org>
Commit-Queue: Wolfgang Beyer <wolfi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#836089}
parent ee3e7323
......@@ -257,4 +257,10 @@ RenderProcessHost* ServiceWorkerDevToolsAgentHost::GetProcessHost() {
return RenderProcessHost::FromID(worker_process_id_);
}
base::Optional<network::CrossOriginEmbedderPolicy>
ServiceWorkerDevToolsAgentHost::cross_origin_embedder_policy(
const std::string&) {
return cross_origin_embedder_policy_;
}
} // namespace content
......@@ -53,6 +53,8 @@ class ServiceWorkerDevToolsAgentHost : public DevToolsAgentHostImpl {
NetworkLoaderFactoryParamsAndInfo CreateNetworkFactoryParamsForDevTools()
override;
RenderProcessHost* GetProcessHost() override;
base::Optional<network::CrossOriginEmbedderPolicy>
cross_origin_embedder_policy(const std::string& id) override;
void WorkerRestarted(int worker_process_id, int worker_route_id);
void WorkerReadyForInspection(
......
Verifies that we can successfully retrieve the security isolation status of a service worker.
COEP status
{
reportOnlyValue : None
value : None
}
COOP status
undefined
(async function(testRunner) {
var {page, session, dp} = await testRunner.startBlank(
'Verifies that we can successfully retrieve the security isolation status of a service worker.');
const swHelper = (await testRunner.loadScript('../../service-worker/resources/service-worker-helper.js'))(dp, session);
let swdp = null;
await dp.Target.setAutoAttach(
{autoAttach: true, waitForDebuggerOnStart: false, flatten: true});
dp.Target.onAttachedToTarget(async event => {
swdp = session.createChild(event.params.sessionId).protocol;
});
const serviceWorkerURL = '/inspector-protocol/service-worker/resources/blank-service-worker.js';
await swHelper.installSWAndWaitForActivated(serviceWorkerURL);
swdp.Network.enable();
const {result} = await swdp.Network.getSecurityIsolationStatus({frameId: ''});
testRunner.log(`COEP status`);
testRunner.log(result.status.coep);
testRunner.log(`COOP status`);
testRunner.log(result.status.coop);
testRunner.completeTest();
});
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