Files
Booster-role/src/discord/registerCommands.test.ts
T

27 lines
867 B
TypeScript

import { describe, expect, test } from "bun:test";
import { registerGuildCommands, type DiscordRestClient } from "./registerCommands";
class FakeRestClient implements DiscordRestClient {
route: string | null = null;
body: unknown = null;
async put(route: string, input: { body: unknown }): Promise<unknown> {
this.route = route;
this.body = input.body;
return null;
}
}
describe("registerGuildCommands", () => {
test("registers booster role command to the configured guild", async () => {
const rest = new FakeRestClient();
await registerGuildCommands(rest, { clientId: "client", guildId: "guild" });
expect(rest.route).toBe("/applications/client/guilds/guild/commands");
expect(rest.body).toEqual([
expect.objectContaining({ name: "booster-role", description: "Manage your cosmetic booster role" })
]);
});
});