gecko-dev/dom/webgpu/mochitest/test_submit_render_empty.html
Andrew Osmond 0b303e481f Bug 1760810 - Mark WebGPU tests as failing on Ubuntu 18.04 and Windows 7. r=gfx-reviewers,lsalzman
The WebGPU tests are actually failing silently on Ubuntu 18.04 and
Windows 7. This is because we catch the exception thrown in the async
function wrapping the test and then discard it at the end. Now if we
catch any errors, we fail the test, which requires us to mark these
tests as failing on some platforms.

Differential Revision: https://phabricator.services.mozilla.com/D141793
2022-03-23 12:43:00 +00:00

54 lines
1.4 KiB
HTML

<!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();
const swapChainFormat = "rgba8unorm";
const bundleEncoder = device.createRenderBundleEncoder({
colorFormats: [swapChainFormat],
});
const bundle = bundleEncoder.finish({});
const texture = device.createTexture({
size: { width: 100, height: 100, depth: 1 },
format: swapChainFormat,
usage: GPUTextureUsage.RENDER_ATTACHMENT,
});
const view = texture.createView();
const encoder = device.createCommandEncoder();
const pass = encoder.beginRenderPass({
colorAttachments: [{
view,
loadValue: { r: 0, g: 0, b: 0, a: 0 },
storeOp: "store",
}],
});
pass.executeBundles([bundle]);
pass.endPass();
const command_buffer = encoder.finish();
device.queue.submit([command_buffer]);
ok(command_buffer !== undefined, 'command_buffer !== undefined');
};
SimpleTest.waitForExplicitFinish();
func()
.catch((e) => ok(false, "Unhandled exception " + e))
.finally(() => SimpleTest.finish());
</script>
</body>
</html>