forked from EduCraft/curriculum-project-hub
feat: add slash command help
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
import { describe, expect, it } from "vitest";
|
||||
import { parseSlashHelpSubcommand, parseSlashInvocation } from "../../src/feishu/slashCommands.js";
|
||||
|
||||
describe("slash command parser", () => {
|
||||
it("parses a slash invocation without resolving it", () => {
|
||||
expect(parseSlashInvocation("/new")).toEqual({ name: "new", args: [] });
|
||||
expect(parseSlashInvocation("/review 看看这节")).toEqual({ name: "review", args: ["看看这节"] });
|
||||
expect(parseSlashInvocation("写教案")).toBeNull();
|
||||
});
|
||||
|
||||
it("parses help subcommands only in the exact /<command> help form", () => {
|
||||
expect(parseSlashHelpSubcommand({ name: "new", args: ["help"] })).toBe("new");
|
||||
expect(parseSlashHelpSubcommand({ name: "unknown", args: ["help"] })).toBe("unknown");
|
||||
expect(parseSlashHelpSubcommand({ name: "new", args: ["help", "please"] })).toBeNull();
|
||||
expect(parseSlashHelpSubcommand({ name: "help", args: ["new"] })).toBeNull();
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user