<!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_js(TypeError,
                   () => { postMessage('', '*', channel) },
                   'Old-style WebIDL arrays must throw a type error');
}, "Old-style array objects");
</script>

