























@@ -7,6 +7,7 @@ import {
77normalizeWhatsAppMessagingTarget,
88normalizeWhatsAppTarget,
99} from "./normalize-target.js";
10+import { resolveWhatsAppOutboundTarget } from "./resolve-outbound-target.js";
10111112describe("normalizeWhatsAppTarget", () => {
1213it("preserves group JIDs", () => {
@@ -15,6 +16,15 @@ describe("normalizeWhatsAppTarget", () => {
1516expect(normalizeWhatsAppTarget("whatsapp:120363401234567890@g.us")).toBe(
1617"120363401234567890@g.us",
1718);
19+expect(normalizeWhatsAppTarget("group:120363401234567890@g.us")).toBe(
20+"120363401234567890@g.us",
21+);
22+expect(normalizeWhatsAppTarget("whatsapp:group:120363401234567890@g.us")).toBe(
23+"120363401234567890@g.us",
24+);
25+expect(normalizeWhatsAppTarget(" WhatsApp:Group:123456789-987654321@G.US ")).toBe(
26+"123456789-987654321@g.us",
27+);
1828});
19292030it("preserves newsletter JIDs", () => {
@@ -46,9 +56,9 @@ describe("normalizeWhatsAppTarget", () => {
4656expect(normalizeWhatsAppTarget("whatsapp:")).toBeNull();
4757expect(normalizeWhatsAppTarget("@g.us")).toBeNull();
4858expect(normalizeWhatsAppTarget("whatsapp:group:@g.us")).toBeNull();
49-expect(normalizeWhatsAppTarget("whatsapp:group:120363401234567890@g.us")).toBeNull();
50-expect(normalizeWhatsAppTarget("group:123456789-987654321@g.us")).toBeNull();
51-expect(normalizeWhatsAppTarget(" WhatsApp:Group:123456789-987654321@G.US ")).toBeNull();
59+expect(normalizeWhatsAppTarget("group:+15551234567")).toBeNull();
60+expect(normalizeWhatsAppTarget("group:abc@g.us")).toBeNull();
61+expect(normalizeWhatsAppTarget("group:120363401234567890@newsletter")).toBeNull();
5262expect(normalizeWhatsAppTarget("abc@s.whatsapp.net")).toBeNull();
5363expect(normalizeWhatsAppTarget("abc@newsletter")).toBeNull();
5464});
@@ -95,7 +105,7 @@ describe("isWhatsAppGroupJid", () => {
95105expect(isWhatsAppGroupJid("120363401234567890@g.us")).toBe(true);
96106expect(isWhatsAppGroupJid("123456789-987654321@g.us")).toBe(true);
97107expect(isWhatsAppGroupJid("whatsapp:120363401234567890@g.us")).toBe(true);
98-expect(isWhatsAppGroupJid("whatsapp:group:120363401234567890@g.us")).toBe(false);
108+expect(isWhatsAppGroupJid("whatsapp:group:120363401234567890@g.us")).toBe(true);
99109expect(isWhatsAppGroupJid("x@g.us")).toBe(false);
100110expect(isWhatsAppGroupJid("@g.us")).toBe(false);
101111expect(isWhatsAppGroupJid("120@g.usx")).toBe(false);
@@ -114,7 +124,20 @@ describe("looksLikeWhatsAppTargetId", () => {
114124expect(looksLikeWhatsAppTargetId("whatsapp:+15555550123")).toBe(true);
115125expect(looksLikeWhatsAppTargetId("15555550123@c.us")).toBe(true);
116126expect(looksLikeWhatsAppTargetId("120363401234567890@newsletter")).toBe(true);
127+expect(looksLikeWhatsAppTargetId("whatsapp:group:120363401234567890@g.us")).toBe(true);
117128expect(looksLikeWhatsAppTargetId("+15555550123")).toBe(true);
118129expect(looksLikeWhatsAppTargetId("")).toBe(false);
119130});
120131});
132+133+describe("resolveWhatsAppOutboundTarget", () => {
134+it("accepts group-prefixed WhatsApp group JIDs", () => {
135+expect(
136+resolveWhatsAppOutboundTarget({
137+to: "whatsapp:group:120363401234567890@g.us",
138+allowFrom: undefined,
139+mode: "explicit",
140+}),
141+).toEqual({ ok: true, to: "120363401234567890@g.us" });
142+});
143+});
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。