From 05e188ef7be2a292502d5366872778f46c64e002 Mon Sep 17 00:00:00 2001 From: Matt Woodrow Date: Mon, 8 Jun 2020 23:18:01 +0000 Subject: [PATCH] Bug 1638711 - Mark WPTs that incorrectly expect synchronous security checks as failing. r=asuth Differential Revision: https://phabricator.services.mozilla.com/D77955 --- dom/clients/manager/ClientNavigateOpChild.cpp | 4 ++++ .../service-worker/client-navigate.https.html.ini | 3 +-- .../service-worker/windowclient-navigate.https.html.ini | 3 +++ 3 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 testing/web-platform/meta/service-workers/service-worker/windowclient-navigate.https.html.ini diff --git a/dom/clients/manager/ClientNavigateOpChild.cpp b/dom/clients/manager/ClientNavigateOpChild.cpp index decf716676b2..6d27a1281bff 100644 --- a/dom/clients/manager/ClientNavigateOpChild.cpp +++ b/dom/clients/manager/ClientNavigateOpChild.cpp @@ -266,6 +266,10 @@ RefPtr ClientNavigateOpChild::DoNavigate( /// the spec, but does match the current behavior of both us and Chrome. /// https://github.com/w3c/ServiceWorker/issues/1500 tracks sorting that /// out. + /// We now run security checks asynchronously, so these tests now + /// just fail to load rather than hitting this failure path. I've + /// marked them as failing for now until they get fixed to match the + /// spec. nsPrintfCString err("Invalid URL \"%s\"", aArgs.url().get()); CopyableErrorResult result; result.ThrowTypeError(err); diff --git a/testing/web-platform/meta/service-workers/service-worker/client-navigate.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/client-navigate.https.html.ini index bfe6a745861a..531c6f495ce7 100644 --- a/testing/web-platform/meta/service-workers/service-worker/client-navigate.https.html.ini +++ b/testing/web-platform/meta/service-workers/service-worker/client-navigate.https.html.ini @@ -30,6 +30,5 @@ if os == "mac": ["PASS", "TIMEOUT", "NOTRUN"] [Navigating to mixed-content iframe should reject with TypeError] - expected: - if webrender and (os == "linux") and not debug and not fission: ["PASS", "TIMEOUT"] + expected: FAIL diff --git a/testing/web-platform/meta/service-workers/service-worker/windowclient-navigate.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/windowclient-navigate.https.html.ini new file mode 100644 index 000000000000..2b0ae44bda88 --- /dev/null +++ b/testing/web-platform/meta/service-workers/service-worker/windowclient-navigate.https.html.ini @@ -0,0 +1,3 @@ +[windowclient-navigate.https.html] + [invalid url (file:///) worker side] + expected: FAIL