
























@@ -150,12 +150,28 @@ function mockLogWebSelfIdCreds(me: Record<string, string>) {
150150};
151151}
152152153-function readLastSocketOptions(): { agent?: unknown; fetchAgent?: unknown } {
154-const options = (baileys.makeWASocket as ReturnType<typeof vi.fn>).mock.calls[0]?.[0];
153+function readLastSocketOptions(): {
154+agent?: unknown;
155+connectTimeoutMs?: number;
156+defaultQueryTimeoutMs?: number;
157+fetchAgent?: unknown;
158+keepAliveIntervalMs?: number;
159+printQRInTerminal?: boolean;
160+logger?: { level?: string; trace?: unknown };
161+} {
162+const options = (baileys.makeWASocket as ReturnType<typeof vi.fn>).mock.calls.at(0)?.at(0);
155163if (typeof options !== "object" || options === null) {
156164throw new Error("expected Baileys socket options");
157165}
158-return options as { agent?: unknown; fetchAgent?: unknown };
166+return options as {
167+agent?: unknown;
168+connectTimeoutMs?: number;
169+defaultQueryTimeoutMs?: number;
170+fetchAgent?: unknown;
171+keepAliveIntervalMs?: number;
172+printQRInTerminal?: boolean;
173+logger?: { level?: string; trace?: unknown };
174+};
159175}
160176161177function requireValue<T>(value: T | undefined, label: string): T {
@@ -170,7 +186,7 @@ function firstWriteFileCall(writeFileSpy: ReturnType<typeof vi.fn>): {
170186options: { flag?: string; mode?: number };
171187path: string;
172188} {
173-const [filePath, data, options] = writeFileSpy.mock.calls[0] ?? [];
189+const [filePath, data, options] = writeFileSpy.mock.calls.at(0) ?? [];
174190expect(typeof filePath).toBe("string");
175191return {
176192 data,
@@ -218,8 +234,7 @@ describe("web session", () => {
218234const openMock = mockFsOpenForCredsWrites();
219235220236await createWaSocket(true, false, { authDir });
221-const makeWASocket = baileys.makeWASocket as ReturnType<typeof vi.fn>;
222-const passed = makeWASocket.mock.calls[0][0];
237+const passed = readLastSocketOptions();
223238expect(passed.printQRInTerminal).toBe(false);
224239expect(passed.keepAliveIntervalMs).toBe(DEFAULT_WHATSAPP_SOCKET_TIMING.keepAliveIntervalMs);
225240expect(passed.connectTimeoutMs).toBe(DEFAULT_WHATSAPP_SOCKET_TIMING.connectTimeoutMs);
@@ -247,7 +262,7 @@ describe("web session", () => {
247262defaultQueryTimeoutMs: 120_000,
248263});
249264250-const passed = (baileys.makeWASocket as ReturnType<typeof vi.fn>).mock.calls[0]?.[0];
265+const passed = readLastSocketOptions();
251266expect(passed.keepAliveIntervalMs).toBe(10_000);
252267expect(passed.connectTimeoutMs).toBe(90_000);
253268expect(passed.defaultQueryTimeoutMs).toBe(120_000);
@@ -303,10 +318,7 @@ describe("web session", () => {
303318304319await createWaSocket(false, false);
305320306-const passed = (baileys.makeWASocket as ReturnType<typeof vi.fn>).mock.calls[0]?.[0] as {
307-agent?: unknown;
308-fetchAgent?: unknown;
309-};
321+const passed = readLastSocketOptions();
310322expect(passed.agent).toBeUndefined();
311323expect(passed.fetchAgent).toBeUndefined();
312324});
@@ -510,7 +522,7 @@ describe("web session", () => {
510522await waitForCredsSaveQueue();
511523512524expect(creds.copySpy).toHaveBeenCalledTimes(1);
513-const args = creds.copySpy.mock.calls[0] ?? [];
525+const args = creds.copySpy.mock.calls.at(0) ?? [];
514526expect(String(args[0] ?? "")).toContain(creds.credsSuffix);
515527expect(String(args[1] ?? "")).toContain(backupSuffix);
516528expect(openMock.tempHandles).toHaveLength(1);
@@ -549,7 +561,7 @@ describe("web session", () => {
549561expect(openMock.dirHandles).toHaveLength(1);
550562expect(openMock.dirHandles[0]?.sync).toHaveBeenCalledTimes(1);
551563const writePath = openMock.tempHandles[0]?.filePath;
552-const renameArgs = renameSpy.mock.calls[0] ?? [];
564+const renameArgs = renameSpy.mock.calls.at(0) ?? [];
553565expect(typeof writePath).toBe("string");
554566expect(writePath).toContain(".creds.");
555567expect(String(renameArgs[1] ?? "")).toContain(
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。