diff options
Diffstat (limited to 'dom/webgpu/mochitest/test_error_scope.html')
-rw-r--r-- | dom/webgpu/mochitest/test_error_scope.html | 39 |
1 files changed, 39 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..2bed5b937b --- /dev/null +++ b/dom/webgpu/mochitest/test_error_scope.html @@ -0,0 +1,39 @@ +<!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> |