<!-- webkit-test-runner [ enableMetalDebugDevice=true ] -->
<script src="../../../resources/js-test-pre.js"></script>
<script>
async function run() {
    let adapter = await navigator.gpu.requestAdapter();
    let device = await adapter.requestDevice()
    let texture = device.createTexture({ size: { width: 1 }, format: 'stencil8', usage: [] });
    let textureView = texture.createView();
    texture.destroy();
    device.createCommandEncoder().beginRenderPass({ colorAttachments: [], depthStencilAttachment: { view: textureView } });
    await device.queue.onSubmittedWorkDone();
    debug('Pass')
    globalThis.testRunner?.notifyDone();
}
globalThis.testRunner?.dumpAsText();
globalThis.testRunner?.waitUntilDone();

run();
</script>

