From 5051c44e0d2463b3b564b96ab668c43b3a6ad264 Mon Sep 17 00:00:00 2001 From: Skillz4Killz <23035000+Skillz4Killz@users.noreply.github.com> Date: Sat, 30 Oct 2021 21:26:01 +0000 Subject: [PATCH] pin message tests Closes #1287 #1305 #1306 #1288 --- tests/helpers/messages/pin.ts | 18 ++++++++++++++++++ tests/mod.ts | 10 ++++++++++ 2 files changed, 28 insertions(+) create mode 100644 tests/helpers/messages/pin.ts diff --git a/tests/helpers/messages/pin.ts b/tests/helpers/messages/pin.ts new file mode 100644 index 000000000..962d9beb1 --- /dev/null +++ b/tests/helpers/messages/pin.ts @@ -0,0 +1,18 @@ +import { Bot } from "../../../src/bot.ts"; +import { assertEquals } from "../../deps.ts"; + +export async function pinMessageTests(bot: Bot, channelId: bigint, messageId: bigint, t: Deno.TestContext) { + let pinned = false; + + bot.events.channelPinsUpdate = function (bot, payload) { + if (payload.channelId === channelId) pinned = !pinned; + } + + await bot.helpers.pinMessage(channelId, messageId); + + assertEquals(true, pinned); + + await bot.helpers.unpinMessage(channelId, messageId); + + assertEquals(false, pinned); +} \ No newline at end of file diff --git a/tests/mod.ts b/tests/mod.ts index 9f4d79934..2491f9d2d 100644 --- a/tests/mod.ts +++ b/tests/mod.ts @@ -17,6 +17,7 @@ import { getMessageTest } from "./helpers/messages/getMessage.ts"; import { addReactionTest } from "./helpers/messages/addReaction.ts"; import { editMessageTest } from "./helpers/messages/editMessage.ts"; import { fetchSingleMemberTest } from "./helpers/members/fetchMembers.ts"; +import { pinMessageTests } from "./helpers/messages/pin.ts"; Deno.test("[Bot] - Starting Tests", async (t) => { // CHANGE TO TRUE WHEN DEBUGGING SANITIZATION ERRORS @@ -89,6 +90,8 @@ Deno.test("[Bot] - Starting Tests", async (t) => { // ALL MESSAGE RELATED TESTS THAT DEPEND ON AN EXISTING CHANNEL await t.step("Message related tests", async (t) => { + const message = await bot.helpers.sendMessage(channel.id, "Hello Skillz"); + // CONDUCT ALL TESTS RELATED TO A MESSAGE HERE await Promise.all([ t.step({ @@ -203,6 +206,13 @@ Deno.test("[Bot] - Starting Tests", async (t) => { }, ...sanitizeMode, }), + t.step({ + name: "[message] pin a message", + fn: async (t) => { + await pinMessageTests(bot, channel.id, message.id, t); + }, + ...sanitizeMode, + }), ]); }); });