Files
ladybird/Tests/LibWeb/Text/input/Worker/Worker-postMessage-transfer.html
Shannon Booth 755b63132b LibWeb: Implement DedicatedWorkerGlobalScope postMessage(msg, transfer)
Unfortunately the added test (which passes locally) is skipped as it is
based off other Worker tests which are also skipped due to being flakey
in CI.
2024-10-28 22:56:39 +01:00

30 lines
972 B
HTML

<script src="../include.js"></script>
<script>
asyncTest((done) => {
const workerScript = `
self.onmessage = function(evt) {
const receivedBuffer = evt.data;
self.postMessage(receivedBuffer, [receivedBuffer]);
};
`;
const blob = new Blob([workerScript], { type: 'application/javascript' });
const workerScriptURL = URL.createObjectURL(blob);
const worker = new Worker(workerScriptURL);
worker.onmessage = function(evt) {
const bufTransferredBackFromWorker = evt.data;
const decoder = new TextDecoder();
println('Message received from worker: ' + decoder.decode(bufTransferredBackFromWorker));
done();
};
const encoder = new TextEncoder();
const message = encoder.encode("Hello, world");
const myBuf = message.buffer;
worker.postMessage(myBuf, [myBuf]);
});
</script>