package cockpit import ( "path/filepath" "testing" ) func TestRelUnder_RejectsEscapes(t *testing.T) { bad := []string{ "", "/etc/passwd", "../escape", "../../etc/passwd", filepath.Join("a", "..", "..", "b"), } for _, p := range bad { if _, err := relUnder(p); err == nil { t.Errorf("relUnder(%q) accepted an escaping/absolute path", p) } } } func TestRelUnder_AcceptsCleanRelative(t *testing.T) { good := []string{ "AGENTS.md", "GEMINI.md", ".claude/skills/handover/SKILL.md", ".cursor/rules/handover.mdc", "a/b/c.md", } for _, p := range good { if _, err := relUnder(p); err != nil { t.Errorf("relUnder(%q) rejected a clean relative path: %v", p, err) } } }