<!DOCTYPE html>
<meta charset="utf-8">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="resources/helpers.js"></script>
<script>
'use strict';
promise_test(t => {
const orig = createOriginalReadableStream();
const w = new SharedWorker('resources/receiving-shared-worker.js');
const promise = checkTestResults(w.port);
w.port.postMessage(orig, [orig]);
assert_true(orig.locked, 'the original stream should be locked');
return promise;
}, 'worker.postMessage should be able to transfer a ReadableStream');
promise_test(t => {
const w = new SharedWorker('resources/sending-shared-worker.js');
const promise = testMessageEventOrErrorMessage(w.port);
w.port.start();
return promise;
}, 'postMessage in a worker should be able to transfer a ReadableStream');
</script>