From d03aa48ff3062b3c61afda13cb8f824ff6c5a8ad Mon Sep 17 00:00:00 2001 From: Mylloon Date: Fri, 27 Sep 2024 12:39:42 +0200 Subject: [PATCH] add misc tests --- tests/misc.test.ts | 152 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 152 insertions(+) create mode 100644 tests/misc.test.ts diff --git a/tests/misc.test.ts b/tests/misc.test.ts new file mode 100644 index 0000000..f709e90 --- /dev/null +++ b/tests/misc.test.ts @@ -0,0 +1,152 @@ +const { + cleanCodeBlock, + emojiPng, + isImage, + removeExtension, + splitFilenameExtensions, + // eslint-disable-next-line @typescript-eslint/no-require-imports +} = require("../src/utils/misc"); + +describe("Filename splitter", () => { + { + const name = "test.js"; + test(name, () => { + expect(splitFilenameExtensions(name)).toStrictEqual({ file: "test", ext: "js" }); + }); + } + { + const name = ".env"; + test(name, () => { + expect(splitFilenameExtensions(name)).toStrictEqual({ file: ".env", ext: undefined }); + }); + } + { + const name = ".env.test"; + test(name, () => { + expect(splitFilenameExtensions(name)).toStrictEqual({ + file: ".env", + ext: "test", + }); + }); + } + { + const name = "file.test.js"; + test(name, () => { + expect(splitFilenameExtensions(name)).toStrictEqual({ file: "file.test", ext: "js" }); + }); + } +}); + +describe("Extension remover", () => { + { + const name = "test.js"; + test(name, () => { + expect(removeExtension(name)).toBe("test"); + }); + } + { + const name = ".env"; + test(name, () => { + expect(removeExtension(name)).toBe(".env"); + }); + } + { + const name = ".env.test"; + test(name, () => { + expect(removeExtension(name)).toBe(".env"); + }); + } + { + const name = "file.test.js"; + test(name, () => { + expect(removeExtension(name)).toBe("file.test"); + }); + } +}); + +describe("Image checker", () => { + { + const name = "image.Png"; + test(name, () => { + expect(isImage(name)).toBe(true); + }); + } + { + const name = "image.jpeg"; + test(name, () => { + expect(isImage(name)).toBe(true); + }); + } + { + const name = "image.wav"; + test(name, () => { + expect(isImage(name)).toBe(false); + }); + } + { + const name = "image.jpg"; + test(name, () => { + expect(isImage(name)).toBe(true); + }); + } + { + const name = "image.webP"; + test(name, () => { + expect(isImage(name)).toBe(true); + }); + } + { + const name = "image.GIF"; + test(name, () => { + expect(isImage(name)).toBe(true); + }); + } +}); + +describe("Code block cleaner", () => { + { + const name = "salut"; + test(name, () => { + expect(cleanCodeBlock(name)).toBe("`salut`"); + }); + } + { + const name = "<@158260864623968257> ça va ?"; + test(name, () => { + expect(cleanCodeBlock(name)).toBe("<@158260864623968257>` ça va ?`"); + }); + } + { + const name = "t'as vu la vidéo ? https://youtu.be/dQw4w9WgXcQ"; + test(name, () => { + expect(cleanCodeBlock(name)).toBe("`t'as vu la vidéo ? `https://youtu.be/dQw4w9WgXcQ"); + }); + } + { + const name = "t'as vu la vidéo ? https://youtu.be/dQw4w9WgXcQ elle est cool en vrai tqt"; + test(name, () => { + expect(cleanCodeBlock(name)).toBe( + "`t'as vu la vidéo ? `https://youtu.be/dQw4w9WgXcQ` elle est cool en vrai tqt`", + ); + }); + } +}); + +describe("test name", () => { + { + const name = "☺️"; + test(name, () => { + expect(emojiPng(name)).toBe( + "https://cdn.jsdelivr.net/gh/twitter/twemoji/assets/72x72/263a.png", + ); + }); + } + { + const name = "🍕"; + test(name, () => { + expect(emojiPng(name)).toBe( + "https://cdn.jsdelivr.net/gh/twitter/twemoji/assets/72x72/1f355.png", + ); + }); + } +});