<!doctype html> <meta charset="utf-8"> <title> Async Clipboard write ([text/plain ClipboardItem]) -> readText 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> async function readWriteTest(textInput) { promise_test(async t => { await test_driver.set_permission({name: 'clipboard-read'}, 'granted'); await test_driver.set_permission({name: 'clipboard-write'}, 'granted'); const blobInput = new Blob([textInput], {type: 'text/plain'}); const clipboardItem = new ClipboardItem({'text/plain': blobInput}); await waitForUserActivation(); await navigator.clipboard.write([clipboardItem]); await waitForUserActivation(); const textOutput = await navigator.clipboard.readText(); assert_equals(textOutput, textInput); }, 'Verify write and read clipboard given text: ' + textInput); } readWriteTest('Clipboard write ([text/plain ClipboardItem) -> read text test'); readWriteTest('non-Latin1 text encoding test データ'); </script>