1 This test checks the various use cases around sending multiple ports through Worker.postMessage
3 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
6 PASS worker.postMessage() threw exception TypeError: Failed to execute 'postMessage' on 'Worker': 1 argument required, but only 0 present..
7 PASS worker.postMessage("null port", [channel3.port1, null, channel3.port2]) threw exception TypeError: Failed to execute 'postMessage' on 'Worker': Value at index 1 is an untransferable 'null' value..
8 PASS worker.postMessage("notAPort", [channel3.port1, {}, channel3.port2]) threw exception TypeError: Failed to execute 'postMessage' on 'Worker': Value at index 1 does not have a transferable type..
9 PASS worker.postMessage("notAnArray", channel3.port1) threw exception TypeError: Failed to execute 'postMessage' on 'Worker': The 2nd argument is neither an array, nor does it have indexed properties..
10 PASS worker.postMessage("notASequence", [{length: 3}]) threw exception TypeError: Failed to execute 'postMessage' on 'Worker': Value at index 0 does not have a transferable type..
11 PASS successfullyParsed is true
14 PASS postMessage() threw exception: TypeError: Failed to execute 'postMessage' on 'DedicatedWorkerGlobalScope': 1 argument required, but only 0 present.
15 PASS event.ports is non-null and zero length when no port sent
16 PASS event.ports is non-null and zero length when empty array sent
17 PASS event.ports contains two ports when two ports sent
18 PASS event.ports contains two ports when two ports re-sent after error