]> Cypherpunks repositories - gostls13.git/commitdiff
testing: use temp dir without symlinks in TestChdir/relative
authorDmitri Shuralyov <dmitshur@golang.org>
Tue, 20 Aug 2024 14:07:05 +0000 (10:07 -0400)
committerGopher Robot <gobot@golang.org>
Tue, 20 Aug 2024 17:15:47 +0000 (17:15 +0000)
When paths with symlinks are involved, it's not viable to compare them
with string equality. Don't use a temporary directory with symlinks in
it as input, so the test works in more environments.

For #62516.

Change-Id: I95d774365cc2f90eb0ffcffa61229ed5cee43e3e
Reviewed-on: https://go-review.googlesource.com/c/go/+/607035
Reviewed-by: Ian Lance Taylor <iant@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
src/testing/testing_test.go

index ff674fc3d1791313b29a03d8127e3febfff71e36..1dd2039399b6cf81c0470ea2245a753145b5931a 100644 (file)
@@ -293,7 +293,11 @@ func TestChdir(t *testing.T) {
        }
        defer os.Chdir(oldDir)
 
-       tmp := t.TempDir()
+       // The "relative" test case relies on tmp not being a symlink.
+       tmp, err := filepath.EvalSymlinks(t.TempDir())
+       if err != nil {
+               t.Fatal(err)
+       }
        rel, err := filepath.Rel(oldDir, tmp)
        if err != nil {
                t.Fatal(err)