FileSystemBaseHandle-postMessage-workers.js (1397B)
1 'use strict'; 2 3 // This script depends on the following scripts: 4 // /fs/resources/messaging-helpers.js 5 // /fs/resources/messaging-blob-helpers.js 6 // /fs/resources/messaging-serialize-helpers.js 7 // /fs/resources/test-helpers.js 8 // /service-workers/service-worker/resources/test-helpers.sub.js 9 10 directory_test(async (t, root_dir) => { 11 const dedicated_worker = 12 create_dedicated_worker(t, kDedicatedWorkerMessageTarget); 13 await do_post_message_test( 14 t, root_dir, /*receiver=*/ dedicated_worker, 15 /*target=*/ dedicated_worker); 16 }, 'Send and receive messages using a dedicated worker.'); 17 18 directory_test(async (t, root_dir) => { 19 const scope = `${kServiceWorkerMessageTarget}?post-message-with-file-handle`; 20 const registration = 21 await create_service_worker(t, kServiceWorkerMessageTarget, scope); 22 await do_post_message_test( 23 t, root_dir, /*receiver=*/ navigator.serviceWorker, 24 /*target=*/ registration.installing); 25 }, 'Send and receive messages using a service worker.'); 26 27 if (self.SharedWorker !== undefined) { 28 directory_test(async (t, root_dir) => { 29 const shared_worker = new SharedWorker(kSharedWorkerMessageTarget); 30 shared_worker.port.start(); 31 await do_post_message_test( 32 t, root_dir, /*receiver=*/ shared_worker.port, 33 /*target=*/ shared_worker.port); 34 }, 'Send and receive messages using a shared worker.'); 35 }