| <!-- 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 buffer = device.createBuffer({ size: 147045, usage: GPUBufferUsage.COPY_DST | GPUBufferUsage.MAP_READ }); |
| buffer.destroy(); |
| try { |
| await buffer.mapAsync(GPUMapMode.READ, 0, 144756); |
| } catch { |
| } |
| let commandEncoder = device.createCommandEncoder(); |
| let buffer2 = device.createBuffer({ size: 391719, usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.MAP_WRITE }); |
| buffer.unmap(); |
| commandEncoder.copyBufferToBuffer(buffer2, 278668, buffer, 14060, 64684); |
| await device.queue.onSubmittedWorkDone(); |
| debug('Pass') |
| globalThis.testRunner?.notifyDone(); |
| } |
| globalThis.testRunner?.dumpAsText(); |
| globalThis.testRunner?.waitUntilDone(); |
| |
| run(); |
| </script> |
| |