diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
commit | 26a029d407be480d791972afb5975cf62c9360a6 (patch) | |
tree | f435a8308119effd964b339f76abb83a57c29483 /dom/tests/mochitest/general/test_clipboard_disallowed.html | |
parent | Initial commit. (diff) | |
download | firefox-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 'dom/tests/mochitest/general/test_clipboard_disallowed.html')
-rw-r--r-- | dom/tests/mochitest/general/test_clipboard_disallowed.html | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/dom/tests/mochitest/general/test_clipboard_disallowed.html b/dom/tests/mochitest/general/test_clipboard_disallowed.html new file mode 100644 index 0000000000..ce331ee253 --- /dev/null +++ b/dom/tests/mochitest/general/test_clipboard_disallowed.html @@ -0,0 +1,69 @@ +<!DOCTYPE HTML> +<html> +<head> + <title>Test for Clipboard Events</title> + <script type="text/javascript" src="/MochiKit/MochiKit.js"></script> + <script src="/tests/SimpleTest/SimpleTest.js"></script> + <script src="/tests/SimpleTest/EventUtils.js"></script> + <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> +</head> +<body> +<p id="display"></p> +<input id="input" value="INPUT TEXT" oncopy="checkAllowed(event)"> + +<script> +function doTest() +{ + document.getElementById("input").focus(); + synthesizeKey("c", {accelKey: 1}); +} + +function checkAllowed(event) +{ + let clipboardData = event.clipboardData; + + let disallowedTypes = [ + "application/x-moz-file", + "application/x-moz-file-promise", + "application/x-moz-file-promise-url", + "application/x-moz-file-promise-dest-filename", + "application/x-moz-file-promise-dir", + "application/x-moz-nativeimage", + "text/x-moz-requestmime", + "text/x-moz-place", + "text/x-moz-place-container", + "text/x-moz-some-made-up-type", + ]; + + for (let type of disallowedTypes) { + let exception; + try { + clipboardData.setData(type, "Test"); + } catch(ex) { + exception = ex; + } + is(String(exception).indexOf("SecurityError"), 0, "Cannot set " + type); + } + + let allowedTypes = [ + "application/something", + "x-moz-/something", + "something/ax-moz-", + ]; + + for (let type of allowedTypes) { + let exception = null; + try { + clipboardData.setData(type, "This is data"); + } catch(ex) { + exception = ex; + } + is(exception, null, "Can set " + type); + } + + SimpleTest.finish(); +} + +SimpleTest.waitForExplicitFinish(); +SimpleTest.waitForFocus(doTest); +</script> |