Skip to content

Commit

Permalink
cmd/go: delete flaky TestQEMUUserMode
Browse files Browse the repository at this point in the history
If QEMU user-mode is actually a supported configuration, then per
http://golang.org/wiki/PortingPolicy it needs to have a builder
running tests for all packages, not just a simple “hello world”
program.

Updates #1508
Updates #13024
Fixes #35457

Change-Id: Ib6122b06ad1d265550a0e92131506266495893cc
Reviewed-on: https://go-review.googlesource.com/c/go/+/206137
Run-TryBot: Bryan C. Mills <[email protected]>
Reviewed-by: Brad Fitzpatrick <[email protected]>
  • Loading branch information
Bryan C. Mills committed Nov 8, 2019
1 parent ae4534e commit a782472
Showing 1 changed file with 0 additions and 46 deletions.
46 changes: 0 additions & 46 deletions src/cmd/go/go_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -5185,52 +5185,6 @@ func TestUpxCompression(t *testing.T) {
}
}

// Test that Go binaries can be run under QEMU in user-emulation mode
// (See issue #13024).
func TestQEMUUserMode(t *testing.T) {
if testing.Short() && testenv.Builder() == "" {
t.Skipf("skipping in -short mode on non-builder")
}

testArchs := []struct {
g, qemu string
}{
{"arm", "arm"},
{"arm64", "aarch64"},
}

tg := testgo(t)
defer tg.cleanup()
tg.tempFile("main.go", `package main; import "fmt"; func main() { fmt.Print("hello qemu-user") }`)
tg.parallel()
src, obj := tg.path("main.go"), tg.path("main")

for _, arch := range testArchs {
arch := arch
t.Run(arch.g, func(t *testing.T) {
qemu := "qemu-" + arch.qemu
testenv.MustHaveExecPath(t, qemu)

out, err := exec.Command(qemu, "--version").CombinedOutput()
if err != nil {
t.Fatalf("%s --version failed: %v", qemu, err)
}

tg.setenv("GOARCH", arch.g)
tg.run("build", "-o", obj, src)

out, err = exec.Command(qemu, obj).CombinedOutput()
if err != nil {
t.Logf("%s output:\n%s\n", qemu, out)
t.Fatalf("%s failed with %v", qemu, err)
}
if want := "hello qemu-user"; string(out) != want {
t.Errorf("bad output from %s:\ngot %s; want %s", qemu, out, want)
}
})
}
}

func TestCacheListStale(t *testing.T) {
tooSlow(t)
if strings.Contains(os.Getenv("GODEBUG"), "gocacheverify") {
Expand Down

0 comments on commit a782472

Please sign in to comment.