Files
sousa-gecko/testing/web-platform/tests/fetch/local-network-access/webtransport.tentative.https.html
T
Hubert Chao 003bc890ae Bug 2020864 [wpt PR 58238] - [LNA] add LNA WebTransport WPT, a=testonly
Automatic update from web-platform-tests
[LNA] add LNA WebTransport WPT

Add an initial set of LNA WebTransport WPTs. This only tests public -> loopback and local -> loopback because there are only loopback webtransport servers set up (see https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/external/wpt/config.tmpl.json and https://source.chromium.org/chromium/chromium/src/+/main:third_party/wpt_tools/wpt/tools/wptrunner/wptrunner/browsers/chrome.py;l=164-168;drc=aa6d692165ec004179933677be7bccbd0b454435)

Bug: 421216834,406991278
Change-Id: I2117d7f74687a0dd8917d2d55de0da1cc133caaf
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7628482
Reviewed-by: Chris Thompson <cthomp@chromium.org>
Commit-Queue: Hubert Chao <hchao@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1593638}

--

wpt-commits: a0458297eac13874cbff4b9b62c73a6df58c9c1c
wpt-pr: 58238
2026-03-10 15:44:59 +00:00

89 lines
2.8 KiB
HTML

<!DOCTYPE html>
<meta charset="utf-8">
<title>LNA WebTransport tests </title>
<body>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<script src="resources/support.sub.js"></script>
<script>
"use strict";
promise_test(t => {
const sourceUrl = resolveUrl("resources/webtransport.html",
sourceResolveOptions({ server: Server.HTTPS_PUBLIC }));
function checkResult(evt) {
assert_equals(evt.data, WebTransportTestResult.SUCCESS);
t.done();
}
const promise = new Promise((resolve) => {
window.addEventListener('message', resolve, {once: true});
}).then(checkResult);
const popup = window.open(sourceUrl);
t.add_cleanup(() => popup.close());
return promise;
}, 'LNA Public to loopback webtransport with permission');
promise_test(t => {
const sourceUrl = resolveUrl("resources/webtransport.html?permission=denied",
sourceResolveOptions({ server: Server.HTTPS_PUBLIC }));
function checkResult(evt) {
assert_equals(evt.data, WebTransportTestResult.FAILURE);
t.done();
}
const promise = new Promise((resolve) => {
window.addEventListener('message', resolve, {once: true});
}).then(checkResult);
const popup = window.open(sourceUrl);
t.add_cleanup(() => popup.close());
return promise;
}, 'LNA Public to loopback webtransport without permission');
promise_test(t => {
const sourceUrl = resolveUrl("resources/webtransport.html",
sourceResolveOptions({ server: Server.HTTPS_LOCAL }));
function checkResult(evt) {
assert_equals(evt.data, WebTransportTestResult.SUCCESS);
t.done();
}
const promise = new Promise((resolve) => {
window.addEventListener('message', resolve, {once: true});
}).then(checkResult);
const popup = window.open(sourceUrl);
t.add_cleanup(() => popup.close());
return promise;
}, 'LNA local to loopback webtransport with permission');
promise_test(t => {
const sourceUrl = resolveUrl("resources/webtransport.html?permission=denied",
sourceResolveOptions({ server: Server.HTTPS_LOCAL }));
function checkResult(evt) {
// Permission not needed for local -> loopback
assert_equals(evt.data, WebTransportTestResult.SUCCESS);
t.done();
}
const promise = new Promise((resolve) => {
window.addEventListener('message', resolve, {once: true});
}).then(checkResult);
const popup = window.open(sourceUrl);
t.add_cleanup(() => popup.close());
return promise;
}, 'LNA local to loopback webtransport without permission');
</script>
</body>