This is a testharness.js-based test.
PASS initialize global state
PASS Normal redirect to same-origin scope.
FAIL Normal redirect to same-origin scope with a hash fragment. assert_object_equals: Intercepted URLs should match. property "0" expected ["https://web-platform.test:8444/service-workers/service-worker/resources/navigation-redirect-scope1.py?#ref"] got ["https://web-platform.test:8444/service-workers/service-worker/resources/navigation-redirect-scope1.py?"]
FAIL Normal redirect to same-origin scope with different hash fragments. assert_object_equals: Intercepted URLs should match. property "0" expected ["https://web-platform.test:8444/service-workers/service-worker/resources/navigation-redirect-scope1.py?#ref2"] got ["https://web-platform.test:8444/service-workers/service-worker/resources/navigation-redirect-scope1.py?"]
PASS Normal redirect to other-origin scope.
PASS SW-fallbacked redirect to same-origin out-scope.
PASS SW-fallbacked redirect to same-origin same-scope.
FAIL SW-fallbacked redirect to same-origin same-scope with a hash fragment. assert_object_equals: Intercepted URLs should match. property "0" expected ["https://web-platform.test:8444/service-workers/service-worker/resources/navigation-redirect-scope1.py?url=https%3A%2F%2Fweb-platform.test%3A8444%2Fservice-workers%2Fservice-worker%2Fresources%2Fnavigation-redirect-scope1.py%3F#ref", "https://web-platform.test:8444/service-workers/service-worker/resources/navigation-redirect-scope1.py?#ref"] got ["https://web-platform.test:8444/service-workers/service-worker/resources/navigation-redirect-scope1.py?url=https%3A%2F%2Fweb-platform.test%3A8444%2Fservice-workers%2Fservice-worker%2Fresources%2Fnavigation-redirect-scope1.py%3F", "https://web-platform.test:8444/service-workers/service-worker/resources/navigation-redirect-scope1.py?"]
FAIL SW-fallbacked redirect to same-origin same-scope with different hash fragments. assert_object_equals: Intercepted URLs should match. property "0" expected ["https://web-platform.test:8444/service-workers/service-worker/resources/navigation-redirect-scope1.py?url=https%3A%2F%2Fweb-platform.test%3A8444%2Fservice-workers%2Fservice-worker%2Fresources%2Fnavigation-redirect-scope1.py%3F%23ref2#ref", "https://web-platform.test:8444/service-workers/service-worker/resources/navigation-redirect-scope1.py?#ref2"] got ["https://web-platform.test:8444/service-workers/service-worker/resources/navigation-redirect-scope1.py?url=https%3A%2F%2Fweb-platform.test%3A8444%2Fservice-workers%2Fservice-worker%2Fresources%2Fnavigation-redirect-scope1.py%3F%23ref2", "https://web-platform.test:8444/service-workers/service-worker/resources/navigation-redirect-scope1.py?"]
PASS SW-fallbacked redirect to same-origin other-scope.
PASS SW-fallbacked redirect to other-origin out-scope.
PASS SW-fallbacked redirect to other-origin in-scope.
PASS SW-generated redirect to same-origin out-scope.
FAIL SW-generated redirect to same-origin out-scope with a hash fragment. assert_object_equals: Intercepted URLs should match. property "0" expected ["https://web-platform.test:8444/service-workers/service-worker/resources/navigation-redirect-scope1.py?sw=gen&url=https%3A%2F%2Fweb-platform.test%3A8444%2Fservice-workers%2Fservice-worker%2Fresources%2Fnavigation-redirect-out-scope.py%3F#ref"] got ["https://web-platform.test:8444/service-workers/service-worker/resources/navigation-redirect-scope1.py?sw=gen&url=https%3A%2F%2Fweb-platform.test%3A8444%2Fservice-workers%2Fservice-worker%2Fresources%2Fnavigation-redirect-out-scope.py%3F"]
FAIL SW-generated redirect to same-origin out-scope with different hash fragments. assert_object_equals: Intercepted URLs should match. property "0" expected ["https://web-platform.test:8444/service-workers/service-worker/resources/navigation-redirect-scope1.py?sw=gen&url=https%3A%2F%2Fweb-platform.test%3A8444%2Fservice-workers%2Fservice-worker%2Fresources%2Fnavigation-redirect-out-scope.py%3F%23ref2#ref"] got ["https://web-platform.test:8444/service-workers/service-worker/resources/navigation-redirect-scope1.py?sw=gen&url=https%3A%2F%2Fweb-platform.test%3A8444%2Fservice-workers%2Fservice-worker%2Fresources%2Fnavigation-redirect-out-scope.py%3F%23ref2"]
PASS SW-generated redirect to same-origin same-scope.
PASS SW-generated redirect to same-origin other-scope.
PASS SW-generated redirect to other-origin out-scope.
PASS SW-generated redirect to other-origin in-scope.
PASS SW-fetched redirect to same-origin out-scope.
PASS SW-fetched redirect to same-origin same-scope.
PASS SW-fetched redirect to same-origin other-scope.
PASS SW-fetched redirect to other-origin out-scope.
PASS SW-fetched redirect to other-origin in-scope.
PASS Redirect to same-origin out-scope with opaque redirect response.
PASS Redirect to same-origin same-scope with opaque redirect response.
PASS Redirect to same-origin other-scope with opaque redirect response.
PASS Redirect to other-origin out-scope with opaque redirect response.
PASS Redirect to other-origin in-scope with opaque redirect response.
PASS No location redirect response.
PASS Redirect to same-origin out-scope with opaque redirect response which is passed through Cache.
PASS Redirect to same-origin same-scope with opaque redirect response which is passed through Cache.
PASS Redirect to same-origin other-scope with opaque redirect response which is passed through Cache.
PASS Redirect to other-origin out-scope with opaque redirect response which is passed through Cache.
PASS Redirect to other-origin in-scope with opaque redirect response which is passed through Cache.
PASS No location redirect response via Cache.
PASS clean up global state
Harness: the test ran to completion.

