Files
oh-my-pi/packages/coding-agent/test/cli-advisor-flag.test.ts
T
can1357 ce9db56066 feat(coding-agent): added advisor CLI flag for runtime advisor enabling
- Added a new `--advisor` flag to argument parsing and launch flag definitions.
- Applied the parsed `advisor` flag as a runtime-only override of `advisor.enabled` during startup.
- Updated advisor-related docs and added parseArgs tests for `--advisor` behavior and position handling.
2026-06-17 02:14:11 +02:00

39 lines
1.3 KiB
TypeScript

import { describe, expect, it } from "bun:test";
import { parseArgs } from "@oh-my-pi/pi-coding-agent/cli/args";
describe("parseArgs — --advisor flag", () => {
it("parses --advisor as a boolean flag", () => {
const result = parseArgs(["--advisor"]);
expect(result.advisor).toBe(true);
});
it("defaults advisor to undefined when flag is not provided", () => {
const result = parseArgs([]);
expect(result.advisor).toBeUndefined();
});
it("parses --advisor with other flags", () => {
const result = parseArgs(["--advisor", "--model", "opus", "hello"]);
expect(result.advisor).toBe(true);
expect(result.model).toBe("opus");
expect(result.messages).toContain("hello");
});
it("parses --advisor in any position", () => {
const result1 = parseArgs(["--advisor", "prompt"]);
const result2 = parseArgs(["prompt", "--advisor"]);
const result3 = parseArgs(["--model", "opus", "--advisor", "prompt"]);
expect(result1.advisor).toBe(true);
expect(result2.advisor).toBe(true);
expect(result3.advisor).toBe(true);
});
it("does not consume a value after --advisor", () => {
const result = parseArgs(["--advisor", "--model", "opus"]);
expect(result.advisor).toBe(true);
expect(result.model).toBe("opus");
expect(result.messages).toEqual([]);
});
});