package pathutil_test import ( "path/filepath" "testing" "proxyctl/internal/pathutil" ) func TestWithinUsesComponentBoundaries(t *testing.T) { parent := filepath.Join(string(filepath.Separator), "home", "alice") for _, test := range []struct { name string path string want bool }{ {name: "same", path: parent, want: true}, {name: "child", path: filepath.Join(parent, ".config", "proxyctl"), want: true}, {name: "cleaned child", path: filepath.Join(parent, "tmp", "..", ".config"), want: true}, {name: "parent", path: filepath.Dir(parent), want: false}, {name: "sibling prefix", path: parent + "-backup", want: false}, } { t.Run(test.name, func(t *testing.T) { if got := pathutil.Within(test.path, parent); got != test.want { t.Fatalf("Within(%q, %q) = %v, want %v", test.path, parent, got, test.want) } }) } }