Skip to content

Commit

Permalink
cmd/go: fix test failures with -count=2
Browse files Browse the repository at this point in the history
In each test, either set the -n flag to avoid writing build artifacts
to the cache, or set GOCACHE explicitly to point to a clean cache.

Tested manually with 'go test -count=2 cmd/go'.

Fixes #37820

Change-Id: I24403e738b1a10d5fe9dc8d98ef27a76ebe2704a
Reviewed-on: https://go-review.googlesource.com/c/go/+/223140
Run-TryBot: Bryan C. Mills <bcmills@google.com>
Reviewed-by: Jay Conrod <jayconrod@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
  • Loading branch information
Bryan C. Mills committed Mar 12, 2020
1 parent 040855e commit c4113b6
Show file tree
Hide file tree
Showing 5 changed files with 14 additions and 6 deletions.
3 changes: 2 additions & 1 deletion src/cmd/go/testdata/script/build_gcflags.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ env GO111MODULE=off
[!linux] skip # test only works if c-archive implies -shared
[short] skip

go build -x -buildmode=c-archive -gcflags=all=-shared=false ./override.go
env GOCACHE=$WORK/gocache # Looking for compile commands, so need a clean cache.
go build -x -n -buildmode=c-archive -gcflags=all=-shared=false ./override.go
stderr '^.*/compile (.* )?-shared (.* )?-shared=false'

-- override.go --
Expand Down
9 changes: 5 additions & 4 deletions src/cmd/go/testdata/script/cgo_flag_contains_space.txt
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
[short] skip
[!cgo] skip

go run -x main.go
env GOCACHE=$WORK/gocache # Looking for compile flags, so need a clean cache.
go build -x -n main.go
stderr '"-I[^"]+c flags"' # find quoted c flags
! stderr '"-I[^"]+c flags".*"-I[^"]+c flags"' # don't find too many quoted c flags
! stderr '"-I[^"]+c flags".*"-I[^"]+c flags"' # don't find too many quoted c flags per line
stderr '"-L[^"]+ld flags"' # find quoted ld flags
! stderr '"-L[^"]+c flags".*"-L[^"]+c flags"' # don't find too many quoted ld flags
! stderr '"-L[^"]+c flags".*"-L[^"]+c flags"' # don't find too many quoted ld flags per line

-- main.go --
package main
// #cgo CFLAGS: -I"c flags"
// #cgo LDFLAGS: -L"ld flags"
import "C"
func main() {}
func main() {}
2 changes: 2 additions & 0 deletions src/cmd/go/testdata/script/gcflags_patterns.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ env GO111MODULE=off
[!gc] skip 'using -gcflags and -ldflags'
[short] skip

env GOCACHE=$WORK/gocache # Looking for compile commands, so need a clean cache.

# -gcflags=-e applies to named packages, not dependencies
go build -n -v -gcflags=-e z1 z2
stderr 'compile.* -e.* -p z1'
Expand Down
3 changes: 3 additions & 0 deletions src/cmd/go/testdata/script/mod_get_commit.txt
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ go get -d golang.org/x/text@14c0d48

# dropping -d, we should see a build.
[short] skip

env GOCACHE=$WORK/gocache # Looking for compile commands, so need a clean cache.

go get -x golang.org/x/text/language@14c0d48
stderr 'compile|cp|gccgo .*language\.a$'

Expand Down
3 changes: 2 additions & 1 deletion src/cmd/go/testdata/script/mod_get_tags.txt
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ stdout 'rsc.io/quote v1.5.2'
[short] skip

# Packages that are only imported in excluded files should not be built.
go get -x .
env GOCACHE=$WORK/gocache # Looking for compile commands, so need a clean cache.
go get -n -x .
stderr 'compile.* -p m '
! stderr 'compile.* -p example.com/version '
! stderr 'compile.* -p rsc.io/quote '
Expand Down

0 comments on commit c4113b6

Please sign in to comment.