From: Nodir Turakulov Date: Mon, 5 Oct 2015 23:47:31 +0000 (-0700) Subject: cmd/go: fix `go test -n` X-Git-Tag: go1.6beta1~891 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=0b248cea169a261cd0c2db8c014269cca5a170c4;p=gostls13.git cmd/go: fix `go test -n` The /_test directory is not actually created in -n mode, so `go test` fails to write _testmain.go. Do not write _testmain.go if -n is passed. Change-Id: I825d5040cacbc9d9a8c89443e5a3f83e6f210ce4 Reviewed-on: https://go-review.googlesource.com/15433 Reviewed-by: Andrew Gerrand --- diff --git a/src/cmd/go/test.go b/src/cmd/go/test.go index ba1ab82680..fa5ef3eb65 100644 --- a/src/cmd/go/test.go +++ b/src/cmd/go/test.go @@ -817,10 +817,12 @@ func (b *builder) test(p *Package) (buildAction, runAction, printAction *action, } } - // writeTestmain writes _testmain.go. This must happen after recompileForTest, - // because recompileForTest modifies XXX. - if err := writeTestmain(filepath.Join(testDir, "_testmain.go"), t); err != nil { - return nil, nil, nil, err + if !buildN { + // writeTestmain writes _testmain.go. This must happen after recompileForTest, + // because recompileForTest modifies XXX. + if err := writeTestmain(filepath.Join(testDir, "_testmain.go"), t); err != nil { + return nil, nil, nil, err + } } computeStale(pmain)