Release Format Lab 0.2.0
Verify / verify (push) Canceled after 0s

This commit is contained in:
2026-09-02 07:16:08 +02:00
parent cfc525a88e
commit c40a2c4b2a
29 changed files with 972 additions and 64 deletions
+47
View File
@@ -0,0 +1,47 @@
import { describe, expect, it } from "vitest";
import { exportCorpusFiles } from "../../src/lab/corpus";
import {
formatSignatures,
identifyBySignature,
} from "../../src/lab/signatures";
describe("format signatures and corpus", () => {
it("distinguishes masked RIFF forms and container-only evidence", () => {
const wav = Uint8Array.of(
0x52,
0x49,
0x46,
0x46,
0x24,
0,
0,
0,
0x57,
0x41,
0x56,
0x45,
);
expect(identifyBySignature(wav).map((item) => item.format)).toContain(
"wav",
);
expect(identifyBySignature(wav).map((item) => item.format)).not.toContain(
"webp",
);
expect(
identifyBySignature(Uint8Array.of(0x50, 0x4b, 0x03, 0x04))[0],
).toMatchObject({ format: "zip", confidence: "container" });
});
it("ships a broad, deterministic structured regression corpus", () => {
expect(formatSignatures.length).toBeGreaterThanOrEqual(20);
const first = exportCorpusFiles();
expect(first).toEqual(exportCorpusFiles());
expect(first.map((file) => file.path)).toEqual(
expect.arrayContaining([
"structured/typed.json",
"structured/text-cells.csv",
"corpus-manifest.json",
]),
);
});
});