From: Andrew Gerrand Date: Fri, 3 Jun 2016 01:33:37 +0000 (+1000) Subject: cmd/go: fix staleness test for releases, also deflake it X-Git-Tag: go1.7beta2~62 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=5799973c3e25545ac0e7d20f32a1453531c69399;p=gostls13.git cmd/go: fix staleness test for releases, also deflake it Fixes #15933 Change-Id: I2cd6365e6d0ca1cafdc812fbfaaa55aa64b2b289 Reviewed-on: https://go-review.googlesource.com/23731 Reviewed-by: Ian Lance Taylor Run-TryBot: Ian Lance Taylor TryBot-Result: Gobot Gobot --- diff --git a/src/cmd/go/go_test.go b/src/cmd/go/go_test.go index 50e6b500da..1bee5e6609 100644 --- a/src/cmd/go/go_test.go +++ b/src/cmd/go/go_test.go @@ -1332,15 +1332,31 @@ func TestPackageMainTestImportsArchiveNotBinary(t *testing.T) { tg.run("test", "main_test") } +// The runtime version string takes one of two forms: +// "go1.X[.Y]" for Go releases, and "devel +hash" at tip. +// Determine whether we are in a released copy by +// inspecting the version. +var isGoRelease = strings.HasPrefix(runtime.Version(), "go1") + // Issue 12690 func TestPackageNotStaleWithTrailingSlash(t *testing.T) { tg := testgo(t) defer tg.cleanup() + + // Make sure the packages below are not stale. + tg.run("install", "runtime", "os", "io") + goroot := runtime.GOROOT() tg.setenv("GOROOT", goroot+"/") - tg.wantNotStale("runtime", "", "with trailing slash in GOROOT, runtime listed as stale") - tg.wantNotStale("os", "", "with trailing slash in GOROOT, os listed as stale") - tg.wantNotStale("io", "", "with trailing slash in GOROOT, io listed as stale") + + want := "" + if isGoRelease { + want = "standard package in Go release distribution" + } + + tg.wantNotStale("runtime", want, "with trailing slash in GOROOT, runtime listed as stale") + tg.wantNotStale("os", want, "with trailing slash in GOROOT, os listed as stale") + tg.wantNotStale("io", want, "with trailing slash in GOROOT, io listed as stale") } // With $GOBIN set, binaries get installed to $GOBIN.