blob: 872fb89ae26a9760dc4280858c6e062341e7bfd2 [file] [log] [blame]
<!DOCTYPE html><!-- webkit-test-runner [ experimental:WebGPUEnabled=true ] -->
<meta charset=utf-8>
<title>Get the WebGPUDevice and ask for the WebGPUQueue</title>
<body>
<script src="../resources/testharness.js"></script>
<script src="../resources/testharnessreport.js"></script>
<script src="../resources/js-test-pre.js"></script>
<script src="js/basic-webgpu-functions.js"></script>
<script>
'use strict';
let commandBuffer, renderPassEncoder;
function beginPass() {
// Default a loadOp, storeOp in the implementation for now.
const colorAttachmentDescriptor = {
attachment: context.getNextTexture().createDefaultTextureView(),
clearColor: { r: 0.35, g: 0.65, b: 0.85, a: 1.0 }
}
let renderPassDescriptor = {
colorAttachments : [colorAttachmentDescriptor]
}
renderPassEncoder = commandBuffer.beginRenderPass(renderPassDescriptor);
assert_true(renderPassEncoder instanceof WebGPURenderPassEncoder, "beginRenderPass returned a WebGPURenderPassEncoder");
}
function setUpCommandBuffer() {
commandBuffer = defaultDevice.createCommandBuffer();
assert_true(commandBuffer instanceof WebGPUCommandBuffer, "createCommandBuffer returned a WebGPUCommandBuffer");
}
function endRenderPass() {
renderPassEncoder.setPipeline(renderPipeline);
const commandBufferEnd = renderPassEncoder.endPass();
assert_true(commandBufferEnd instanceof WebGPUCommandBuffer, "endPass() returned a WebGPUCommandBuffer");
// FIXME: Should commandBufferEnd === commandBuffer?
}
promise_test(async () => {
const canvas = document.createElement("canvas");
await setUpContexts(canvas);
setUpPipeline();
setUpCommandBuffer();
beginPass();
endRenderPass();
}, "WebGPURenderPassEncoder created and successfully ended");
</script>
</body>