Files
openclaw-zero-token/channels/native-command-session-targets.test.ts
sjhu 571e14a236 feat: upgrade to upstream v2026.3.28
Major upgrade from e26988a38 to upstream v2026.3.28 (f9b107928).
Key changes:
- Upstream src/, ui/, extensions/ (89 bundled extensions)
- Zero-token web providers preserved in src/zero-token/
- AskOnce plugin restored and registered as CLI command
- Added missing packages: @anthropic-ai/vertex-sdk, @modelcontextprotocol/sdk
- Fixed tsconfig rootDir, skipLibCheck for plugin-sdk DTS build
- Added askonce to bundled plugin metadata and package.json exports
- Fixed AskOnce CLI command registration (missing commands metadata)
- Restored AskOnce adapter imports (correct 5-level relative paths)
- Removed stale migration artifacts from root directory
2026-03-30 17:58:12 +08:00

49 lines
1.6 KiB
TypeScript

import { describe, expect, it } from "vitest";
import { resolveNativeCommandSessionTargets } from "./native-command-session-targets.js";
describe("resolveNativeCommandSessionTargets", () => {
it("uses the bound session for both targets when present", () => {
expect(
resolveNativeCommandSessionTargets({
agentId: "codex",
sessionPrefix: "discord:slash",
userId: "user-1",
targetSessionKey: "agent:codex:discord:channel:chan-1",
boundSessionKey: "agent:codex:acp:binding:discord:default:seed",
}),
).toEqual({
sessionKey: "agent:codex:acp:binding:discord:default:seed",
commandTargetSessionKey: "agent:codex:acp:binding:discord:default:seed",
});
});
it("falls back to the routed session target when unbound", () => {
expect(
resolveNativeCommandSessionTargets({
agentId: "qwen",
sessionPrefix: "telegram:slash",
userId: "user-1",
targetSessionKey: "agent:qwen:telegram:direct:user-1",
}),
).toEqual({
sessionKey: "agent:qwen:telegram:slash:user-1",
commandTargetSessionKey: "agent:qwen:telegram:direct:user-1",
});
});
it("supports lowercase session keys for providers that already normalize", () => {
expect(
resolveNativeCommandSessionTargets({
agentId: "Qwen",
sessionPrefix: "Slack:Slash",
userId: "U123",
targetSessionKey: "agent:qwen:slack:channel:c1",
lowercaseSessionKey: true,
}),
).toEqual({
sessionKey: "agent:qwen:slack:slash:u123",
commandTargetSessionKey: "agent:qwen:slack:channel:c1",
});
});
});