test: dedupe twitch access control assertions
This commit is contained in:
@@ -49,6 +49,21 @@ describe("checkTwitchAccessControl", () => {
|
||||
return result;
|
||||
}
|
||||
|
||||
function expectAllowedAccessCheck(params: {
|
||||
account?: Partial<TwitchAccountConfig>;
|
||||
message?: Partial<TwitchChatMessage>;
|
||||
}) {
|
||||
const result = runAccessCheck({
|
||||
account: params.account,
|
||||
message: {
|
||||
message: "@testbot hello",
|
||||
...params.message,
|
||||
},
|
||||
});
|
||||
expect(result.allowed).toBe(true);
|
||||
return result;
|
||||
}
|
||||
|
||||
describe("when no restrictions are configured", () => {
|
||||
it("allows messages that mention the bot (default requireMention)", () => {
|
||||
const result = runAccessCheck({
|
||||
@@ -109,21 +124,11 @@ describe("checkTwitchAccessControl", () => {
|
||||
|
||||
describe("allowFrom allowlist", () => {
|
||||
it("allows users in the allowlist", () => {
|
||||
const account: TwitchAccountConfig = {
|
||||
...mockAccount,
|
||||
allowFrom: ["123456", "789012"],
|
||||
};
|
||||
const message: TwitchChatMessage = {
|
||||
...mockMessage,
|
||||
message: "@testbot hello",
|
||||
};
|
||||
|
||||
const result = checkTwitchAccessControl({
|
||||
message,
|
||||
account,
|
||||
botUsername: "testbot",
|
||||
const result = expectAllowedAccessCheck({
|
||||
account: {
|
||||
allowFrom: ["123456", "789012"],
|
||||
},
|
||||
});
|
||||
expect(result.allowed).toBe(true);
|
||||
expect(result.matchKey).toBe("123456");
|
||||
expect(result.matchSource).toBe("allowlist");
|
||||
});
|
||||
@@ -283,21 +288,11 @@ describe("checkTwitchAccessControl", () => {
|
||||
});
|
||||
|
||||
it("allows all users when role is 'all'", () => {
|
||||
const account: TwitchAccountConfig = {
|
||||
...mockAccount,
|
||||
allowedRoles: ["all"],
|
||||
};
|
||||
const message: TwitchChatMessage = {
|
||||
...mockMessage,
|
||||
message: "@testbot hello",
|
||||
};
|
||||
|
||||
const result = checkTwitchAccessControl({
|
||||
message,
|
||||
account,
|
||||
botUsername: "testbot",
|
||||
const result = expectAllowedAccessCheck({
|
||||
account: {
|
||||
allowedRoles: ["all"],
|
||||
},
|
||||
});
|
||||
expect(result.allowed).toBe(true);
|
||||
expect(result.matchKey).toBe("all");
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user