diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:22:09 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:22:09 +0000 |
commit | 43a97878ce14b72f0981164f87f2e35e14151312 (patch) | |
tree | 620249daf56c0258faa40cbdcf9cfba06de2a846 /testing/web-platform/tests/html/capability-delegation/delegation-sender-checks.tentative.html | |
parent | Initial commit. (diff) | |
download | firefox-43a97878ce14b72f0981164f87f2e35e14151312.tar.xz firefox-43a97878ce14b72f0981164f87f2e35e14151312.zip |
Adding upstream version 110.0.1.upstream/110.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/html/capability-delegation/delegation-sender-checks.tentative.html')
-rw-r--r-- | testing/web-platform/tests/html/capability-delegation/delegation-sender-checks.tentative.html | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/capability-delegation/delegation-sender-checks.tentative.html b/testing/web-platform/tests/html/capability-delegation/delegation-sender-checks.tentative.html new file mode 100644 index 0000000000..4fa8a2d433 --- /dev/null +++ b/testing/web-platform/tests/html/capability-delegation/delegation-sender-checks.tentative.html @@ -0,0 +1,60 @@ +!DOCTYPE html> +<!-- + Tentative due to: + https://github.com/WICG/capability-delegation +--> +<title>Capability Delegation sender checks</title> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/resources/testdriver.js"></script> +<script src="/resources/testdriver-actions.js"></script> +<script src="/resources/testdriver-vendor.js"></script> +<script src="resources/utils.js"></script> + +<div> + Verifies that capability delegation related error checks in <a + href="https://wicg.github.io/capability-delegation/spec.html#monkey-patch-to-html-initiating-delegation">HTML + postMessage algorithm</a> are enforced correctly. +</div> + +<iframe width="300px" height="50px"></iframe> + +<script> + const frame = frames[0]; + const message = "any_message"; + const activate = false; + + let capability_to_delegate; + + promise_setup(async () => { + capability_to_delegate = await findOneCapabilitySupportingDelegation(); + assert_true(!!capability_to_delegate, "The user agent supports delegating at least one capability"); + }); + + promise_test(async () => { + try { + await postCapabilityDelegationMessage(frame, message, "/", "blah", activate); + assert_unreached(); + } catch (exception) { + assert_equals(exception.name, "NotSupportedError"); + } + }, "Delegating an unsupported capability throws an exception"); + + promise_test(async () => { + try { + await postCapabilityDelegationMessage(frame, message, "*", capability_to_delegate, activate); + assert_unreached(); + } catch (exception) { + assert_equals(exception.name, "NotAllowedError"); + } + }, "Delegating to targetOrigin='*' throws an exception"); + + promise_test(async () => { + try { + await postCapabilityDelegationMessage(frame, message, "/", capability_to_delegate, activate); + assert_unreached(); + } catch (exception) { + assert_equals(exception.name, "NotAllowedError"); + } + }, "Delegating without user activation throws an exception"); +</script> |