mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-04 14:20:29 +00:00
64 lines
1.6 KiB
TypeScript
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",
|
|
});
|
|
});
|
|
});
|