2025-11-05 17:04:23 -03:00

62 lines
1.3 KiB
JavaScript

import jid from "@xmpp/jid";
import { parse } from "./index.js";
test("parse", () => {
expect(
parse(
"xmpp://guest@example.com/support@example.com/truc?message;subject=Hello%20World",
),
).toEqual({
authority: jid("guest@example.com"),
path: jid("support@example.com/truc"),
query: {
type: "message",
params: {
subject: "Hello World",
},
},
});
expect(jid("foobar")).toEqual(jid("foobar"));
expect(
parse(
"xmpp:support@example.com/truc?message;subject=Hello%20World;body=foobar",
),
).toEqual({
path: jid("support@example.com/truc"),
query: {
type: "message",
params: {
subject: "Hello World",
body: "foobar",
},
},
});
expect(parse("xmpp:support@example.com/truc")).toEqual({
path: jid("support@example.com/truc"),
});
expect(parse("xmpp:support@example.com/")).toEqual({
path: jid("support@example.com/"),
});
expect(parse("xmpp:support@example.com/?foo")).toEqual({
path: jid("support@example.com/"),
query: {
type: "foo",
params: {},
},
});
expect(parse("xmpp:support@example.com?foo")).toEqual({
path: jid("support@example.com"),
query: {
type: "foo",
params: {},
},
});
});