mirror of
https://github.com/golang/go
synced 2024-11-23 03:40:02 -07:00
cmd/doc: add test for constructor, fix build
Most important: skip test on darwin/arm64 for unclear reasons. First cut at the test missed this feature of go doc: when asking for the docs for a type, include any function that looks like it constructs a that type as a return value. Change-Id: I124e7695e5d365e2b12524b541a9a4e6e0300fbc Reviewed-on: https://go-review.googlesource.com/11295 Reviewed-by: Rob Pike <r@golang.org>
This commit is contained in:
parent
79d4d6eca4
commit
13c44d27b7
@ -10,6 +10,7 @@ import (
|
||||
"os"
|
||||
"os/exec"
|
||||
"regexp"
|
||||
"runtime"
|
||||
"testing"
|
||||
)
|
||||
|
||||
@ -212,6 +213,7 @@ var tests = []test{
|
||||
`Has unexported fields`,
|
||||
`func \(ExportedType\) ExportedMethod\(a int\) bool`,
|
||||
`const ExportedTypedConstant ExportedType = iota`, // Must include associated constant.
|
||||
`func ExportedTypeConstructor\(\) \*ExportedType`, // Must include constructor.
|
||||
},
|
||||
[]string{
|
||||
`unexportedField`, // No unexported field.
|
||||
@ -297,6 +299,9 @@ var tests = []test{
|
||||
}
|
||||
|
||||
func TestDoc(t *testing.T) {
|
||||
if runtime.GOOS == "darwin" && runtime.GOARCH == "arm64" {
|
||||
t.Skip("TODO: on darwin/arm, test fails: no such package cmd/doc/testdata")
|
||||
}
|
||||
for _, test := range tests {
|
||||
var b bytes.Buffer
|
||||
var flagSet flag.FlagSet
|
||||
|
5
src/cmd/doc/testdata/pkg.go
vendored
5
src/cmd/doc/testdata/pkg.go
vendored
@ -66,6 +66,11 @@ const (
|
||||
ExportedTypedConstant ExportedType = iota
|
||||
)
|
||||
|
||||
// Comment about constructor for exported type.
|
||||
func ExportedTypeConstructor() *ExportedType {
|
||||
return nil
|
||||
}
|
||||
|
||||
const unexportedTypedConstant ExportedType = 1 // In a separate section to test -u.
|
||||
|
||||
// Comment about unexported type.
|
||||
|
Loading…
Reference in New Issue
Block a user