blob: 3b1350b5d93c8f2c1a04f3f5093ca58832fc066b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
import { assert } from '../../../common/util/util.js';
import { takeScreenshotDelayed } from '../../../common/util/wpt_reftest_wait.js';
interface GPURefTest {
readonly device: GPUDevice;
readonly queue: GPUQueue;
}
export function runRefTest(fn: (t: GPURefTest) => Promise<void>): void {
void (async () => {
assert(
typeof navigator !== 'undefined' && navigator.gpu !== undefined,
'No WebGPU implementation found'
);
const adapter = await navigator.gpu.requestAdapter();
assert(adapter !== null);
const device = await adapter.requestDevice();
assert(device !== null);
const queue = device.queue;
await fn({ device, queue });
takeScreenshotDelayed(50);
})();
}
|