<!--
onconnect = function(e) {
  e.ports[0].postMessage(['FAIL', self.name]);
}
/*
-->
<!doctype html>
<title>null as arguments</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<script>
(async_test()).step(function() {
  var worker = new SharedWorker(null, null);
  worker.port.addEventListener('message', this.step_func(function(e) {
    assert_equals(e.data[0], 'null', 'first arg');
    assert_equals(e.data[1], 'null', 'second arg');
    this.done();
  }), false);
  worker.port.start();
});
</script>
<!--
*/
//-->