fix: 收敛受控 CLI 调用与诊断
This commit is contained in:
@@ -86,10 +86,11 @@ describe("ssh bounded progressive help", () => {
|
||||
test("renders compact top-level and scoped help without dump fallback", () => {
|
||||
const top = runTransHelp("--help");
|
||||
expect(Buffer.byteLength(top, "utf8")).toBeLessThan(2_048);
|
||||
expect(top.trim().split("\n")).toHaveLength(10);
|
||||
expect(top.trim().split("\n")).toHaveLength(11);
|
||||
expect(top).toContain("usage: trans <route> <operation>");
|
||||
expect(top).toContain("transfer: upload | download");
|
||||
expect(top).toContain("scoped help: trans --help <operation>");
|
||||
expect(top).toContain("cwd: host/workspace uses <provider>:/absolute/workspace; k3s exec uses --cwd");
|
||||
expect(top).not.toContain("outputTruncated");
|
||||
expect(top).not.toContain("dump");
|
||||
|
||||
@@ -102,6 +103,10 @@ describe("ssh bounded progressive help", () => {
|
||||
expect(applyPatch).toContain("usage: trans <route> apply-patch");
|
||||
expect(applyPatch).not.toContain("outputTruncated");
|
||||
|
||||
const exec = runTransHelp("--help", "exec");
|
||||
expect(exec).toContain("trans <provider>:/absolute/workspace exec <command>");
|
||||
expect(exec).toContain("k3s:<namespace>:<workload>");
|
||||
|
||||
const download = runTransHelp("--help", "download");
|
||||
expect(download.trim().split("\n").length).toBeLessThanOrEqual(8);
|
||||
expect(download).toContain("TRANS HELP download");
|
||||
@@ -159,4 +164,17 @@ describe("ssh bounded progressive help", () => {
|
||||
expect(result.stdout).not.toContain("stack");
|
||||
expect(result.stdout).not.toContain(" at ");
|
||||
});
|
||||
|
||||
test("rejects the moved root entrypoint locally with one exact replacement", () => {
|
||||
const result = spawnSync("bun", ["scripts/cli.ts", "trans", "NC01:/root/unidesk", "git", "status", "--short"], {
|
||||
cwd: repoRoot,
|
||||
env: { ...process.env, UNIDESK_TRANS_REPO_ROOT: repoRoot },
|
||||
encoding: "utf8",
|
||||
});
|
||||
expect(result.status).toBe(1);
|
||||
expect(result.stderr).toBe("");
|
||||
expect(result.stdout).toContain("ERROR cli-input/trans-root-cli-entrypoint-moved");
|
||||
expect(result.stdout).toContain("usage: trans NC01:/root/unidesk git status --short");
|
||||
expect(result.stdout).not.toContain("stack");
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user