summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/html/capability-delegation/delegation-sender-checks.tentative.html
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
commit26a029d407be480d791972afb5975cf62c9360a6 (patch)
treef435a8308119effd964b339f76abb83a57c29483 /testing/web-platform/tests/html/capability-delegation/delegation-sender-checks.tentative.html
parentInitial commit. (diff)
downloadfirefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz
firefox-26a029d407be480d791972afb5975cf62c9360a6.zip
Adding upstream version 124.0.1.upstream/124.0.1
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.html60
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>