cmd/go: fix TestModFindModulePath on Windows
The os.RemoveAll(tg.tempdir) was not a good idea.
Change-Id: I6f78cff887044186649cbf3ee04a58abdbcb71e2
Reviewed-on: https://go-review.googlesource.com/123757
Run-TryBot: Russ Cox <rsc@golang.org>
Reviewed-by: Russ Cox <rsc@golang.org>
diff --git a/src/cmd/go/mod_test.go b/src/cmd/go/mod_test.go
index 4814ef8..8705478 100644
--- a/src/cmd/go/mod_test.go
+++ b/src/cmd/go/mod_test.go
@@ -12,6 +12,7 @@
"os/exec"
"path/filepath"
"regexp"
+ "runtime"
"sort"
"strings"
"testing"
@@ -213,23 +214,25 @@
t.Fatalf("FindModulePath = %q, %v, want %q, nil", path, err, "unexpected.com/z")
}
- // Empty dir outside GOPATH
- tg.must(os.RemoveAll(tg.tempdir))
- tg.must(os.MkdirAll(tg.path("gp"), 0777))
- tg.must(os.MkdirAll(tg.path("x"), 0777))
- cfg.BuildContext.GOPATH = tg.path("gp")
+ if runtime.GOOS == "windows" {
+ t.Skipf("windows removeall fails")
+ }
- path, err = modload.FindModulePath(tg.path("x"))
+ // Empty dir outside GOPATH
+ tg.must(os.MkdirAll(tg.path("gp1"), 0777))
+ tg.must(os.MkdirAll(tg.path("x1"), 0777))
+ cfg.BuildContext.GOPATH = tg.path("gp1")
+
+ path, err = modload.FindModulePath(tg.path("x1"))
if path != "" || err == nil {
t.Fatalf("FindModulePath() = %q, %v, want %q, %q", path, err, "", "cannot determine module path for source directory")
}
// Empty dir inside GOPATH
- tg.must(os.RemoveAll(tg.tempdir))
- tg.must(os.MkdirAll(tg.path("gp/src/x"), 0777))
- cfg.BuildContext.GOPATH = tg.path("gp")
+ tg.must(os.MkdirAll(tg.path("gp2/src/x"), 0777))
+ cfg.BuildContext.GOPATH = tg.path("gp2")
- path, err = modload.FindModulePath(tg.path("gp/src/x"))
+ path, err = modload.FindModulePath(tg.path("gp2/src/x"))
if path != "x" || err != nil {
t.Fatalf("FindModulePath() = %q, %v, want %q, nil", path, err, "x")
}
@@ -242,16 +245,15 @@
// Empty dir inside GOPATH, dir has symlink
// GOPATH = gp
// gplink -> gp
- tg.must(os.RemoveAll(tg.tempdir))
- tg.must(os.MkdirAll(tg.path("gp/src/x"), 0777))
- tg.must(os.Symlink(tg.path("gp"), tg.path("gplink")))
- cfg.BuildContext.GOPATH = tg.path("gp")
+ tg.must(os.MkdirAll(tg.path("gp3/src/x"), 0777))
+ tg.must(os.Symlink(tg.path("gp3"), tg.path("gplink3")))
+ cfg.BuildContext.GOPATH = tg.path("gp3")
- path, err = modload.FindModulePath(tg.path("gplink/src/x"))
+ path, err = modload.FindModulePath(tg.path("gplink3/src/x"))
if path != "x" || err != nil {
t.Fatalf("FindModulePath() = %q, %v, want %q, nil", path, err, "x")
}
- path, err = modload.FindModulePath(tg.path("gp/src/x"))
+ path, err = modload.FindModulePath(tg.path("gp3/src/x"))
if path != "x" || err != nil {
t.Fatalf("FindModulePath() = %q, %v, want %q, nil", path, err, "x")
}
@@ -259,13 +261,12 @@
// Empty dir inside GOPATH, dir has symlink 2
// GOPATH = gp
// gp/src/x -> x/x
- tg.must(os.RemoveAll(tg.tempdir))
- tg.must(os.MkdirAll(tg.path("gp/src"), 0777))
- tg.must(os.MkdirAll(tg.path("x/x"), 0777))
- tg.must(os.Symlink(tg.path("x/x"), tg.path("gp/src/x")))
- cfg.BuildContext.GOPATH = tg.path("gp")
+ tg.must(os.MkdirAll(tg.path("gp4/src"), 0777))
+ tg.must(os.MkdirAll(tg.path("x4/x"), 0777))
+ tg.must(os.Symlink(tg.path("x4/x"), tg.path("gp4/src/x")))
+ cfg.BuildContext.GOPATH = tg.path("gp4")
- path, err = modload.FindModulePath(tg.path("gp/src/x"))
+ path, err = modload.FindModulePath(tg.path("gp4/src/x"))
if path != "x" || err != nil {
t.Fatalf("FindModulePath() = %q, %v, want %q, nil", path, err, "x")
}
@@ -273,16 +274,15 @@
// Empty dir inside GOPATH, GOPATH has symlink
// GOPATH = gplink
// gplink -> gp
- tg.must(os.RemoveAll(tg.tempdir))
- tg.must(os.MkdirAll(tg.path("gp/src/x"), 0777))
- tg.must(os.Symlink(tg.path("gp"), tg.path("gplink")))
- cfg.BuildContext.GOPATH = tg.path("gplink")
+ tg.must(os.MkdirAll(tg.path("gp5/src/x"), 0777))
+ tg.must(os.Symlink(tg.path("gp5"), tg.path("gplink5")))
+ cfg.BuildContext.GOPATH = tg.path("gplink5")
- path, err = modload.FindModulePath(tg.path("gplink/src/x"))
+ path, err = modload.FindModulePath(tg.path("gplink5/src/x"))
if path != "x" || err != nil {
t.Fatalf("FindModulePath() = %q, %v, want %q, nil", path, err, "x")
}
- path, err = modload.FindModulePath(tg.path("gp/src/x"))
+ path, err = modload.FindModulePath(tg.path("gp5/src/x"))
if path != "x" || err != nil {
t.Fatalf("FindModulePath() = %q, %v, want %q, nil", path, err, "x")
}
@@ -291,21 +291,20 @@
// GOPATH = gplink
// gplink -> gp
// gplink2 -> gp
- tg.must(os.RemoveAll(tg.tempdir))
- tg.must(os.MkdirAll(tg.path("gp/src/x"), 0777))
- tg.must(os.Symlink(tg.path("gp"), tg.path("gplink")))
- tg.must(os.Symlink(tg.path("gp"), tg.path("gplink2")))
- cfg.BuildContext.GOPATH = tg.path("gplink")
+ tg.must(os.MkdirAll(tg.path("gp6/src/x"), 0777))
+ tg.must(os.Symlink(tg.path("gp6"), tg.path("gplink6")))
+ tg.must(os.Symlink(tg.path("gp6"), tg.path("gplink62")))
+ cfg.BuildContext.GOPATH = tg.path("gplink6")
- path, err = modload.FindModulePath(tg.path("gplink2/src/x"))
+ path, err = modload.FindModulePath(tg.path("gplink62/src/x"))
if path != "x" || err != nil {
t.Fatalf("FindModulePath() = %q, %v, want %q, nil", path, err, "x")
}
- path, err = modload.FindModulePath(tg.path("gplink/src/x"))
+ path, err = modload.FindModulePath(tg.path("gplink6/src/x"))
if path != "x" || err != nil {
t.Fatalf("FindModulePath() = %q, %v, want %q, nil", path, err, "x")
}
- path, err = modload.FindModulePath(tg.path("gp/src/x"))
+ path, err = modload.FindModulePath(tg.path("gp6/src/x"))
if path != "x" || err != nil {
t.Fatalf("FindModulePath() = %q, %v, want %q, nil", path, err, "x")
}
@@ -315,21 +314,20 @@
// gplink -> gp
// gplink2 -> gp
// gp/src/x -> x/x
- tg.must(os.RemoveAll(tg.tempdir))
- tg.must(os.MkdirAll(tg.path("gp/src"), 0777))
- tg.must(os.MkdirAll(tg.path("x/x"), 0777))
- tg.must(os.Symlink(tg.path("gp"), tg.path("gplink")))
- tg.must(os.Symlink(tg.path("gp"), tg.path("gplink2")))
- tg.must(os.Symlink(tg.path("x/x"), tg.path("gp/src/x")))
- cfg.BuildContext.GOPATH = tg.path("gplink")
+ tg.must(os.MkdirAll(tg.path("gp7/src"), 0777))
+ tg.must(os.MkdirAll(tg.path("x7/x"), 0777))
+ tg.must(os.Symlink(tg.path("gp7"), tg.path("gplink7")))
+ tg.must(os.Symlink(tg.path("gp7"), tg.path("gplink72")))
+ tg.must(os.Symlink(tg.path("x7/x"), tg.path("gp7/src/x")))
+ cfg.BuildContext.GOPATH = tg.path("gplink7")
- path, err = modload.FindModulePath(tg.path("gplink/src/x"))
+ path, err = modload.FindModulePath(tg.path("gplink7/src/x"))
if path != "x" || err != nil {
t.Fatalf("FindModulePath() = %q, %v, want %q, nil", path, err, "x")
}
// This test fails when /tmp -> /private/tmp.
- // path, err = modload.FindModulePath(tg.path("gp/src/x"))
+ // path, err = modload.FindModulePath(tg.path("gp7/src/x"))
// if path != "x" || err != nil {
// t.Fatalf("FindModulePath() = %q, %v, want %q, nil", path, err, "x")
// }