...
Source file
src/testing/helperfuncs_test.go
Documentation: testing
1
2
3
4
5 package testing
6
7 import "sync"
8
9
10
11 func notHelper(t *T, msg string) {
12 t.Error(msg)
13 }
14
15 func helper(t *T, msg string) {
16 t.Helper()
17 t.Error(msg)
18 }
19
20 func notHelperCallingHelper(t *T, msg string) {
21 helper(t, msg)
22 }
23
24 func helperCallingHelper(t *T, msg string) {
25 t.Helper()
26 helper(t, msg)
27 }
28
29 func testHelper(t *T) {
30
31
32 notHelper(t, "0")
33 helper(t, "1")
34 notHelperCallingHelper(t, "2")
35 helperCallingHelper(t, "3")
36
37
38 fn := func(msg string) {
39 t.Helper()
40 t.Error(msg)
41 }
42 fn("4")
43
44 t.Run("sub", func(t *T) {
45 helper(t, "5")
46 notHelperCallingHelper(t, "6")
47
48
49 t.Helper()
50 t.Error("7")
51 })
52
53
54
55 t.Helper()
56 t.Error("8")
57
58
59
60 t.Cleanup(func() {
61 t.Helper()
62 t.Error("10")
63 })
64 t.Cleanup(func() {
65 t.Helper()
66 t.Error("9")
67 })
68 }
69
70 func parallelTestHelper(t *T) {
71 var wg sync.WaitGroup
72 for i := 0; i < 5; i++ {
73 wg.Add(1)
74 go func() {
75 notHelperCallingHelper(t, "parallel")
76 wg.Done()
77 }()
78 }
79 wg.Wait()
80 }
81
View as plain text