1
0
mirror of https://github.com/golang/go synced 2024-09-30 07:28:36 -06:00

testing: enforce -skip in example tests

The go test flag -skip had no effect in example tests.

Fixes #61482

Change-Id: I28dfddb88fef3fead2a3c74f9cb63a674a768231
GitHub-Last-Rev: e8c3c3460a
GitHub-Pull-Request: golang/go#61491
Reviewed-on: https://go-review.googlesource.com/c/go/+/511837
Reviewed-by: Bryan Mills <bcmills@google.com>
Run-TryBot: Ian Lance Taylor <iant@golang.org>
Reviewed-by: Heschi Kreinick <heschi@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Auto-Submit: Bryan Mills <bcmills@google.com>
This commit is contained in:
Mauri de Souza Meneguzzo 2023-07-21 18:49:09 +00:00 committed by Gopher Robot
parent e713d6f939
commit 2eca0b1e16
2 changed files with 13 additions and 7 deletions

View File

@ -13,13 +13,19 @@ stdout RUN.*Test2/3
go test -v -skip 2/3 skip_test.go
stdout RUN.*Test1
stdout RUN.*Test2
stdout RUN.*ExampleTest1
! stdout Test2/3
go test -v -skip 2/4 skip_test.go
stdout RUN.*Test1
stdout RUN.*Test2
stdout RUN.*Test2/3
stdout RUN.*ExampleTest1
go test -v -skip Example skip_test.go
stdout RUN.*Test1
stdout RUN.*Test2
stdout RUN.*Test2/3
-- skip_test.go --
package skip_test
@ -32,3 +38,7 @@ func Test1(t *testing.T) {
func Test2(t *testing.T) {
t.Run("3", func(t *testing.T) {})
}
func ExampleTest1() {
// Output:
}

View File

@ -6,7 +6,6 @@ package testing
import (
"fmt"
"os"
"sort"
"strings"
"time"
@ -29,14 +28,11 @@ func RunExamples(matchString func(pat, str string) (bool, error), examples []Int
func runExamples(matchString func(pat, str string) (bool, error), examples []InternalExample) (ran, ok bool) {
ok = true
var eg InternalExample
m := newMatcher(matchString, *match, "-test.run", *skip)
var eg InternalExample
for _, eg = range examples {
matched, err := matchString(*match, eg.Name)
if err != nil {
fmt.Fprintf(os.Stderr, "testing: invalid regexp for -test.run: %s\n", err)
os.Exit(1)
}
_, matched, _ := m.fullName(nil, eg.Name)
if !matched {
continue
}