<!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>
promise_test(async (t) => {
  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>
Note: This is a manual test because it writes/reads to the shared system
clipboard and thus cannot be run async with other tests that might interact
with the clipboard.
