| import { describe, it } from "node:test"; | |
| import assert from "node:assert/strict"; | |
| import { | |
| PreviewCompressionConfigSchema, | |
| PreviewRequestSchema, | |
| } from "../../../src/app/api/compression/preview/route.ts"; | |
| describe("compression preview API contract", () => { | |
| it("accepts RTK and stacked preview payloads", () => { | |
| assert.equal( | |
| PreviewRequestSchema.safeParse({ | |
| messages: [{ role: "tool", content: "same\nsame\nsame" }], | |
| mode: "rtk", | |
| config: { | |
| rtkConfig: { | |
| intensity: "standard", | |
| applyToToolResults: true, | |
| customFiltersEnabled: true, | |
| rawOutputRetention: "never", | |
| }, | |
| }, | |
| }).success, | |
| true | |
| ); | |
| assert.equal( | |
| PreviewRequestSchema.safeParse({ | |
| messages: [{ role: "tool", content: "same\nsame\nsame" }], | |
| mode: "stacked", | |
| config: { | |
| stackedPipeline: [ | |
| { engine: "rtk", intensity: "standard" }, | |
| { engine: "caveman", intensity: "full" }, | |
| ], | |
| }, | |
| }).success, | |
| true | |
| ); | |
| }); | |
| it("rejects invalid preview config instead of accepting arbitrary records", () => { | |
| assert.equal(PreviewCompressionConfigSchema.safeParse({ unknown: true }).success, false); | |
| assert.equal( | |
| PreviewRequestSchema.safeParse({ | |
| messages: [{ role: "tool", content: "x" }], | |
| mode: "rtk", | |
| config: { rtkConfig: { intensity: "extreme" } }, | |
| }).success, | |
| false | |
| ); | |
| assert.equal( | |
| PreviewCompressionConfigSchema.safeParse({ | |
| stackedPipeline: [{ engine: "rtk", intensity: "bogus" }], | |
| }).success, | |
| false | |
| ); | |
| assert.equal( | |
| PreviewCompressionConfigSchema.safeParse({ | |
| stackedPipeline: [{ engine: "rtk", config: { maxLinesPerResult: -1 } }], | |
| }).success, | |
| false | |
| ); | |
| }); | |
| }); | |