Files
tubestation/testing/web-platform/tests/clipboard-apis/async-unsanitized-standard-html-read-fail.tentative.https.html
Kagami Sascha Rosylight e15246779e Bug 1875837 - Make clipboard-read/write permission optional in clipboard WPT r=webdriver-reviewers,dom-core,edgar,whimboo
Blink is the only engine supporting it, and thus it should not be the WPT requirement.

Some tests still need the testing pref, and for now this patch gives the pref for such failing tests without modifying them, for simplicity sake. Modification can happen separately.

Differential Revision: https://phabricator.services.mozilla.com/D201999
2024-03-27 17:38:18 +00:00

47 lines
1.7 KiB
HTML

<!doctype html>
<meta charset="utf-8">
<title>Async Clipboard unsanitized HTML read validation tests</title>
<link rel="help" href="https://w3c.github.io/clipboard-apis/#async-clipboard-api">
<body>Body needed for test_driver.click()</body>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<script src="resources/user-activation.js"></script>
<script>
'use strict';
promise_test(async t => {
await tryGrantReadPermission();
await waitForUserActivation();
await promise_rejects_dom(t, 'NotAllowedError',
navigator.clipboard.read({unsanitized: ['text/html', 'text/plain']}));
}, 'navigator.clipboard.read() fails for multiple unsanitized formats requested.');
promise_test(async t => {
await tryGrantReadPermission();
await waitForUserActivation();
await promise_rejects_dom(t, 'NotAllowedError',
navigator.clipboard.read({unsanitized: ['text/plain']}));
}, 'navigator.clipboard.read() fails for unsanitized text/plain requested.');
promise_test(async t => {
await tryGrantReadPermission();
await waitForUserActivation();
await promise_rejects_dom(t, 'NotAllowedError',
navigator.clipboard.read({unsanitized: ['image/png']}));
}, 'navigator.clipboard.read() fails for unsanitized image/png requested.');
promise_test(async t => {
await tryGrantReadPermission();
await waitForUserActivation();
await promise_rejects_dom(t, 'NotAllowedError',
navigator.clipboard.read({unsanitized: ['image/svg+xml']}));
}, 'navigator.clipboard.read() fails for unsanitized image/svg+xml requested.');
</script>