| <!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> |