70bf21e064
Deploy (to testing) and Test Playground Preview Worker / Deploy Playground Preview Worker (testing) (push) Has been skipped
Deploy Workers Shared Staging / Deploy Workers Shared Staging (push) Failing after 0s
Prerelease / build (push) Has been skipped
Handle Changesets / Handle Changesets (push) Has been cancelled
Semgrep OSS scan / semgrep-oss (push) Has been cancelled
32 lines
694 B
TypeScript
32 lines
694 B
TypeScript
import { Log, LogLevel, stripAnsi } from "miniflare";
|
|
|
|
const consoleLog = new Log(LogLevel.VERBOSE);
|
|
|
|
export type LogEntry = [level: LogLevel, message: string];
|
|
export class TestLog extends Log {
|
|
logs: LogEntry[] = [];
|
|
|
|
constructor() {
|
|
super(LogLevel.VERBOSE);
|
|
}
|
|
|
|
log(message: string): void {
|
|
this.logs.push([LogLevel.NONE, stripAnsi(message)]);
|
|
}
|
|
|
|
logWithLevel(level: LogLevel, message: string): void {
|
|
this.logs.push([level, stripAnsi(message)]);
|
|
}
|
|
|
|
error(message: Error): void {
|
|
consoleLog.error(message);
|
|
throw message;
|
|
}
|
|
|
|
logsAtLevel(level: LogLevel): string[] {
|
|
return this.logs
|
|
.filter(([logLevel]) => logLevel === level)
|
|
.map(([, message]) => message);
|
|
}
|
|
}
|