Commit dfb2af60 authored by Ivan Krasin's avatar Ivan Krasin Committed by Russ Cox

path: add IsAbs

R=rsc, imkrasin, r
CC=golang-dev
https://golang.org/cl/1969042
parent e56c0555
......@@ -208,3 +208,9 @@ func Base(name string) string {
}
return name
}
// IsAbs returns true if the path is absolute.
func IsAbs(path string) bool {
// TODO: Add Windows support
return strings.HasPrefix(path, "/")
}
......@@ -307,3 +307,27 @@ func TestBase(t *testing.T) {
}
}
}
type IsAbsTest struct {
path string
isAbs bool
}
var isAbsTests = []IsAbsTest{
IsAbsTest{"", false},
IsAbsTest{"/", true},
IsAbsTest{"/usr/bin/gcc", true},
IsAbsTest{"..", false},
IsAbsTest{"/a/../bb", true},
IsAbsTest{".", false},
IsAbsTest{"./", false},
IsAbsTest{"lala", false},
}
func TestIsAbs(t *testing.T) {
for _, test := range isAbsTests {
if r := IsAbs(test.path); r != test.isAbs {
t.Errorf("IsAbs(%q) = %v, want %v", test.path, r, test.isAbs)
}
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment