зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1706588 [wpt PR 28617] - This CL adds functionality that correctly handles network error of Subresource Web Bundles., a=testonly
Automatic update from web-platform-tests This CL adds functionality that correctly handles network error of (#28617) Subresource Web Bundles. The problem is: when Web Bundle fetching fails due to a network error, Subresource fetch doesn't fail forever. One such case (subresource-loading-cors-error test) was timing out previously but passes successfully with this change. This CL also adds 2 WPT tests: 1. subresource-loading-network-error.https.tentative.sub.html 2. subresource-loading-web-bundle-fetch-failed.https.tentative.html Test #1 is a scenario with a different network error than the CORS one, but with the same issue of subresource fetching timing out without the change. It passes successfully after the change. Test #2 is a scenario with a Web bundle not found error, which is not directly influenced by the code added in this CL, but it expands the test coverage which was found to be lacking the error cases before. Bug: 1168449 Change-Id: Ia3abb967e36274becc86e317bc51b1272d3ae679 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2826001 Reviewed-by: Tsuyoshi Horo <horo@chromium.org> Reviewed-by: Hayato Ito <hayato@chromium.org> Reviewed-by: Kinuko Yasuda <kinuko@chromium.org> Commit-Queue: Miras Myrzakerey <myrzakereyms@google.com> Cr-Commit-Position: refs/heads/master@{#875532} Co-authored-by: Miras Myrzakerey <myrzakereyms@google.com> -- wpt-commits: 2f52688ff3df7421cafb9d33091cf544fe2b8a9a wpt-pr: 28617
This commit is contained in:
Родитель
b5ed7d3425
Коммит
e340ca35e3
|
@ -0,0 +1,31 @@
|
|||
<!DOCTYPE html>
|
||||
<title>Web Bundle fetching failed due to a network error</title>
|
||||
<link rel="help" href="https://github.com/WICG/webpackage/blob/main/explainers/subresource-loading.md" />
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="../resources/test-helpers.js"></script>
|
||||
|
||||
<body>
|
||||
<!--
|
||||
This test uses a non-existing WebBundle from a non-existent host, which makes
|
||||
Web Bundle fetching fail due to a network error. The intent of is to chech if
|
||||
failing to fetch a WebBundle also makes subresource fetch requests fail.
|
||||
-->
|
||||
<script>
|
||||
promise_test(async () => {
|
||||
const prefix =
|
||||
"https://{{hosts[][nonexistent]}}/";
|
||||
const resources = [
|
||||
prefix + "resource.js",
|
||||
];
|
||||
const link = await addLinkAndWaitForError(
|
||||
prefix + "non-existing.wbn",
|
||||
resources,
|
||||
undefined
|
||||
);
|
||||
|
||||
// Can not fetch a subresource because Web Bundle fetch failed.
|
||||
await fetchAndWaitForReject(prefix + "resource.js");
|
||||
}, "Subresource fetch requests for non-existing Web Bundle should fail.");
|
||||
</script>
|
||||
</body>
|
|
@ -0,0 +1,33 @@
|
|||
<!DOCTYPE html>
|
||||
<title>Web Bundle fetching failed due to not found error</title>
|
||||
<link rel="help" href="https://github.com/WICG/webpackage/blob/main/explainers/subresource-loading.md" />
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="../resources/test-helpers.js"></script>
|
||||
|
||||
<body>
|
||||
<!--
|
||||
This test uses a non-existing WebBundle,
|
||||
https://web-platform.test:8444/web-bundle/resources/wbn/cors/non-existing.wbn.
|
||||
|
||||
The intent of this test is to check if failing to fetch a WebBundle due to not
|
||||
found error also makes subresource fetch requests fail.
|
||||
-->
|
||||
<script>
|
||||
promise_test(async () => {
|
||||
const prefix =
|
||||
"https://web-platform.test:8444/web-bundle/resources/wbn/";
|
||||
const resources = [
|
||||
prefix + "resource.js",
|
||||
];
|
||||
const link = await addLinkAndWaitForError(
|
||||
prefix + "non-existing.wbn",
|
||||
resources,
|
||||
undefined
|
||||
);
|
||||
|
||||
// Can not fetch a subresource because Web Bundle fetch failed.
|
||||
await fetchAndWaitForReject(prefix + "resource.js");
|
||||
}, "Subresource fetch requests for non-existing Web Bundle should fail.");
|
||||
</script>
|
||||
</body>
|
Загрузка…
Ссылка в новой задаче