diff options
Diffstat (limited to 'dom/webgpu/tests/cts/checkout/src/webgpu/api/validation/image_copy/README.txt')
-rw-r--r-- | dom/webgpu/tests/cts/checkout/src/webgpu/api/validation/image_copy/README.txt | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/dom/webgpu/tests/cts/checkout/src/webgpu/api/validation/image_copy/README.txt b/dom/webgpu/tests/cts/checkout/src/webgpu/api/validation/image_copy/README.txt new file mode 100644 index 0000000000..159676f02c --- /dev/null +++ b/dom/webgpu/tests/cts/checkout/src/webgpu/api/validation/image_copy/README.txt @@ -0,0 +1,32 @@ +writeTexture + copyBufferToTexture + copyTextureToBuffer validation tests. + +Test coverage: +* resource usages: + - texture_usage_must_be_valid: for GPUTextureUsage::COPY_SRC, GPUTextureUsage::COPY_DST flags. + - buffer_usage_must_be_valid: for GPUBufferUsage::COPY_SRC, GPUBufferUsage::COPY_DST flags. + +* textureCopyView: + - texture_must_be_valid: for valid, destroyed, error textures. + - sample_count_must_be_1: for sample count 1 and 4. + - mip_level_must_be_in_range: for various combinations of mipLevel and mipLevelCount. + - format: for all formats with full and non-full copies on width, height, and depth. + - texel_block_alignment_on_origin: for all formats and coordinates. + +* bufferCopyView: + - buffer_must_be_valid: for valid, destroyed, error buffers. + - bytes_per_row_alignment: for bytesPerRow to be 256-byte aligned or not, and bytesPerRow is required or not. + +* linear texture data: + - bound_on_rows_per_image: for various combinations of copyDepth (1, >1), copyHeight, rowsPerImage. + - offset_plus_required_bytes_in_copy_overflow + - required_bytes_in_copy: testing minimal data size and data size too small for various combinations of bytesPerRow, rowsPerImage, copyExtent and offset. for the copy method, bytesPerRow is computed as bytesInACompleteRow aligned to be a multiple of 256 + bytesPerRowPadding * 256. + - texel_block_alignment_on_rows_per_image: for all formats. + - offset_alignment: for all formats. + - bound_on_offset: for various combinations of offset and dataSize. + +* texture copy range: + - 1d_texture: copyExtent.height isn't 1, copyExtent.depthOrArrayLayers isn't 1. + - texel_block_alignment_on_size: for all formats and coordinates. + - texture_range_conditons: for all coordinate and various combinations of origin, copyExtent, textureSize and mipLevel. + +TODO: more test coverage for 1D and 3D textures. |