test(infra): avoid host-specific exec path fixtures · openclaw/openclaw@0fbd975
vincentkoc
·
2026-05-29
·
via Recent Commits to openclaw:main
| Original file line number | Diff line number | Diff line change |
|---|
@@ -563,9 +563,9 @@ describe("exec approvals shell analysis", () => {
|
563 | 563 | describe("shell allowlist (chained commands)", () => { |
564 | 564 | it.each([ |
565 | 565 | { |
566 | | -allowlist: [{ pattern: "/usr/bin/obsidian-cli" }, { pattern: "/usr/bin/head" }], |
| 566 | +allowlist: [{ pattern: "/usr/bin/obsidian-cli" }, { pattern: "/opt/openclaw-test/head" }], |
567 | 567 | command: |
568 | | -"/usr/bin/obsidian-cli print-default && /usr/bin/obsidian-cli search foo | /usr/bin/head", |
| 568 | +"/usr/bin/obsidian-cli print-default && /usr/bin/obsidian-cli search foo | /opt/openclaw-test/head", |
569 | 569 | expectedAnalysisOk: true, |
570 | 570 | expectedAllowlistSatisfied: true, |
571 | 571 | }, |
@@ -689,12 +689,12 @@ describe("exec approvals shell analysis", () => {
|
689 | 689 | expect(result.segmentSatisfiedBy).toEqual([null]); |
690 | 690 | }); |
691 | 691 | |
692 | | -it.each(['/usr/bin/echo "foo && bar"', '/usr/bin/echo "foo\\" && bar"'])( |
| 692 | +it.each(['/opt/openclaw-test/echo "foo && bar"', '/opt/openclaw-test/echo "foo\\" && bar"'])( |
693 | 693 | "respects quoted chain separator for %s", |
694 | 694 | (command) => { |
695 | 695 | const result = evaluateShellAllowlist({ |
696 | 696 | command, |
697 | | -allowlist: [{ pattern: "/usr/bin/echo" }], |
| 697 | +allowlist: [{ pattern: "/opt/openclaw-test/echo" }], |
698 | 698 | safeBins: new Set(), |
699 | 699 | cwd: "/tmp", |
700 | 700 | }); |
|
| Original file line number | Diff line number | Diff line change |
|---|
@@ -463,21 +463,23 @@ describe("exec approvals safe bins", () => {
|
463 | 463 | argv: ["echo", "hello"], |
464 | 464 | resolution: { |
465 | 465 | rawExecutable: "echo", |
466 | | -resolvedPath: "/bin/echo", |
| 466 | +resolvedPath: "/opt/openclaw-test/bin/echo", |
467 | 467 | executableName: "echo", |
468 | 468 | }, |
469 | 469 | safeBins: normalizeSafeBins(["echo"]), |
470 | 470 | safeBinProfiles, |
| 471 | +trustedSafeBinDirs: new Set(["/opt/openclaw-test/bin"]), |
471 | 472 | }); |
472 | 473 | const deny = isSafeBinUsage({ |
473 | 474 | argv: ["echo", "hello", "world"], |
474 | 475 | resolution: { |
475 | 476 | rawExecutable: "echo", |
476 | | -resolvedPath: "/bin/echo", |
| 477 | +resolvedPath: "/opt/openclaw-test/bin/echo", |
477 | 478 | executableName: "echo", |
478 | 479 | }, |
479 | 480 | safeBins: normalizeSafeBins(["echo"]), |
480 | 481 | safeBinProfiles, |
| 482 | +trustedSafeBinDirs: new Set(["/opt/openclaw-test/bin"]), |
481 | 483 | }); |
482 | 484 | expect(allow).toBe(true); |
483 | 485 | expect(deny).toBe(false); |
|
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。