Files
openclaw/src/agents/subagent-announce-delivery.test.ts

64 lines
1.6 KiB
TypeScript

import { describe, expect, it } from "vitest";
import { resolveAnnounceOrigin } from "./subagent-announce-delivery.js";
describe("resolveAnnounceOrigin telegram forum topics", () => {
it("preserves stored forum topic thread ids when requester origin omits one for the same chat", () => {
expect(
resolveAnnounceOrigin(
{
lastChannel: "telegram",
lastTo: "telegram:-1001234567890:topic:99",
lastThreadId: 99,
},
{
channel: "telegram",
to: "telegram:-1001234567890",
},
),
).toEqual({
channel: "telegram",
to: "telegram:-1001234567890",
threadId: 99,
});
});
it("preserves stored forum topic thread ids for legacy group-prefixed requester targets", () => {
expect(
resolveAnnounceOrigin(
{
lastChannel: "telegram",
lastTo: "telegram:-1001234567890:topic:99",
lastThreadId: 99,
},
{
channel: "telegram",
to: "group:-1001234567890",
},
),
).toEqual({
channel: "telegram",
to: "group:-1001234567890",
threadId: 99,
});
});
it("still strips stale thread ids when the stored telegram route points at a different chat", () => {
expect(
resolveAnnounceOrigin(
{
lastChannel: "telegram",
lastTo: "telegram:-1009999999999:topic:99",
lastThreadId: 99,
},
{
channel: "telegram",
to: "telegram:-1001234567890",
},
),
).toEqual({
channel: "telegram",
to: "telegram:-1001234567890",
});
});
});