]> Cypherpunks repositories - gostls13.git/commitdiff
[release-branch.go1.8] cmd/go: add test for test -race -i behavior
authorRuss Cox <rsc@golang.org>
Wed, 5 Apr 2017 14:57:03 +0000 (10:57 -0400)
committerRuss Cox <rsc@golang.org>
Wed, 5 Apr 2017 20:34:07 +0000 (20:34 +0000)
This was fixed in CL 37598 but the test was (rightly) dropped
because it modified $GOROOT. Here's a variant that does not.

For #19151.

Change-Id: Iccdbbf9ae8ac4c252e52f4f8ff996963573c4682
Reviewed-on: https://go-review.googlesource.com/39592
Run-TryBot: Russ Cox <rsc@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Reviewed-on: https://go-review.googlesource.com/39618
Reviewed-by: Austin Clements <austin@google.com>
src/cmd/go/go_test.go

index 56de65ce55ae3d65e6bf0db6d7538a2d022572fa..fa78578d1215142efbe3a31ee451e12888340c57 100644 (file)
@@ -2227,6 +2227,24 @@ func TestTestEmpty(t *testing.T) {
        }
 }
 
+func TestTestRaceInstall(t *testing.T) {
+       if !canRace {
+               t.Skip("no race detector")
+       }
+
+       tg := testgo(t)
+       defer tg.cleanup()
+       tg.setenv("GOPATH", filepath.Join(tg.pwd(), "testdata"))
+
+       tg.tempDir("pkg")
+       pkgdir := tg.path("pkg")
+       tg.run("install", "-race", "-pkgdir="+pkgdir, "std")
+       tg.run("test", "-race", "-pkgdir="+pkgdir, "-i", "-v", "empty/pkg")
+       if tg.getStderr() != "" {
+               t.Error("go test -i -race: rebuilds cached packages")
+       }
+}
+
 func TestBuildDryRunWithCgo(t *testing.T) {
        if !canCgo {
                t.Skip("skipping because cgo not enabled")