| import { describe, expect, it } from "vitest"; |
| import { |
| isGoogleChatSpaceTarget, |
| isGoogleChatUserTarget, |
| normalizeGoogleChatTarget, |
| } from "./targets.js"; |
|
|
| describe("normalizeGoogleChatTarget", () => { |
| it("normalizes provider prefixes", () => { |
| expect(normalizeGoogleChatTarget("googlechat:users/123")).toBe("users/123"); |
| expect(normalizeGoogleChatTarget("google-chat:spaces/AAA")).toBe("spaces/AAA"); |
| expect(normalizeGoogleChatTarget("gchat:user:User@Example.com")).toBe("users/user@example.com"); |
| }); |
|
|
| it("normalizes email targets to users/<email>", () => { |
| expect(normalizeGoogleChatTarget("User@Example.com")).toBe("users/user@example.com"); |
| expect(normalizeGoogleChatTarget("users/User@Example.com")).toBe("users/user@example.com"); |
| }); |
|
|
| it("preserves space targets", () => { |
| expect(normalizeGoogleChatTarget("space:spaces/BBB")).toBe("spaces/BBB"); |
| expect(normalizeGoogleChatTarget("spaces/CCC")).toBe("spaces/CCC"); |
| }); |
| }); |
|
|
| describe("target helpers", () => { |
| it("detects user and space targets", () => { |
| expect(isGoogleChatUserTarget("users/abc")).toBe(true); |
| expect(isGoogleChatSpaceTarget("spaces/abc")).toBe(true); |
| expect(isGoogleChatUserTarget("spaces/abc")).toBe(false); |
| }); |
| }); |
|
|