


















@@ -11,6 +11,18 @@ import {
1111import { createMessageReceiveContext, shouldAckMessageAfterStage } from "./receive.js";
1212import { classifyDurableSendRecoveryState, createDurableMessageStateRecord } from "./state.js";
131314+function requireMockCall(
15+mock: { mock: { calls: unknown[][] } },
16+callIndex: number,
17+label: string,
18+): unknown[] {
19+const call = mock.mock.calls.at(callIndex);
20+if (!call) {
21+throw new Error(`expected ${label} call ${callIndex}`);
22+}
23+return call;
24+}
25+1426describe("message lifecycle primitives", () => {
1527it("tracks live preview finalization state", () => {
1628const receipt = {
@@ -86,11 +98,11 @@ describe("message lifecycle primitives", () => {
8698expect(liveState.receipt?.primaryPlatformMessageId).toBe("preview-1");
8799expect(liveState.receipt?.platformMessageIds).toEqual(["preview-1"]);
88100expect(onPreviewFinalized).toHaveBeenCalledTimes(1);
89-const [previewId, receiptArg, stateArg] = onPreviewFinalized.mock.calls[0] as unknown as [
90-string,
91-{ primaryPlatformMessageId?: string },
92-unknown,
93-];
101+const [previewId, receiptArg, stateArg] = requireMockCall(
102+onPreviewFinalized,
103+0,
104+"preview finalized",
105+) as [string, { primaryPlatformMessageId?: string }, unknown];
94106expect(previewId).toBe("preview-1");
95107expect(receiptArg.primaryPlatformMessageId).toBe("preview-1");
96108expect(stateArg).toBe(liveState);
@@ -213,7 +225,7 @@ describe("message lifecycle primitives", () => {
213225expect(result.liveState?.phase).toBe("previewing");
214226expect(deliverNormally).not.toHaveBeenCalled();
215227expect(handlePreviewEditError).toHaveBeenCalledTimes(1);
216-const [editErrorContext] = handlePreviewEditError.mock.calls[0] as unknown as [
228+const [editErrorContext] = requireMockCall(handlePreviewEditError, 0, "preview edit error") as [
217229{ error: unknown; id?: string; edit?: unknown; payload?: unknown },
218230];
219231expect(editErrorContext.error).toBe(editError);
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。