diff options
| author | qmuntal <quimmuntal@gmail.com> | 2024-02-23 13:38:27 +0100 |
|---|---|---|
| committer | Quim Muntal <quimmuntal@gmail.com> | 2024-02-26 07:59:11 +0000 |
| commit | 7db8b9e518311c1ee707a3f2fe6343e7c595c936 (patch) | |
| tree | 4bcbf16f01f05c4b765e85be5e5d49b15ee384e4 /src/path/filepath/path_test.go | |
| parent | 08d9397170e5870b72a95233e8e4ec43d2d70e30 (diff) | |
| download | go-7db8b9e518311c1ee707a3f2fe6343e7c595c936.tar.xz | |
path/filepath: support multiple TestAbs runs on Windows
TestAbs modifies the absTests global variable on Windows, which makes
the test to fail if it is run more than once, i.e. executing
"go test -run ^TestAbs$ -count 2 path/filepath".
This CL fixes the issue by clipping the absTests slices before
appending more elements to it.
Change-Id: I8f1144b2f10b8fa1b847e6639c0bda7baafc2dac
Reviewed-on: https://go-review.googlesource.com/c/go/+/566396
Reviewed-by: Bryan Mills <bcmills@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Damien Neil <dneil@google.com>
Diffstat (limited to 'src/path/filepath/path_test.go')
| -rw-r--r-- | src/path/filepath/path_test.go | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/path/filepath/path_test.go b/src/path/filepath/path_test.go index ed3990859b..c96a758c69 100644 --- a/src/path/filepath/path_test.go +++ b/src/path/filepath/path_test.go @@ -1403,6 +1403,9 @@ func TestAbs(t *testing.T) { } } + // Make sure the global absTests slice is not + // modified by multiple invocations of TestAbs. + tests := absTests if runtime.GOOS == "windows" { vol := filepath.VolumeName(root) var extra []string @@ -1413,7 +1416,7 @@ func TestAbs(t *testing.T) { path = vol + path extra = append(extra, path) } - absTests = append(absTests, extra...) + tests = append(slices.Clip(tests), extra...) } err = os.Chdir(absTestDirs[0]) @@ -1421,7 +1424,7 @@ func TestAbs(t *testing.T) { t.Fatal("chdir failed: ", err) } - for _, path := range absTests { + for _, path := range tests { path = strings.ReplaceAll(path, "$", root) info, err := os.Stat(path) if err != nil { |
