From 8c853766b323bfc0e29a05110639b3c7fc87907a Mon Sep 17 00:00:00 2001 From: Quentin Nicolini Date: Sat, 30 Oct 2021 13:51:40 +0200 Subject: [PATCH 1/2] [Unit Test] messages: getMessage --- tests/helpers/messages/getMessage.ts | 22 ++++++++++++++++++++++ tests/mod.ts | 8 ++++++++ 2 files changed, 30 insertions(+) create mode 100644 tests/helpers/messages/getMessage.ts diff --git a/tests/helpers/messages/getMessage.ts b/tests/helpers/messages/getMessage.ts new file mode 100644 index 000000000..8b4e8fff0 --- /dev/null +++ b/tests/helpers/messages/getMessage.ts @@ -0,0 +1,22 @@ +import { Bot } from "../../../src/bot.ts"; +import {assertEquals, assertExists} from "../../deps.ts"; +import { delayUntil } from "../../utils.ts"; + +export async function getMessageTest(bot: Bot, channelId: bigint, t: Deno.TestContext) { + const message = await bot.helpers.sendMessage(channelId, "Hello World!"); + + // Assertions + assertExists(message); + // Delay the execution by to allow MESSAGE_CREATE event to be processed + await delayUntil(10000, () => bot.cache.messages.has(message.id)); + // Make sure the message was created. + if (!bot.cache.messages.has(message.id)) { + throw new Error("The message seemed to be sent but it was not cached. Reason: ${reason}"); + } + + // Fetch the message + const fetchedMessage = await bot.helpers.getMessage(channelId, message.id); + // Check if getMessage has worked + assertEquals(fetchedMessage.id, message.id); + assertEquals(fetchedMessage.content, message.content); +} diff --git a/tests/mod.ts b/tests/mod.ts index 3dc66bdd6..36a48fe00 100644 --- a/tests/mod.ts +++ b/tests/mod.ts @@ -6,6 +6,7 @@ import { delayUntil } from "./utils.ts"; // CONDUCT LOCAL TESTS FIRST BEFORE RUNNING API TEST import "./local.ts"; +import {getMessageTest} from "./helpers/messages/getMessage.ts"; Deno.test("[Bot] - Starting Tests", async (t) => { // CHANGE TO TRUE WHEN DEBUGGING SANITIZATION ERRORS @@ -104,6 +105,13 @@ Deno.test("[Bot] - Starting Tests", async (t) => { }, ...sanitizeMode, }), + t.step({ + name: "[message] fetch a message", + fn: async (t) => { + await getMessageTest(bot, channel.id, t); + }, + ...sanitizeMode, + }), ]); }); }); From 73fea75ff7bea35ad441479e530499ff429a488f Mon Sep 17 00:00:00 2001 From: TriForMine Date: Sat, 30 Oct 2021 11:52:20 +0000 Subject: [PATCH 2/2] change: prettier code --- tests/helpers/messages/getMessage.ts | 2 +- tests/mod.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/helpers/messages/getMessage.ts b/tests/helpers/messages/getMessage.ts index 8b4e8fff0..58c037322 100644 --- a/tests/helpers/messages/getMessage.ts +++ b/tests/helpers/messages/getMessage.ts @@ -1,5 +1,5 @@ import { Bot } from "../../../src/bot.ts"; -import {assertEquals, assertExists} from "../../deps.ts"; +import { assertEquals, assertExists } from "../../deps.ts"; import { delayUntil } from "../../utils.ts"; export async function getMessageTest(bot: Bot, channelId: bigint, t: Deno.TestContext) { diff --git a/tests/mod.ts b/tests/mod.ts index 36a48fe00..5afc7cacc 100644 --- a/tests/mod.ts +++ b/tests/mod.ts @@ -6,7 +6,7 @@ import { delayUntil } from "./utils.ts"; // CONDUCT LOCAL TESTS FIRST BEFORE RUNNING API TEST import "./local.ts"; -import {getMessageTest} from "./helpers/messages/getMessage.ts"; +import { getMessageTest } from "./helpers/messages/getMessage.ts"; Deno.test("[Bot] - Starting Tests", async (t) => { // CHANGE TO TRUE WHEN DEBUGGING SANITIZATION ERRORS