Files
openclaw/extensions/sms/src/phone.test.ts
2026-06-04 21:02:07 -04:00

24 lines
919 B
TypeScript

// Sms tests cover phone plugin behavior.
import { describe, expect, it } from "vitest";
import {
looksLikeSmsPhoneNumber,
normalizeSmsAllowFrom,
normalizeSmsPhoneNumber,
} from "./phone.js";
describe("SMS phone normalization", () => {
it("normalizes sms-prefixed E.164 phone numbers", () => {
expect(normalizeSmsPhoneNumber("sms:+1 (555) 123-4567")).toBe("+15551234567");
expect(normalizeSmsPhoneNumber("twilio-sms:+1 (555) 123-4567")).toBe("+15551234567");
expect(normalizeSmsAllowFrom("SMS:+44 20 7946 0958")).toBe("+442079460958");
expect(normalizeSmsAllowFrom("*")).toBe("*");
});
it("validates E.164-ish SMS targets", () => {
expect(looksLikeSmsPhoneNumber("+15551234567")).toBe(true);
expect(looksLikeSmsPhoneNumber("15551234567")).toBe(true);
expect(looksLikeSmsPhoneNumber("+01234567")).toBe(false);
expect(looksLikeSmsPhoneNumber("+1555")).toBe(false);
});
});