-
Notifications
You must be signed in to change notification settings - Fork 10
/
TB_test.go
58 lines (48 loc) · 969 Bytes
/
TB_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
package testcase
import (
"testing"
"go.llib.dev/testcase/assert"
"go.llib.dev/testcase/internal/doubles"
)
var (
_ testingT = &testing.T{}
_ testingB = &testing.B{}
)
func TestToSpec_smoke(t *testing.T) {
assertToSpec := func(tb testing.TB, s *Spec) {
tb.Helper()
var ran bool
v := LetValue(s, 42)
s.HasSideEffect()
s.Test("", func(t *T) {
assert.Equal(tb, 42, v.Get(t))
ran = true
})
s.Finish()
assert.True(tb, ran)
}
assertToSpec(t, ToSpec(NewSpec(t)))
assertToSpec(t, ToSpec(t))
assertToSpec(t, ToSpec(NewT(t, nil)))
dtb := &doubles.TB{}
assertToSpec(t, ToSpec(dtb))
dtb.Finish()
var tb testing.TB = t
assertToSpec(t, ToSpec(&tb))
}
func BenchmarkTestToSpec(b *testing.B) {
s := ToSpec(b)
var ran bool
v := LetValue(s, 42)
s.HasSideEffect()
s.Test("", func(t *T) {
assert.Equal(b, 42, v.Get(t))
ran = true
t.Skip("TEST")
})
s.Finish()
assert.True(b, ran)
b.Skip("TEST")
}
func TestToT(t *testing.T) {
}