[release-branch.go1.9] cmd/go: clean up x.exe properly in TestImportMain

More generally I'm concerned about these tests using
$GOROOT/src/cmd/go as scratch space, especially
combined wtih tg.parallel() - it's easy to believe some other
test might inadvertently also try to write x.exe about the
same time. This CL only solves the "didn't clean up x.exe"
problem and leaves for another day the "probably shouldn't
write to cmd/go at all" problem.

Fixes #22266.

Change-Id: I651534d70e2d360138e0373fb4a316081872550b
Reviewed-on: https://go-review.googlesource.com/71410
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/71530
This commit is contained in:
Russ Cox 2017-10-17 15:10:59 -04:00
parent d487b15a61
commit 0758d2b9da

View file

@ -2847,7 +2847,7 @@ func TestImportMain(t *testing.T) {
func TestFoo(t *testing.T) {} func TestFoo(t *testing.T) {}
`) `)
tg.setenv("GOPATH", tg.path(".")) tg.setenv("GOPATH", tg.path("."))
tg.creatingTemp("x") tg.creatingTemp("x" + exeSuffix)
tg.run("build", "x") tg.run("build", "x")
tg.run("test", "x") tg.run("test", "x")