gecko-dev/dom/webgpu/mochitest/test_queue_write.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

34 lines
1.2 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 buffer = device.createBuffer({size:16, usage: GPUBufferUsage.COPY_DST | GPUBufferUsage.COPY_SRC | GPUBufferUsage.VERTEX});
const arrayBuf = new ArrayBuffer(16);
(new Int32Array(arrayBuf)).fill(5)
device.queue.writeBuffer(buffer, 0, arrayBuf, 0);
const texture = device.createTexture({size: [2,2,1], dimension: "2d", format: "rgba8unorm", usage: GPUTextureUsage.COPY_DST | GPUTextureUsage.COPY_SRC });
device.queue.writeTexture({ texture }, arrayBuf, { bytesPerRow:8 }, [2,2,1]);
// this isn't a process check, we need to read back the contents and verify the writes happened
ok(device !== undefined, '');
};
SimpleTest.waitForExplicitFinish();
func()
.catch((e) => ok(false, "Unhandled exception " + e))
.finally(() => SimpleTest.finish());
</script>
</body>
</html>