test: stabilize model warning sanitizer checks

This commit is contained in:
Peter Steinberger
2026-04-08 11:40:59 +01:00
parent 3726a12bf9
commit 4b4825b875
3 changed files with 42 additions and 14 deletions

View File

@@ -0,0 +1,33 @@
import os from "node:os";
import path from "node:path";
import {
registerLogTransport,
resetLogger,
setLoggerOverride,
type LogTransportRecord,
} from "../logger.js";
export function createWarnLogCapture(prefix: string) {
const records: LogTransportRecord[] = [];
setLoggerOverride({
level: "warn",
consoleLevel: "silent",
file: path.join(os.tmpdir(), `${prefix}-${process.pid}-${Date.now()}.log`),
});
const unregister = registerLogTransport((record) => {
records.push(record);
});
return {
findText(needle: string): string | undefined {
return records
.flatMap((record) => Object.values(record))
.filter((value): value is string => typeof value === "string")
.find((value) => value.includes(needle));
},
cleanup() {
unregister();
setLoggerOverride(null);
resetLogger();
},
};
}