Commit 2fcb0452 authored by Andrew Gerrand's avatar Andrew Gerrand

gotest: don't run examples that have no expected output

R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/5364041
parent 46ee09ef
......@@ -37,6 +37,7 @@ os.Stdout and os.Stderr is compared against their doc comment.
Multiple example functions may be provided for a given name XXX if they are
discriminated by a distinct suffix starting with "_", such as ExampleXXX_2.
Example functions without doc comments are compiled but not executed.
See the documentation of the testing package for more information.
......
......@@ -231,9 +231,14 @@ func getTestNames() {
} else if isTest(name, "Benchmark") {
f.benchmarks = append(f.benchmarks, name)
} else if isTest(name, "Example") {
output := doc.CommentText(n.Doc)
if output == "" {
// Don't run examples with no output.
continue
}
f.examples = append(f.examples, example{
name: name,
output: doc.CommentText(n.Doc),
output: output,
})
}
// TODO: worth checking the signature? Probably not.
......@@ -372,7 +377,7 @@ func writeTestmainGo() {
insideTests := false
for _, f := range files {
//println(f.name, f.pkg)
if len(f.tests) == 0 && len(f.benchmarks) == 0 {
if len(f.tests) == 0 && len(f.benchmarks) == 0 && len(f.examples) == 0 {
continue
}
if isOutsideTest(f.pkg) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment