summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker.js
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker.js')
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker.js20
1 files changed, 18 insertions, 2 deletions
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker.js
index 8eff1ae8cd..f90a4db02e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker.js
@@ -1,6 +1,10 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/import { getGPU, setDefaultRequestAdapterOptions } from '../../../common/util/navigator_gpu.js';import { assert, objectEquals, iterRange } from '../../../common/util/util.js';
+// Should be WorkerGlobalScope, but importing lib "webworker" conflicts with lib "dom".
+
+
+
async function basicTest() {
const adapter = await getGPU(null).requestAdapter();
assert(adapter !== null, 'Failed to get adapter.');
@@ -68,7 +72,7 @@ async function basicTest() {
device.destroy();
}
-self.onmessage = async (ev) => {
+async function reportTestResults(ev) {
const defaultRequestAdapterOptions =
ev.data.defaultRequestAdapterOptions;
setDefaultRequestAdapterOptions(defaultRequestAdapterOptions);
@@ -79,5 +83,17 @@ self.onmessage = async (ev) => {
} catch (err) {
error = err.toString();
}
- self.postMessage({ error });
+ this.postMessage({ error });
+}
+
+self.onmessage = (ev) => {
+ void reportTestResults.call(ev.source || self, ev);
+};
+
+self.onconnect = (event) => {
+ const port = event.ports[0];
+
+ port.onmessage = (ev) => {
+ void reportTestResults.call(port, ev);
+ };
}; \ No newline at end of file