
























@@ -38,6 +38,31 @@ vi.mock("../logging.js", () => ({
38383939const { sendFailureNotificationAnnounce } = await import("./delivery.js");
404041+type DeliveryRequest = {
42+abortSignal?: unknown;
43+accountId?: string;
44+bestEffort?: boolean;
45+cfg?: unknown;
46+channel?: string;
47+deps?: unknown;
48+identity?: unknown;
49+payloads?: unknown;
50+session?: unknown;
51+threadId?: number;
52+to?: string;
53+};
54+55+type WarnMeta = { channel?: string; err?: string; to?: string };
56+57+function firstDeliveryRequest() {
58+const [deliveryRequest] = mocks.deliverOutboundPayloads.mock.calls[0] as [DeliveryRequest];
59+return deliveryRequest;
60+}
61+62+function firstWarnCall() {
63+return mocks.warn.mock.calls[0] as [WarnMeta, string];
64+}
65+4166describe("sendFailureNotificationAnnounce", () => {
4267beforeEach(() => {
4368vi.clearAllMocks();
@@ -80,21 +105,7 @@ describe("sendFailureNotificationAnnounce", () => {
80105sessionKey: "cron:job-1:failure",
81106});
82107expect(mocks.deliverOutboundPayloads).toHaveBeenCalledTimes(1);
83-const [deliveryRequest] = mocks.deliverOutboundPayloads.mock.calls.at(0) as [
84-{
85-abortSignal?: unknown;
86-accountId?: string;
87-bestEffort?: boolean;
88-cfg?: unknown;
89-channel?: string;
90-deps?: unknown;
91-identity?: unknown;
92-payloads?: unknown;
93-session?: unknown;
94-threadId?: number;
95-to?: string;
96-},
97-];
108+const deliveryRequest = firstDeliveryRequest();
98109expect(deliveryRequest.cfg).toBe(cfg);
99110expect(deliveryRequest.channel).toBe("telegram");
100111expect(deliveryRequest.to).toBe("123");
@@ -171,10 +182,7 @@ describe("sendFailureNotificationAnnounce", () => {
171182).resolves.toBeUndefined();
172183173184expect(mocks.warn).toHaveBeenCalledTimes(1);
174-const [warnMeta, warnMessage] = mocks.warn.mock.calls.at(0) as [
175-{ channel?: string; err?: string; to?: string },
176-string,
177-];
185+const [warnMeta, warnMessage] = firstWarnCall();
178186expect(warnMeta.err).toBe("send failed");
179187expect(warnMeta.channel).toBe("telegram");
180188expect(warnMeta.to).toBe("123");
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。