generated from golang-templates/seed
/
helper_test.go
96 lines (83 loc) · 1.94 KB
/
helper_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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
package goyek_test
import (
"fmt"
"reflect"
"strings"
"testing"
"github.com/goyek/goyek/v2"
)
var noDeps goyek.Deps
func assertTrue(tb testing.TB, got bool, msg string) {
tb.Helper()
if got {
return
}
tb.Errorf("%s\nGOT: %v, WANT: true", msg, got)
}
func assertContains(tb testing.TB, got fmt.Stringer, want string, msg string) {
tb.Helper()
gotTxt := got.String()
if strings.Contains(gotTxt, want) {
return
}
tb.Errorf("%s\nGOT:\n%s\nSHOULD CONTAIN:\n%s", msg, gotTxt, want)
}
func assertNotContains(tb testing.TB, got fmt.Stringer, want string, msg string) {
tb.Helper()
gotTxt := got.String()
if !strings.Contains(gotTxt, want) {
return
}
tb.Errorf("%s\nGOT:\n%s\nSHOULD NOT CONTAIN:\n%s", msg, gotTxt, want)
}
func requireEqual(tb testing.TB, got interface{}, want interface{}, msg string) {
tb.Helper()
if reflect.DeepEqual(got, want) {
return
}
tb.Fatalf("%s\nGOT: %v\nWANT: %v", msg, got, want)
}
func assertEqual(tb testing.TB, got interface{}, want interface{}, msg string) {
tb.Helper()
if reflect.DeepEqual(got, want) {
return
}
tb.Errorf("%s\nGOT: %v\nWANT: %v", msg, got, want)
}
func assertPass(tb testing.TB, got error, msg string) {
tb.Helper()
if got != nil {
tb.Errorf("%s\nGOT: %v\nWANT: <PASS>", msg, got)
}
}
func assertFail(tb testing.TB, got error, msg string) {
tb.Helper()
if _, ok := got.(*goyek.FailError); !ok {
tb.Errorf("%s\nGOT: %v\nWANT: <FAIL>", msg, got)
}
}
func assertInvalid(tb testing.TB, got error, msg string) {
tb.Helper()
if _, ok := got.(*goyek.FailError); ok || got == nil {
tb.Errorf("%s\nGOT: %v\nWANT: <INVALID>", msg, got)
}
}
func assertPanics(tb testing.TB, fn func(), msg string) {
tb.Helper()
tryPanic := func() bool {
didPanic := false
func() {
defer func() {
if info := recover(); info != nil {
didPanic = true
}
}()
fn()
}()
return didPanic
}
if tryPanic() {
return
}
tb.Errorf("%s\ndid not panic, but expected to do so", msg)
}