| <!doctype html> |
| <title>message channel as ports</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <div id=log></div> |
| <script> |
| async_test(function(t) { |
| var channel = new MessageChannel(); |
| postMessage('', '*', [channel.port1, channel.port2]); |
| onmessage = t.step_func(function(e) { |
| assert_equals(e.ports.length, 2); |
| t.done(); |
| }); |
| }, "MessageChannel's ports as MessagePort objects"); |
| |
| test(() => { |
| var channel = new MessageChannel(); |
| channel[0] = channel.port1; |
| channel[1] = channel.port2; |
| channel.length = 2; |
| assert_throws(new TypeError(), |
| () => { postMessage('', '*', channel) }, |
| 'Old-style WebIDL arrays must throw a type error'); |
| }, "Old-style array objects"); |
| </script> |
| |