blob: d904cd58543ff02c280d3f43267b8d54cad7882b [file] [log] [blame]
<!DOCTYPE html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<body>
<script>
promise_test(async t => {
assert_precondition("HTMLPortalElement" in self);
let portal = document.createElement('portal');
document.body.appendChild(portal);
t.add_cleanup(() => { document.body.removeChild(portal); });
await promise_rejects_dom(t, 'InvalidStateError', portal.activate());
}, "A portal that has never been navigated cannot be activated");
promise_test(async t => {
assert_precondition("HTMLPortalElement" in self);
let portal = document.createElement('portal');
document.body.appendChild(portal);
t.add_cleanup(() => { document.body.removeChild(portal); });
// We use a status of 204 (No Content) as that couldn't possibly mature.
portal.src = "resources/204-no-content.asis";
await promise_rejects_dom(t, 'InvalidStateError', portal.activate());
}, "A portal that has not completed an initial navigation cannot be activated");
</script>
</body>