]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/doc: add test for constructor, fix build
authorRob Pike <r@golang.org>
Sat, 20 Jun 2015 10:28:46 +0000 (20:28 +1000)
committerRob Pike <r@golang.org>
Sat, 20 Jun 2015 10:35:38 +0000 (10:35 +0000)
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>
src/cmd/doc/doc_test.go
src/cmd/doc/testdata/pkg.go

index e0353508fe96a5961baecd5c87353ce0634f0539..b6eabb32dc6144798b682ec8b67788753c238393 100644 (file)
@@ -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
index ccc2ed64e0df69907be4dd0d21847d4e732bf1ac..013cdca679f25c6d43f7ae6d9f877068eea5ac8a 100644 (file)
@@ -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.