| <!DOCTYPE html> |
| <meta charset="utf-8"> |
| <title>Async Clipboard write (dt/text) -> read (dt/text) tests</title> |
| <script src="../../resources/testharness.js"></script> |
| <script src="../../resources/testharnessreport.js"></script> |
| <script src="../../http/tests/resources/permissions-helper.js"></script> |
| <script> |
| promise_test(async t => { |
| await PermissionsHelper.setPermission('clipboard-read', 'granted'); |
| await PermissionsHelper.setPermission('clipboard-write', 'granted'); |
| |
| const input = "Clipboard write (dt/text) -> read (dt/text) test data"; |
| const dt = new DataTransfer(); |
| dt.items.add(input, "text/plain"); |
| |
| await navigator.clipboard.write(dt); |
| const output = await navigator.clipboard.read(); |
| |
| assert_equals(output.items.length, 1); |
| const result_promise = new Promise(resolve => { |
| output.items[0].getAsString(resolve); |
| }); |
| const string_output = await result_promise; |
| assert_equals(string_output, input); |
| }, "Verify write and read clipboard (DataTransfer/text)"); |
| </script> |