Skip to content

Commit

Permalink
cmd/go: replace TestCgoDependsOnSyscall with a simpler script test
Browse files Browse the repository at this point in the history
The existing test attempted to remove '_race' binaries from
GOROOT/pkg, which could not only fail if GOROOT is read-only, but also
interfere with other tests run in parallel.

Updates #30316
Updates #37573
Updates #17751

Change-Id: Id7e2286ab67f8333baf4d52244b7f4476aa93a46
Reviewed-on: https://go-review.googlesource.com/c/go/+/223745
Run-TryBot: Bryan C. Mills <[email protected]>
Reviewed-by: Jay Conrod <[email protected]>
TryBot-Result: Gobot Gobot <[email protected]>
  • Loading branch information
Bryan C. Mills committed Mar 17, 2020
1 parent fb1cd94 commit 14d20dc
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 28 deletions.
28 changes: 0 additions & 28 deletions src/cmd/go/go_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -1545,34 +1545,6 @@ func TestSymlinkWarning(t *testing.T) {
tg.grepStderr("ignoring symlink", "list should have reported symlink")
}

func TestCgoDependsOnSyscall(t *testing.T) {
if testing.Short() {
t.Skip("skipping test that removes $GOROOT/pkg/*_race in short mode")
}
if !canCgo {
t.Skip("skipping because cgo not enabled")
}
if !canRace {
t.Skip("skipping because race detector not supported")
}

tg := testgo(t)
defer tg.cleanup()
tg.parallel()

files, err := filepath.Glob(filepath.Join(runtime.GOROOT(), "pkg", "*_race"))
tg.must(err)
for _, file := range files {
tg.check(robustio.RemoveAll(file))
}
tg.tempFile("src/foo/foo.go", `
package foo
//#include <stdio.h>
import "C"`)
tg.setenv("GOPATH", tg.path("."))
tg.run("build", "-race", "foo")
}

func TestCgoShowsFullPathNames(t *testing.T) {
if !canCgo {
t.Skip("skipping because cgo not enabled")
Expand Down
11 changes: 11 additions & 0 deletions src/cmd/go/testdata/script/cgo_depends_on_syscall.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
[!cgo] skip
[!race] skip

go list -race -deps foo
stdout syscall

-- foo/foo.go --
package foo

// #include <stdio.h>
import "C"

0 comments on commit 14d20dc

Please sign in to comment.