feat(platform): add Discord onboarding and Velocity gate
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
import { describe, expect, it, vi } from "vitest";
|
||||
import { updateGuildNickname } from "../src/index";
|
||||
|
||||
describe("Discord nickname updates", () => {
|
||||
it("updates a member in the configured guild using bot authentication", async () => {
|
||||
const request = vi.fn<typeof fetch>().mockResolvedValue(new Response(null, { status: 204 }));
|
||||
|
||||
await updateGuildNickname(
|
||||
{ guildId: "123456789012345678", discordUserId: "987654321098765432", nickname: "Sam (Notch)", botToken: "secret" },
|
||||
request,
|
||||
);
|
||||
|
||||
expect(request).toHaveBeenCalledWith(
|
||||
"https://discord.com/api/v10/guilds/123456789012345678/members/987654321098765432",
|
||||
expect.objectContaining({ method: "PATCH", body: JSON.stringify({ nick: "Sam (Notch)" }) }),
|
||||
);
|
||||
});
|
||||
|
||||
it("reports Discord permission failures without pretending the nickname changed", async () => {
|
||||
const request = vi.fn<typeof fetch>().mockResolvedValue(new Response("Missing Permissions", { status: 403 }));
|
||||
await expect(
|
||||
updateGuildNickname(
|
||||
{ guildId: "123456789012345678", discordUserId: "987654321098765432", nickname: "Sam (Notch)", botToken: "secret" },
|
||||
request,
|
||||
),
|
||||
).rejects.toThrow("Discord nickname update failed (403)");
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user