mirror of
https://github.com/golang/go
synced 2024-09-30 00:24:29 -06:00
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 <rsc@golang.org> Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
This commit is contained in:
parent
7747c33a41
commit
0a49f706e1
@ -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))
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user