| <!doctype html> |
| <title>Test creation of MediaStreamTrackGenerator in a worker</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script> |
| 'use strict'; |
| |
| function initWorker(){ |
| const worker = new Worker('dedicated-worker.js'); |
| const result = new Promise((resolve, reject) => { |
| worker.onmessage = (e) => { |
| if (e.data.result === 'Failure') { |
| reject('Failed with error ' + e.data.error); |
| } else { |
| resolve(); |
| } |
| }; |
| }); |
| return [worker,result]; |
| } |
| |
| promise_test(async t => { |
| const [worker,result] = initWorker(); |
| worker.postMessage({msg: 'Hello there'}); |
| return result; |
| }, 'A worker is able to initialize a MediaStreamTrackGenerator without crashing'); |
| |
| promise_test(async t => { |
| const [worker,result] = initWorker(); |
| worker.postMessage({enable: true}); |
| return result; |
| }, 'A worker is able to enable a MediaStreamTrackGenerator without crashing'); |
| |
| promise_test(async t => { |
| const [worker,result] = initWorker(); |
| worker.postMessage({enable: false}); |
| return result; |
| }, 'A worker is able to disable a MediaStreamTrackGenerator without crashing'); |
| </script> |