blob: 5fcb1ec243f3d0d8ccd6f52c2d5d2869a0197e7e [file] [log] [blame]
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Request signal</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
</head>
<body>
<script>
test(() => {
new Request("/", {signal: null});
new Request("/", {signal: undefined});
assert_throws(new TypeError, () => { new Request("/", {signal: "my signal"}) });
}, "Request from URL with signal");
test(() => {
const controller = new AbortController();
const request = new Request("/", {signal : controller.signal});
controller.abort();
const r1 = new Request(request, {signal: undefined});
assert_true(r1.signal.aborted, "r1 signal is aborted");
const r2 = new Request(request, {signal: null});
assert_false(r2.signal.aborted, "r2 signal is not aborted");
assert_throws(new TypeError, () => { new Request(request, {signal: "my signal"}) });
}, "Request from request with signal");
</script>
</body>
</html>