diff options
Diffstat (limited to 'dom/webgpu/mochitest/test_error_scope.html')
-rw-r--r-- | dom/webgpu/mochitest/test_error_scope.html | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/dom/webgpu/mochitest/test_error_scope.html b/dom/webgpu/mochitest/test_error_scope.html new file mode 100644 index 0000000000..c59996d39e --- /dev/null +++ b/dom/webgpu/mochitest/test_error_scope.html @@ -0,0 +1,38 @@ +<!DOCTYPE HTML> +<html> +<head> +<meta charset='utf-8'> +<script src="/tests/SimpleTest/SimpleTest.js"></script> +<link rel="stylesheet" href="/tests/SimpleTest/test.css"> +</head> +<body> +<script> + +ok(SpecialPowers.getBoolPref('dom.webgpu.enabled'), 'Pref should be enabled.'); + +const func = async function() { + const adapter = await navigator.gpu.requestAdapter(); + const device = await adapter.requestDevice(); + + device.pushErrorScope("validation"); + const buffer = device.createBuffer({ size:0, usage: 0 }); + const error = await device.popErrorScope(); + + isnot(error, null) + + try { + await device.popErrorScope(); + ok(false, "Should have thrown") + } catch (ex) { + ok(ex.name == 'OperationError', "Should throw an OperationError") + } +}; + +SimpleTest.waitForExplicitFinish(); +func() + .catch((e) => ok(false, "Unhandled exception " + e)) + .finally(() => SimpleTest.finish()); + +</script> +</body> +</html> |