aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/go/internal/test/test.go
diff options
context:
space:
mode:
authorkezhao <korzhao@tencent.com>2021-07-28 02:06:10 +0000
committerJay Conrod <jayconrod@google.com>2021-08-17 21:18:41 +0000
commitace1730a417bf5cb1662407ef12013ca7e4e5f84 (patch)
tree16d3db82b3dfd49d1aee82b4938a4a688343af3c /src/cmd/go/internal/test/test.go
parent0f85b0c0e1dc96a165645bf6da3693e8a3603ebc (diff)
downloadgo-ace1730a417bf5cb1662407ef12013ca7e4e5f84.tar.gz
go-ace1730a417bf5cb1662407ef12013ca7e4e5f84.zip
cmd/go: go test flag -failfast should be cacheable
Add failfast to cacheable list and update docs Fixes #47355 Change-Id: I75b371c45b80a3b179ff070b7b9d092a504380c0 GitHub-Last-Rev: abe61fd48c01fab4ef5ea5db013dcce4ead09c6f GitHub-Pull-Request: golang/go#47371 Reviewed-on: https://go-review.googlesource.com/c/go/+/337229 Reviewed-by: Jay Conrod <jayconrod@google.com> Reviewed-by: Bryan C. Mills <bcmills@google.com> Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org>
Diffstat (limited to 'src/cmd/go/internal/test/test.go')
-rw-r--r--src/cmd/go/internal/test/test.go21
1 files changed, 11 insertions, 10 deletions
diff --git a/src/cmd/go/internal/test/test.go b/src/cmd/go/internal/test/test.go
index ce8f226a96..e8bf0e198e 100644
--- a/src/cmd/go/internal/test/test.go
+++ b/src/cmd/go/internal/test/test.go
@@ -119,16 +119,16 @@ elapsed time in the summary line.
The rule for a match in the cache is that the run involves the same
test binary and the flags on the command line come entirely from a
restricted set of 'cacheable' test flags, defined as -benchtime, -cpu,
--list, -parallel, -run, -short, and -v. If a run of go test has any test
-or non-test flags outside this set, the result is not cached. To
-disable test caching, use any test flag or argument other than the
-cacheable flags. The idiomatic way to disable test caching explicitly
-is to use -count=1. Tests that open files within the package's source
-root (usually $GOPATH) or that consult environment variables only
-match future runs in which the files and environment variables are unchanged.
-A cached test result is treated as executing in no time at all,
-so a successful package test result will be cached and reused
-regardless of -timeout setting.
+-list, -parallel, -run, -short, -timeout, -failfast, and -v.
+If a run of go test has any test or non-test flags outside this set,
+the result is not cached. To disable test caching, use any test flag
+or argument other than the cacheable flags. The idiomatic way to disable
+test caching explicitly is to use -count=1. Tests that open files within
+the package's source root (usually $GOPATH) or that consult environment
+variables only match future runs in which the files and environment
+variables are unchanged. A cached test result is treated as executing
+in no time at all,so a successful package test result will be cached and
+reused regardless of -timeout setting.
In addition to the build flags, the flags handled by 'go test' itself are:
@@ -1351,6 +1351,7 @@ func (c *runCache) tryCacheWithID(b *work.Builder, a *work.Action, id string) bo
"-test.run",
"-test.short",
"-test.timeout",
+ "-test.failfast",
"-test.v":
// These are cacheable.
// Note that this list is documented above,