diff options
author | Joe Chen <jc@unknwon.io> | 2022-06-07 20:34:46 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-07 20:34:46 +0800 |
commit | 2ca014250fbf0bba94c914d9e43b1f6d8eca3bb0 (patch) | |
tree | adfa9aa312ce21c2e07c9cac92a6d25c0cb94e96 /internal/pathutil/pathutil_test.go | |
parent | 325904ce5a8579434618dfaea8ad5dd973965fcc (diff) |
pathutil: check both styles of `os.PathSeparator` (#7020)
Diffstat (limited to 'internal/pathutil/pathutil_test.go')
-rw-r--r-- | internal/pathutil/pathutil_test.go | 63 |
1 files changed, 47 insertions, 16 deletions
diff --git a/internal/pathutil/pathutil_test.go b/internal/pathutil/pathutil_test.go index eb8cc176..d20e537a 100644 --- a/internal/pathutil/pathutil_test.go +++ b/internal/pathutil/pathutil_test.go @@ -12,38 +12,69 @@ import ( func TestClean(t *testing.T) { tests := []struct { - path string - expVal string + path string + wantVal string }{ { - path: "../../../readme.txt", - expVal: "readme.txt", + path: "../../../readme.txt", + wantVal: "readme.txt", }, { - path: "a/../../../readme.txt", - expVal: "readme.txt", + path: "a/../../../readme.txt", + wantVal: "readme.txt", }, { - path: "/../a/b/../c/../readme.txt", - expVal: "a/readme.txt", + path: "/../a/b/../c/../readme.txt", + wantVal: "a/readme.txt", }, { - path: "/a/readme.txt", - expVal: "a/readme.txt", + path: "/a/readme.txt", + wantVal: "a/readme.txt", }, { - path: "/", - expVal: "", + path: "/", + wantVal: "", }, { - path: "/a/b/c/readme.txt", - expVal: "a/b/c/readme.txt", + path: "/a/b/c/readme.txt", + wantVal: "a/b/c/readme.txt", + }, + + // Windows-specific + { + path: `..\..\..\readme.txt`, + wantVal: "readme.txt", + }, + { + path: `a\..\..\..\readme.txt`, + wantVal: "readme.txt", + }, + { + path: `\..\a\b\..\c\..\readme.txt`, + wantVal: "a/readme.txt", + }, + { + path: `\a\readme.txt`, + wantVal: "a/readme.txt", + }, + { + path: `..\..\..\../README.md`, + wantVal: "README.md", + }, + { + path: `\`, + wantVal: "", + }, + + { + path: `\a\b\c\readme.txt`, + wantVal: `a/b/c/readme.txt`, }, } for _, test := range tests { - t.Run("", func(t *testing.T) { - assert.Equal(t, test.expVal, Clean(test.path)) + t.Run(test.path, func(t *testing.T) { + assert.Equal(t, test.wantVal, Clean(test.path)) }) } } |