fix: keep Slack thread replies in thread

This commit is contained in:
Peter Steinberger
2026-01-06 01:09:25 +01:00
parent 291c6f3b60
commit 5356adba8f
4 changed files with 46 additions and 9 deletions

View File

@@ -31,12 +31,11 @@ vi.mock("../config/sessions.js", () => ({
vi.mock("discord.js", () => {
const handlers = new Map<string, Set<(...args: unknown[]) => void>>();
let lastClient: Client | null = null;
class Client {
static lastClient: Client | null = null;
user = { id: "bot-id", tag: "bot#1" };
constructor() {
lastClient = this;
Client.lastClient = this;
}
on(event: string, handler: (...args: unknown[]) => void) {
if (!handlers.has(event)) handlers.set(event, new Set());
@@ -50,7 +49,7 @@ vi.mock("discord.js", () => {
}
emit(event: string, ...args: unknown[]) {
for (const handler of handlers.get(event) ?? []) {
void handler(...args);
void Promise.resolve(handler(...args));
}
}
login = vi.fn().mockResolvedValue(undefined);
@@ -59,7 +58,7 @@ vi.mock("discord.js", () => {
return {
Client,
__getLastClient: () => lastClient,
__getLastClient: () => Client.lastClient,
Events: {
ClientReady: "ready",
Error: "error",