From: Russ Cox Date: Fri, 4 Feb 2022 16:55:33 +0000 (-0500) Subject: cmd/go: run 'go help documentation' through gofmt in TestDocsUpToDate X-Git-Tag: go1.19beta1~1014 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=0a49f706e172443d817cfb3d44e5b366da1cc72a;p=gostls13.git cmd/go: run 'go help documentation' through gofmt in TestDocsUpToDate mkalldocs.sh runs gofmt on the output, but the test does not. If go help documentation and gofmt disagree, the test will fail. Fix that. Change-Id: I837374a2d36cb5d71278ecefe2a7b6544622c576 Reviewed-on: https://go-review.googlesource.com/c/go/+/384256 Trust: Russ Cox Run-TryBot: Russ Cox Reviewed-by: Bryan Mills TryBot-Result: Gopher Robot --- diff --git a/src/cmd/go/help_test.go b/src/cmd/go/help_test.go index abfc3db993..3e1d817ca5 100644 --- a/src/cmd/go/help_test.go +++ b/src/cmd/go/help_test.go @@ -6,6 +6,8 @@ package main_test import ( "bytes" + "go/format" + diffpkg "internal/diff" "os" "testing" @@ -23,11 +25,17 @@ func TestDocsUpToDate(t *testing.T) { buf := new(bytes.Buffer) // Match the command in mkalldocs.sh that generates alldocs.go. help.Help(buf, []string{"documentation"}) - data, err := os.ReadFile("alldocs.go") + internal := buf.Bytes() + internal, err := format.Source(internal) + if err != nil { + t.Fatalf("gofmt docs: %v", err) + } + alldocs, err := os.ReadFile("alldocs.go") if err != nil { t.Fatalf("error reading alldocs.go: %v", err) } - if !bytes.Equal(data, buf.Bytes()) { - t.Errorf("alldocs.go is not up to date; run mkalldocs.sh to regenerate it") + if !bytes.Equal(internal, alldocs) { + t.Errorf("alldocs.go is not up to date; run mkalldocs.sh to regenerate it\n%s", + diffpkg.Diff("go help documentation | gofmt", internal, "alldocs.go", alldocs)) } }