summaryrefslogtreecommitdiffstats
path: root/dom/webgpu/tests/cts/checkout/src/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupSizeZ.spec.ts
diff options
context:
space:
mode:
Diffstat (limited to 'dom/webgpu/tests/cts/checkout/src/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupSizeZ.spec.ts')
-rw-r--r--dom/webgpu/tests/cts/checkout/src/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupSizeZ.spec.ts20
1 files changed, 20 insertions, 0 deletions
diff --git a/dom/webgpu/tests/cts/checkout/src/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupSizeZ.spec.ts b/dom/webgpu/tests/cts/checkout/src/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupSizeZ.spec.ts
new file mode 100644
index 0000000000..9a199f4cd3
--- /dev/null
+++ b/dom/webgpu/tests/cts/checkout/src/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupSizeZ.spec.ts
@@ -0,0 +1,20 @@
+import { kMaximumLimitBaseParams, makeLimitTestGroup } from './limit_utils.js';
+
+const limit = 'maxComputeWorkgroupSizeZ';
+export const { g, description } = makeLimitTestGroup(limit);
+
+g.test('createComputePipeline,at_over')
+ .desc(`Test using createComputePipeline(Async) at and over ${limit} limit`)
+ .params(kMaximumLimitBaseParams.combine('async', [false, true] as const))
+ .fn(async t => {
+ const { limitTest, testValueName, async } = t.params;
+ await t.testMaxComputeWorkgroupSize(limitTest, testValueName, async, 'Z');
+ });
+
+g.test('validate,maxComputeInvocationsPerWorkgroup')
+ .desc(`Test that ${limit} <= maxComputeInvocationsPerWorkgroup`)
+ .fn(t => {
+ const { adapter, defaultLimit, adapterLimit } = t;
+ t.expect(defaultLimit <= t.getDefaultLimit('maxComputeInvocationsPerWorkgroup'));
+ t.expect(adapterLimit <= adapter.limits.maxComputeInvocationsPerWorkgroup);
+ });