diff options
author | Rob Pike <r@golang.org> | 2011-12-22 14:08:34 -0800 |
---|---|---|
committer | Rob Pike <r@golang.org> | 2011-12-22 14:08:34 -0800 |
commit | 32a07f83e74a6940938464bce70bf514ae49ae53 (patch) | |
tree | 60fdd6bacb0c75f3f3a1ec0c819607b5ef0e7b49 /src/pkg/path/path_test.go | |
parent | 1a13d2b37a0b976812222f34b66f68eb684c9ce4 (diff) | |
download | go-32a07f83e74a6940938464bce70bf514ae49ae53.tar.gz |
path: Dir
There was Base but not Dir, so fill in the gap.
R=golang-dev, rsc
CC=golang-dev
http://codereview.appspot.com/5504076
Diffstat (limited to 'src/pkg/path/path_test.go')
-rw-r--r-- | src/pkg/path/path_test.go | 39 |
1 files changed, 31 insertions, 8 deletions
diff --git a/src/pkg/path/path_test.go b/src/pkg/path/path_test.go index 1fd57cc80..77f080433 100644 --- a/src/pkg/path/path_test.go +++ b/src/pkg/path/path_test.go @@ -8,11 +8,11 @@ import ( "testing" ) -type CleanTest struct { - path, clean string +type PathTest struct { + path, result string } -var cleantests = []CleanTest{ +var cleantests = []PathTest{ // Already clean {"", "."}, {"abc", "abc"}, @@ -64,8 +64,8 @@ var cleantests = []CleanTest{ func TestClean(t *testing.T) { for _, test := range cleantests { - if s := Clean(test.path); s != test.clean { - t.Errorf("Clean(%q) = %q, want %q", test.path, s, test.clean) + if s := Clean(test.path); s != test.result { + t.Errorf("Clean(%q) = %q, want %q", test.path, s, test.result) } } } @@ -148,7 +148,7 @@ func TestExt(t *testing.T) { } } -var basetests = []CleanTest{ +var basetests = []PathTest{ // Already clean {"", "."}, {".", "."}, @@ -165,8 +165,31 @@ var basetests = []CleanTest{ func TestBase(t *testing.T) { for _, test := range basetests { - if s := Base(test.path); s != test.clean { - t.Errorf("Base(%q) = %q, want %q", test.path, s, test.clean) + if s := Base(test.path); s != test.result { + t.Errorf("Base(%q) = %q, want %q", test.path, s, test.result) + } + } +} + +var dirtests = []PathTest{ + {"", "."}, + {".", "."}, + {"/.", "/"}, + {"/", "/"}, + {"////", "/"}, + {"/foo", "/"}, + {"x/", "x"}, + {"abc", "."}, + {"abc/def", "abc"}, + {"a/b/.x", "a/b"}, + {"a/b/c.", "a/b"}, + {"a/b/c.x", "a/b"}, +} + +func TestDir(t *testing.T) { + for _, test := range dirtests { + if s := Dir(test.path); s != test.result { + t.Errorf("Dir(%q) = %q, want %q", test.path, s, test.result) } } } |