summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/workers/Worker-structure-message.html
blob: 9eb12dc6c55bc8252ee92746259ef10f4b9a08be (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<!DOCTYPE html>
<title>Test that pages and workers can send Structure Message to one another.</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script>
promise_test(t => {
  let worker;

  return new Promise(resolve => {
    worker = new Worker("support/Worker-structure-message.js");
    worker.onmessage = resolve;
    worker.postMessage({
      operation: 'find-edges',
      input: new ArrayBuffer(20),
      threshold: 0.6
    });
  }).then(evt => {
    assert_false(evt.data.startsWith('FAIL'));
    return new Promise(resolve => worker.onmessage = resolve);
  }).then(evt => {
    assert_equals(evt.data.operation, 'find-edges');
    assert_true(ArrayBuffer.prototype.isPrototypeOf(evt.data.input));
    assert_equals(evt.data.input.byteLength, 20);
    assert_equals(evt.data.threshold, 0.6);
  });
}, 'Tests sending structure message to/from worker.');
</script>