mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-10 02:30:44 +00:00
test: tighten fire and forget log assertion
This commit is contained in:
@@ -1,6 +1,15 @@
|
||||
import { describe, expect, it, vi } from "vitest";
|
||||
import { fireAndForgetBoundedHook, fireAndForgetHook } from "./fire-and-forget.js";
|
||||
|
||||
function requireFirstLog(logger: ReturnType<typeof vi.fn>): string {
|
||||
const message = logger.mock.calls[0]?.[0];
|
||||
expect(message).toBeDefined();
|
||||
if (typeof message !== "string") {
|
||||
throw new Error("expected string log message");
|
||||
}
|
||||
return message;
|
||||
}
|
||||
|
||||
describe("fireAndForgetHook", () => {
|
||||
it("logs rejection errors as sanitized single-line messages", async () => {
|
||||
const logger = vi.fn();
|
||||
@@ -11,8 +20,9 @@ describe("fireAndForgetHook", () => {
|
||||
);
|
||||
await Promise.resolve();
|
||||
expect(logger).toHaveBeenCalledWith(expect.stringMatching(/^hook failed: boom forged secret/));
|
||||
expect(logger.mock.calls[0]?.[0]).not.toContain("\n");
|
||||
expect(logger.mock.calls[0]?.[0]).not.toContain("sk-test1234567890");
|
||||
const message = requireFirstLog(logger);
|
||||
expect(message).not.toContain("\n");
|
||||
expect(message).not.toContain("sk-test1234567890");
|
||||
});
|
||||
|
||||
it("does not log for resolved tasks", async () => {
|
||||
|
||||
Reference in New Issue
Block a user