From 3e297120fdf306507496e1dd650fd86ebb9aeb36 Mon Sep 17 00:00:00 2001 From: Yury Smolsky Date: Thu, 29 Mar 2018 19:52:31 +0300 Subject: [PATCH] cmd/go: fix the rebuilding stale packages test Non-main packages do not depend on the "runtime" package, but main packages still do. Use a main package in the test. This change passes the -i flag to the install command to allow installation of updated dependencies, and removes "install std" as unnecessary. https://golang.org/cl/107957 is relevant to fixed test. Updates #24436 Change-Id: If1845f37581a16ad77e72e50be21010e198bc7c5 Reviewed-on: https://go-review.googlesource.com/103675 Reviewed-by: Bryan C. Mills Reviewed-by: Ian Lance Taylor Run-TryBot: Bryan C. Mills TryBot-Result: Gobot Gobot --- src/cmd/go/go_test.go | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/cmd/go/go_test.go b/src/cmd/go/go_test.go index e76abb7612..06948525ad 100644 --- a/src/cmd/go/go_test.go +++ b/src/cmd/go/go_test.go @@ -895,9 +895,11 @@ func TestNewReleaseRebuildsStalePackagesInGOPATH(t *testing.T) { } } - tg.tempFile("d1/src/p1/p1.go", `package p1`) + // Every main package depends on the "runtime". + tg.tempFile("d1/src/p1/p1.go", `package main; func main(){}`) tg.setenv("GOPATH", tg.path("d1")) - tg.run("install", "-a", "p1") + // Pass -i flag to rebuild everything outdated. + tg.run("install", "-i", "p1") tg.wantNotStale("p1", "", "./testgo list claims p1 is stale, incorrectly, before any changes") // Changing mtime of runtime/internal/sys/sys.go @@ -919,13 +921,13 @@ func TestNewReleaseRebuildsStalePackagesInGOPATH(t *testing.T) { tg.wantNotStale("p1", "", "./testgo list claims p1 is stale, incorrectly, after changing back to old release") addNL(sys) tg.wantStale("p1", "stale dependency: runtime/internal/sys", "./testgo list claims p1 is NOT stale, incorrectly, after changing sys.go again") - tg.run("install", "p1") + tg.run("install", "-i", "p1") tg.wantNotStale("p1", "", "./testgo list claims p1 is stale after building with new release") // Restore to "old" release. restore() tg.wantStale("p1", "stale dependency: runtime/internal/sys", "./testgo list claims p1 is NOT stale, incorrectly, after restoring sys.go") - tg.run("install", "p1") + tg.run("install", "-i", "p1") tg.wantNotStale("p1", "", "./testgo list claims p1 is stale after building with old release") // Everything is out of date. Rebuild to leave things in a better state. -- 2.48.1