https://cs.chromium.org/chromium/src/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/scheme-blob-expected.txt https://cs.chromium.org/chromium/src/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/scheme-blob-other-https-expected.txt https://cs.chromium.org/chromium/src/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/scheme-blob-base-https-other-https-expected.txt Harness Error. harness_status.status = 1 , harness_status.message = 1 duplicate test name: "scheme-blob" This is the only "Harness Error"s under http/tests/fetch. According to livvielin@, this might be because we're not exposing createObjectURL to service workers. The WPT-version of blob: URL test https://codesearch.chromium.org/chromium/src/third_party/blink/web_tests/external/wpt/fetch/api/basic/scheme-blob.sub.any.js also uses createObjectURL() and thus can't be executed directly on SW. Should fetching blob: URL be able to be done on ServiceWorker (e.g. if we create blob: URL in the parent Document and pass the blob: URL to a ServiceWorker), in terms of spec and/or implementation? (I'm not sure) If so, we have to test fetch blob: URL from ServiceWorker somehow. Probably it wouldn't fit in the style of scheme-blob.html/scheme-blob.sub.any.js, so we'll need another custom test. If not, we can simply remove the scheme-blob.html and similar tests for ServiceWorker. Also if the coverage of external/wpt/fetch/api/basic/scheme-blob.sub.any.js is sufficient (i.e. covers all cases scheme-blob.html), then we can/should remove scheme-blob.html at all. (Note: the files are auto-generated by http/tests/fetch/generate.py so probably we should modify generator or remove script-tests/thorough/scheme-blob.js.)
mek: Should a service worker be able to fetch a blob:// URL (assuming a Document created it and told the service worker the URL)?
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d commit 7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d Author: Yutaka Hirano <yhirano@chromium.org> Date: Thu Dec 13 09:04:08 2018 Fix test name collision in http/tests/fetch/serviceworker Tests in http/tests/fetch/serviceworker calls service_worker_test with its script name. Unfortunately the name conflicts with WorkerTestEnvironment.prototype.next_default_text_name. If no tests exists in the script, the default name is used and that results in a "duplicate test name" error. Rename the test name from TESTNAME to TESTNAME-serviceworker. Bug: 914679 Change-Id: Id2e40cc222609bb01e354fa4aa24cfdbba267724 Reviewed-on: https://chromium-review.googlesource.com/c/1375179 Commit-Queue: Yutaka Hirano <yhirano@chromium.org> Reviewed-by: Matt Falkenhagen <falken@chromium.org> Cr-Commit-Position: refs/heads/master@{#616252} [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/script-tests/TEMPLATE-serviceworker.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/script-tests/thorough/TEMPLATE-serviceworker.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/block-mixed-content-base-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/block-mixed-content-nocors-base-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/body-mixin-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/body-mixin.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/cache-override-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/cache-override.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/fetch-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/fetch.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/filtered-response-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/filtered-response-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/filtered-response.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/headers-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/headers-guard-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/headers-guard.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/headers.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/referrer-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/referrer.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/request-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/request.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/response-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/response-content-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/response-content.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/response.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/stream-reader-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/stream-reader.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/access-control-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/access-control.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/auth-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/auth-nocors-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/auth-nocors-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/auth-nocors.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/auth-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/auth.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/cookie-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/cookie-nocors-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/cookie-nocors-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/cookie-nocors.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/cookie-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/cookie.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/cors-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/cors-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/cors-preflight-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/cors-preflight-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/cors-preflight.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/cors-preflight2-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/cors-preflight2-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/cors-preflight2.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/cors.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/nocors-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/nocors-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/nocors.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/redirect-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/redirect-credentials-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/redirect-credentials-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/redirect-credentials.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/redirect-loop-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/redirect-loop-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/redirect-loop.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/redirect-nocors-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/redirect-nocors-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/redirect-nocors.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/redirect-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/redirect-password-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/redirect-password-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/redirect-password.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/redirect.html [delete] https://crrev.com/984b25bd39bc130005802cbd1d1b357c6a80d4f0/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/scheme-blob-base-https-other-https-expected.txt [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/scheme-blob-base-https-other-https.html [delete] https://crrev.com/984b25bd39bc130005802cbd1d1b357c6a80d4f0/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/scheme-blob-expected.txt [delete] https://crrev.com/984b25bd39bc130005802cbd1d1b357c6a80d4f0/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/scheme-blob-other-https-expected.txt [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/scheme-blob-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/scheme-blob.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/scheme-data-base-https-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/scheme-data-other-https.html [modify] https://crrev.com/7fa1000f175eeb5e0ee75287ab8c69feb13fdd2d/third_party/blink/web_tests/http/tests/fetch/serviceworker/thorough/scheme-data.html
Oh, I see https://codesearch.chromium.org/chromium/src/third_party/blink/web_tests/http/tests/fetch/script-tests/thorough/scheme-blob.js checks whether createObjectURL is available and if not does nothing. So the test itself is working somehow correctly. Still there is a test coverage issue (blob: fetch is not tested on SW), but anyway the current test failures are gone.
Should we close this then?
Yes, let's. New tests should be added to WPT if there is lack of coverage there.
Comment 1 by falken@google.com
, Dec 13