summaryrefslogtreecommitdiff
path: root/cli/tests
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tests')
-rw-r--r--cli/tests/testdata/webgpu_computepass_shader.wgsl5
-rw-r--r--cli/tests/unit/webgpu_test.ts5
2 files changed, 7 insertions, 3 deletions
diff --git a/cli/tests/testdata/webgpu_computepass_shader.wgsl b/cli/tests/testdata/webgpu_computepass_shader.wgsl
index 9fc79eeba..df541aff5 100644
--- a/cli/tests/testdata/webgpu_computepass_shader.wgsl
+++ b/cli/tests/testdata/webgpu_computepass_shader.wgsl
@@ -1,9 +1,10 @@
-[[block]]
struct PrimeIndices {
data: [[stride(4)]] array<u32>;
}; // this is used as both input and output for convenience
+
[[group(0), binding(0)]]
var<storage, read_write> v_indices: PrimeIndices;
+
// The Collatz Conjecture states that for any integer n:
// If n is even, n = n/2
// If n is odd, n = 3n+1
@@ -25,12 +26,14 @@ fn collatz_iterations(n_base: u32) -> u32{
if (n >= 1431655765u) { // 0x55555555u
return 4294967295u; // 0xffffffffu
}
+
n = 3u * n + 1u;
}
i = i + 1u;
}
return i;
}
+
[[stage(compute), workgroup_size(1)]]
fn main([[builtin(global_invocation_id)]] global_id: vec3<u32>) {
v_indices.data[global_id.x] = collatz_iterations(v_indices.data[global_id.x]);
diff --git a/cli/tests/unit/webgpu_test.ts b/cli/tests/unit/webgpu_test.ts
index 1d54d7b02..b1b3b1ecb 100644
--- a/cli/tests/unit/webgpu_test.ts
+++ b/cli/tests/unit/webgpu_test.ts
@@ -33,13 +33,14 @@ Deno.test({
const stagingBuffer = device.createBuffer({
size: size,
- usage: 1 | 8,
+ usage: GPUBufferUsage.MAP_READ | GPUBufferUsage.COPY_DST,
});
const storageBuffer = device.createBuffer({
label: "Storage Buffer",
size: size,
- usage: 0x80 | 8 | 4,
+ usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_DST |
+ GPUBufferUsage.COPY_SRC,
mappedAtCreation: true,
});