

























@@ -141,7 +141,7 @@ function requireArray(value: unknown, label: string): Array<unknown> {
141141}
142142143143function sentContent(sendMessage: { mock: { calls: Array<Array<unknown>> } }, index = 0) {
144-return requireRecord(sendMessage.mock.calls[index]?.[1], `sent content ${index}`);
144+return requireRecord(sendMessage.mock.calls.at(index)?.[1], `sent content ${index}`);
145145}
146146147147function newContent(content: Record<string, unknown>) {
@@ -219,10 +219,10 @@ describe("sendMessageMatrix media", () => {
219219mediaUrl: "file:///tmp/photo.png",
220220});
221221222-const uploadArg = uploadContent.mock.calls[0]?.[0];
222+const uploadArg = uploadContent.mock.calls.at(0)?.[0];
223223expect(Buffer.isBuffer(uploadArg)).toBe(true);
224224225-const content = sendMessage.mock.calls[0]?.[1] as {
225+const content = sendMessage.mock.calls.at(0)?.[1] as {
226226url?: string;
227227msgtype?: string;
228228format?: string;
@@ -243,12 +243,12 @@ describe("sendMessageMatrix media", () => {
243243mediaUrl: "file:///tmp/photo.png",
244244});
245245246-const uploadArg = uploadContent.mock.calls[0]?.[0];
246+const uploadArg = uploadContent.mock.calls.at(0)?.[0];
247247expect(uploadArg instanceof Uint8Array ? Buffer.from(uploadArg).toString() : undefined).toBe(
248248"encrypted",
249249);
250250251-const content = sendMessage.mock.calls[0]?.[1] as {
251+const content = sendMessage.mock.calls.at(0)?.[1] as {
252252url?: string;
253253file?: { url?: string };
254254};
@@ -292,7 +292,7 @@ describe("sendMessageMatrix media", () => {
292292expect(isRoomEncrypted).toHaveBeenCalledTimes(1);
293293expect(encryptMedia).toHaveBeenCalledTimes(2);
294294295-const content = sendMessage.mock.calls[0]?.[1] as {
295+const content = sendMessage.mock.calls.at(0)?.[1] as {
296296url?: string;
297297file?: { url?: string };
298298info?: { thumbnail_url?: string; thumbnail_file?: { url?: string } };
@@ -324,7 +324,7 @@ describe("sendMessageMatrix media", () => {
324324replyToId: "$reply",
325325});
326326327-const transcriptContent = sendMessage.mock.calls[1]?.[1] as {
327+const transcriptContent = sendMessage.mock.calls.at(1)?.[1] as {
328328body?: string;
329329"m.relates_to"?: {
330330"m.in_reply_to"?: { event_id?: string };
@@ -356,7 +356,7 @@ describe("sendMessageMatrix media", () => {
356356});
357357358358expect(sendMessage).toHaveBeenCalledTimes(1);
359-const mediaContent = sendMessage.mock.calls[0]?.[1] as {
359+const mediaContent = sendMessage.mock.calls.at(0)?.[1] as {
360360msgtype?: string;
361361body?: string;
362362"org.matrix.msc3245.voice"?: Record<string, never>;
@@ -380,7 +380,7 @@ describe("sendMessageMatrix media", () => {
380380});
381381382382expect(uploadContent).toHaveBeenCalledTimes(2);
383-const content = sendMessage.mock.calls[0]?.[1] as {
383+const content = sendMessage.mock.calls.at(0)?.[1] as {
384384info?: {
385385thumbnail_url?: string;
386386thumbnail_file?: { url?: string };
@@ -428,8 +428,8 @@ describe("sendMessageMatrix media", () => {
428428});
429429430430expect(loadConfigMock).not.toHaveBeenCalled();
431-expect(loadWebMediaMock.mock.calls[0]?.[0]).toBe("file:///tmp/photo.png");
432-const mediaOptions = requireRecord(loadWebMediaMock.mock.calls[0]?.[1], "media options");
431+expect(loadWebMediaMock.mock.calls.at(0)?.[0]).toBe("file:///tmp/photo.png");
432+const mediaOptions = requireRecord(loadWebMediaMock.mock.calls.at(0)?.[1], "media options");
433433expect(mediaOptions.maxBytes).toBe(1024 * 1024);
434434expect(mediaOptions.localRoots).toBeUndefined();
435435expect(resolveTextChunkLimitMock).toHaveBeenCalledWith(explicitCfg, "matrix", "ops");
@@ -445,8 +445,8 @@ describe("sendMessageMatrix media", () => {
445445mediaLocalRoots: ["/tmp/openclaw-matrix-test"],
446446});
447447448-expect(loadWebMediaMock.mock.calls[0]?.[0]).toBe("file:///tmp/photo.png");
449-const mediaOptions = requireRecord(loadWebMediaMock.mock.calls[0]?.[1], "media options");
448+expect(loadWebMediaMock.mock.calls.at(0)?.[0]).toBe("file:///tmp/photo.png");
449+const mediaOptions = requireRecord(loadWebMediaMock.mock.calls.at(0)?.[1], "media options");
450450expect(mediaOptions.maxBytes).toBeUndefined();
451451expect(mediaOptions.localRoots).toEqual(["/tmp/openclaw-matrix-test"]);
452452});
@@ -483,7 +483,7 @@ describe("sendMessageMatrix mentions", () => {
483483user_ids: ["@alice:example.org"],
484484});
485485expect(
486-(sendMessage.mock.calls[0]?.[1] as { formatted_body?: string }).formatted_body,
486+(sendMessage.mock.calls.at(0)?.[1] as { formatted_body?: string }).formatted_body,
487487).toContain('href="https://matrix.to/#/%40alice%3Aexample.org"');
488488});
489489@@ -497,7 +497,7 @@ describe("sendMessageMatrix mentions", () => {
497497498498expect(sentContent(sendMessage)["m.mentions"]).toEqual({});
499499expect(
500-(sendMessage.mock.calls[0]?.[1] as { formatted_body?: string }).formatted_body,
500+(sendMessage.mock.calls.at(0)?.[1] as { formatted_body?: string }).formatted_body,
501501).not.toContain("matrix.to/#/@alice:example.org");
502502});
503503@@ -511,7 +511,7 @@ describe("sendMessageMatrix mentions", () => {
511511512512expect(sentContent(sendMessage)["m.mentions"]).toEqual({});
513513expect(
514-(sendMessage.mock.calls[0]?.[1] as { formatted_body?: string }).formatted_body,
514+(sendMessage.mock.calls.at(0)?.[1] as { formatted_body?: string }).formatted_body,
515515).not.toContain("matrix.to/#/@alice:example.org");
516516});
517517@@ -569,7 +569,7 @@ describe("sendMessageMatrix mentions", () => {
569569expect(sentContent(sendMessage).body).toBe("@room.png");
570570expect(sentContent(sendMessage)["m.mentions"]).toEqual({});
571571expect(
572-(sendMessage.mock.calls[0]?.[1] as { formatted_body?: string }).formatted_body,
572+(sendMessage.mock.calls.at(0)?.[1] as { formatted_body?: string }).formatted_body,
573573).toBeUndefined();
574574});
575575});
@@ -589,7 +589,7 @@ describe("sendMessageMatrix threads", () => {
589589threadId: "$thread",
590590});
591591592-const content = sendMessage.mock.calls[0]?.[1] as {
592+const content = sendMessage.mock.calls.at(0)?.[1] as {
593593"m.relates_to"?: {
594594rel_type?: string;
595595event_id?: string;
@@ -658,9 +658,9 @@ describe("sendMessageMatrix threads", () => {
658658expect(sentContent(sendMessage, 0).body).toBe("first");
659659expect(sentContent(sendMessage, 0)["com.openclaw.approval"]).toEqual({ id: "req-1" });
660660expect(sentContent(sendMessage, 1).body).toBe("second");
661-expect(sendMessage.mock.calls[1]?.[1]).not.toHaveProperty("com.openclaw.approval");
661+expect(sendMessage.mock.calls.at(1)?.[1]).not.toHaveProperty("com.openclaw.approval");
662662expect(sentContent(sendMessage, 2).body).toBe("third");
663-expect(sendMessage.mock.calls[2]?.[1]).not.toHaveProperty("com.openclaw.approval");
663+expect(sendMessage.mock.calls.at(2)?.[1]).not.toHaveProperty("com.openclaw.approval");
664664});
665665});
666666@@ -697,9 +697,9 @@ describe("sendSingleTextMessageMatrix", () => {
697697698698expect(sentContent(sendMessage).msgtype).toBe("m.notice");
699699expect(sentContent(sendMessage).body).toBe("@room hi @alice:example.org");
700-expect(sendMessage.mock.calls[0]?.[1]).not.toHaveProperty("m.mentions");
700+expect(sendMessage.mock.calls.at(0)?.[1]).not.toHaveProperty("m.mentions");
701701expect(
702-(sendMessage.mock.calls[0]?.[1] as { formatted_body?: string }).formatted_body,
702+(sendMessage.mock.calls.at(0)?.[1] as { formatted_body?: string }).formatted_body,
703703).not.toContain("matrix.to");
704704});
705705@@ -719,7 +719,7 @@ describe("sendSingleTextMessageMatrix", () => {
719719"Working...\n- `@room ping @alice:example.org !room:example.org`",
720720);
721721expect(sentContent(sendMessage)["m.mentions"]).toEqual({});
722-const formattedBody = (sendMessage.mock.calls[0]?.[1] as { formatted_body?: string })
722+const formattedBody = (sendMessage.mock.calls.at(0)?.[1] as { formatted_body?: string })
723723.formatted_body;
724724expect(formattedBody).toContain("<code>@room ping @alice:example.org !room:example.org</code>");
725725expect(formattedBody).not.toContain("matrix.to");
@@ -835,11 +835,11 @@ describe("editMessageMatrix mentions", () => {
835835expect(content).not.toHaveProperty("m.mentions");
836836expect(newContent(content)).not.toHaveProperty("m.mentions");
837837expect(
838-(sendMessage.mock.calls[0]?.[1] as { formatted_body?: string }).formatted_body,
838+(sendMessage.mock.calls.at(0)?.[1] as { formatted_body?: string }).formatted_body,
839839).not.toContain("matrix.to");
840840expect(
841841(
842-sendMessage.mock.calls[0]?.[1] as {
842+sendMessage.mock.calls.at(0)?.[1] as {
843843"m.new_content"?: { formatted_body?: string };
844844}
845845)["m.new_content"]?.formatted_body,
@@ -882,9 +882,9 @@ describe("sendPollMatrix mentions", () => {
882882},
883883);
884884885-expect(sendEvent.mock.calls[0]?.[0]).toBe("!room:example");
886-expect(sendEvent.mock.calls[0]?.[1]).toBe("m.poll.start");
887-const content = requireRecord(sendEvent.mock.calls[0]?.[2], "poll start content");
885+expect(sendEvent.mock.calls.at(0)?.[0]).toBe("!room:example");
886+expect(sendEvent.mock.calls.at(0)?.[1]).toBe("m.poll.start");
887+const content = requireRecord(sendEvent.mock.calls.at(0)?.[2], "poll start content");
888888expect(content["m.mentions"]).toEqual({
889889room: true,
890890user_ids: ["@alice:example.org"],
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。