add tests
All checks were successful
PR Check / lint-and-format (pull_request) Successful in 20s

This commit is contained in:
Mylloon 2024-10-14 23:21:10 +02:00
parent aee0557bb9
commit 4ac6ec0a9d
Signed by: Anri
GPG key ID: A82D63DFF8D1317F

View file

@ -0,0 +1,66 @@
import { Attachment, Collection, EmbedBuilder } from "discord.js";
import { handleAttachments } from "../../../utils/events/citation";
/**
* Generate a new random string
* @returns random string
*/
const newKey = () => Math.random().toString(36).substring(2);
describe("Attachements Handler", () => {
const map = new Map([
["e_attachements", "yes_s"],
["e_attachement", "no_s"],
]);
{
const name = "One image";
test(name, () => {
const embedExpected = new EmbedBuilder();
embedExpected.setImage("http://url");
const embedTest = new EmbedBuilder();
handleAttachments(
map,
embedTest,
new Collection([[newKey(), { name: "image.png", url: "http://url" } as Attachment]]),
);
expect(embedTest).toStrictEqual(embedExpected);
});
}
{
const name = "One link";
test(name, () => {
const embedExpected = new EmbedBuilder();
embedExpected.addFields({ name: "no_s", value: "[f](url)" });
const embedTest = new EmbedBuilder();
handleAttachments(
map,
embedTest,
new Collection([[newKey(), { name: "f", url: "url" } as Attachment]]),
);
expect(embedTest).toStrictEqual(embedExpected);
});
}
{
const name = "Two files";
test(name, () => {
const embedExpected = new EmbedBuilder();
embedExpected.addFields({ name: "yes_s", value: "[f](url), [f](url)" });
const embedTest = new EmbedBuilder();
handleAttachments(
map,
embedTest,
new Collection([
[newKey(), { name: "f", url: "url" } as Attachment],
[newKey(), { name: "f", url: "url" } as Attachment],
]),
);
expect(embedTest).toStrictEqual(embedExpected);
});
}
});