Files
clawdbot/src/discord/probe.intents.test.ts
2026-01-08 22:22:17 +00:00

42 lines
1.3 KiB
TypeScript

import { describe, expect, it } from "vitest";
import { resolveDiscordPrivilegedIntentsFromFlags } from "./probe.js";
describe("resolveDiscordPrivilegedIntentsFromFlags", () => {
it("reports disabled when no bits set", () => {
expect(resolveDiscordPrivilegedIntentsFromFlags(0)).toEqual({
presence: "disabled",
guildMembers: "disabled",
messageContent: "disabled",
});
});
it("reports enabled when full intent bits set", () => {
const flags = (1 << 12) | (1 << 14) | (1 << 18);
expect(resolveDiscordPrivilegedIntentsFromFlags(flags)).toEqual({
presence: "enabled",
guildMembers: "enabled",
messageContent: "enabled",
});
});
it("reports limited when limited intent bits set", () => {
const flags = (1 << 13) | (1 << 15) | (1 << 19);
expect(resolveDiscordPrivilegedIntentsFromFlags(flags)).toEqual({
presence: "limited",
guildMembers: "limited",
messageContent: "limited",
});
});
it("prefers enabled over limited when both set", () => {
const flags =
(1 << 12) | (1 << 13) | (1 << 14) | (1 << 15) | (1 << 18) | (1 << 19);
expect(resolveDiscordPrivilegedIntentsFromFlags(flags)).toEqual({
presence: "enabled",
guildMembers: "enabled",
messageContent: "enabled",
});
});
});