2024-01-01 21:11:32 +00:00
|
|
|
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
2023-12-12 04:33:07 +00:00
|
|
|
|
|
|
|
import { describeTextureFormat } from "./describe_texture_format.ts";
|
|
|
|
|
|
|
|
// From GPUTextureFormat webidl definition in https://github.com/denoland/deno/blob/main/ext/webgpu/01_webgpu.js
|
|
|
|
const FORMATS: GPUTextureFormat[] = [
|
|
|
|
"r8unorm",
|
|
|
|
"r8snorm",
|
|
|
|
"r8uint",
|
|
|
|
"r8sint",
|
|
|
|
"r16uint",
|
|
|
|
"r16sint",
|
|
|
|
"r16float",
|
|
|
|
"rg8unorm",
|
|
|
|
"rg8snorm",
|
|
|
|
"rg8uint",
|
|
|
|
"rg8sint",
|
|
|
|
"r32uint",
|
|
|
|
"r32sint",
|
|
|
|
"r32float",
|
|
|
|
"rg16uint",
|
|
|
|
"rg16sint",
|
|
|
|
"rg16float",
|
|
|
|
"rgba8unorm",
|
|
|
|
"rgba8unorm-srgb",
|
|
|
|
"rgba8snorm",
|
|
|
|
"rgba8uint",
|
|
|
|
"rgba8sint",
|
|
|
|
"bgra8unorm",
|
|
|
|
"bgra8unorm-srgb",
|
|
|
|
"rgb9e5ufloat",
|
|
|
|
"rgb10a2unorm",
|
|
|
|
"rg11b10ufloat",
|
|
|
|
"rg32uint",
|
|
|
|
"rg32sint",
|
|
|
|
"rg32float",
|
|
|
|
"rgba16uint",
|
|
|
|
"rgba16sint",
|
|
|
|
"rgba16float",
|
|
|
|
"rgba32uint",
|
|
|
|
"rgba32sint",
|
|
|
|
"rgba32float",
|
|
|
|
"stencil8",
|
|
|
|
"depth16unorm",
|
|
|
|
"depth24plus",
|
|
|
|
"depth24plus-stencil8",
|
|
|
|
"depth32float",
|
|
|
|
"depth32float-stencil8",
|
|
|
|
"bc1-rgba-unorm",
|
|
|
|
"bc1-rgba-unorm-srgb",
|
|
|
|
"bc2-rgba-unorm",
|
|
|
|
"bc2-rgba-unorm-srgb",
|
|
|
|
"bc3-rgba-unorm",
|
|
|
|
"bc3-rgba-unorm-srgb",
|
|
|
|
"bc4-r-unorm",
|
|
|
|
"bc4-r-snorm",
|
|
|
|
"bc5-rg-unorm",
|
|
|
|
"bc5-rg-snorm",
|
|
|
|
"bc6h-rgb-ufloat",
|
|
|
|
"bc6h-rgb-float",
|
|
|
|
"bc7-rgba-unorm",
|
|
|
|
"bc7-rgba-unorm-srgb",
|
|
|
|
"etc2-rgb8unorm",
|
|
|
|
"etc2-rgb8unorm-srgb",
|
|
|
|
"etc2-rgb8a1unorm",
|
|
|
|
"etc2-rgb8a1unorm-srgb",
|
|
|
|
"etc2-rgba8unorm",
|
|
|
|
"etc2-rgba8unorm-srgb",
|
|
|
|
"eac-r11unorm",
|
|
|
|
"eac-r11snorm",
|
|
|
|
"eac-rg11unorm",
|
|
|
|
"eac-rg11snorm",
|
|
|
|
"astc-4x4-unorm",
|
|
|
|
"astc-4x4-unorm-srgb",
|
|
|
|
"astc-5x4-unorm",
|
|
|
|
"astc-5x4-unorm-srgb",
|
|
|
|
"astc-5x5-unorm",
|
|
|
|
"astc-5x5-unorm-srgb",
|
|
|
|
"astc-6x5-unorm",
|
|
|
|
"astc-6x5-unorm-srgb",
|
|
|
|
"astc-6x6-unorm",
|
|
|
|
"astc-6x6-unorm-srgb",
|
|
|
|
"astc-8x5-unorm",
|
|
|
|
"astc-8x5-unorm-srgb",
|
|
|
|
"astc-8x6-unorm",
|
|
|
|
"astc-8x6-unorm-srgb",
|
|
|
|
"astc-8x8-unorm",
|
|
|
|
"astc-8x8-unorm-srgb",
|
|
|
|
"astc-10x5-unorm",
|
|
|
|
"astc-10x5-unorm-srgb",
|
|
|
|
"astc-10x6-unorm",
|
|
|
|
"astc-10x6-unorm-srgb",
|
|
|
|
"astc-10x8-unorm",
|
|
|
|
"astc-10x8-unorm-srgb",
|
|
|
|
"astc-10x10-unorm",
|
|
|
|
"astc-10x10-unorm-srgb",
|
|
|
|
"astc-12x10-unorm",
|
|
|
|
"astc-12x10-unorm-srgb",
|
|
|
|
"astc-12x12-unorm",
|
|
|
|
"astc-12x12-unorm-srgb",
|
|
|
|
] as const;
|
|
|
|
|
2024-04-15 01:36:19 +00:00
|
|
|
Deno.test("describeTextureFormat()", async (t) => {
|
2023-12-12 04:33:07 +00:00
|
|
|
for (const format of FORMATS) {
|
|
|
|
await t.step(format, () => {
|
|
|
|
describeTextureFormat(format);
|
|
|
|
});
|
|
|
|
}
|
|
|
|
});
|