Bug 1935611 - Fix libyuv/libpng link failed for loongarch64. r=glandium,tnikkel,ng
[gecko.git] / dom / webgpu / mochitest / test_queue_write.html
blobbc536b82a1b2614a57900708fddbbd719e44b54d
1 <!doctype html>
2 <html>
3 <head>
4 <meta charset="utf-8" />
5 <script src="/tests/SimpleTest/SimpleTest.js"></script>
6 <link rel="stylesheet" href="/tests/SimpleTest/test.css" />
7 </head>
8 <body>
9 <script>
10 ok(
11 SpecialPowers.getBoolPref("dom.webgpu.enabled"),
12 "Pref should be enabled."
15 const func = async function () {
16 const adapter = await navigator.gpu.requestAdapter();
17 const device = await adapter.requestDevice();
18 const buffer = device.createBuffer({
19 size: 16,
20 usage:
21 GPUBufferUsage.COPY_DST |
22 GPUBufferUsage.COPY_SRC |
23 GPUBufferUsage.VERTEX,
24 });
25 const arrayBuf = new ArrayBuffer(16);
26 new Int32Array(arrayBuf).fill(5);
27 device.queue.writeBuffer(buffer, 0, arrayBuf, 0);
28 const texture = device.createTexture({
29 size: [2, 2, 1],
30 dimension: "2d",
31 format: "rgba8unorm",
32 usage: GPUTextureUsage.COPY_DST | GPUTextureUsage.COPY_SRC,
33 });
34 device.queue.writeTexture(
35 { texture },
36 arrayBuf,
37 { bytesPerRow: 8 },
38 [2, 2, 1]
40 // this isn't a process check, we need to read back the contents and verify the writes happened
41 ok(device !== undefined, "");
44 SimpleTest.waitForExplicitFinish();
45 func()
46 .catch(e => ok(false, "Unhandled exception " + e))
47 .finally(() => SimpleTest.finish());
48 </script>
49 </body>
50 </html>