-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtgo_test.go
More file actions
130 lines (120 loc) · 3.24 KB
/
Copy pathtgo_test.go
File metadata and controls
130 lines (120 loc) · 3.24 KB
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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
package main
import (
"context"
"io"
"testing"
)
func TestRun_Pass(t *testing.T) {
t.Parallel()
dir := setupTestDir(t)
flags := Flags{
Bin: "go",
Dir: dir,
Results: Statuses{StatusFail, StatusNone},
Summary: Statuses{StatusFail, StatusNone},
}
err := runWithRenderer(context.Background(), flags, NewRenderer(io.Discard), []string{"./pass"})
if err != nil {
t.Errorf("expected no error for passing test, got %v", err)
}
}
func TestRun_Fail(t *testing.T) {
t.Parallel()
dir := setupTestDir(t)
flags := Flags{
Bin: "go",
Dir: dir,
Results: Statuses{StatusFail, StatusNone},
Summary: Statuses{StatusFail, StatusNone},
}
err := runWithRenderer(context.Background(), flags, NewRenderer(io.Discard), []string{"./fail"})
if err == nil {
t.Errorf("expected error for failing test, got nil")
}
}
func TestRun_BuildFail(t *testing.T) {
t.Parallel()
dir := setupTestDir(t)
flags := Flags{
Bin: "go",
Dir: dir,
Results: Statuses{StatusFail, StatusNone, StatusBuildFail},
Summary: Statuses{StatusFail, StatusNone, StatusBuildFail},
}
err := runWithRenderer(context.Background(), flags, NewRenderer(io.Discard), []string{"./buildfail"})
if err == nil {
t.Errorf("expected error for build failing test, got nil")
}
}
func TestRun_Skip(t *testing.T) {
t.Parallel()
dir := setupTestDir(t)
flags := Flags{
Bin: "go",
Dir: dir,
Results: Statuses{StatusFail, StatusNone},
Summary: Statuses{StatusFail, StatusNone},
}
err := runWithRenderer(context.Background(), flags, NewRenderer(io.Discard), []string{"./skip"})
if err != nil {
t.Errorf("expected no error for skipping test, got %v", err)
}
}
func TestRun_Bench(t *testing.T) {
t.Parallel()
dir := setupTestDir(t)
flags := Flags{
Bin: "go",
Dir: dir,
Results: Statuses{StatusBench},
Summary: Statuses{StatusBench},
}
err := runWithRenderer(context.Background(), flags, NewRenderer(io.Discard), []string{"-bench", ".", "./bench"})
if err != nil {
t.Errorf("expected no error for benchmark, got %v", err)
}
}
func TestRun_Output(t *testing.T) {
t.Parallel()
dir := setupTestDir(t)
flags := Flags{
Bin: "go",
Dir: dir,
Results: Statuses{StatusPass},
Summary: Statuses{StatusPass},
V: V4,
}
err := runWithRenderer(context.Background(), flags, NewRenderer(io.Discard), []string{"./output"})
if err != nil {
t.Errorf("expected no error for test with output, got %v", err)
}
}
func TestRun_Crash(t *testing.T) {
t.Parallel()
dir := setupTestDir(t)
flags := Flags{
Bin: "go",
Dir: dir,
Results: Statuses{StatusFail, StatusNone},
Summary: Statuses{StatusFail, StatusNone},
}
err := runWithRenderer(context.Background(), flags, NewRenderer(io.Discard), []string{"./crash"})
if err == nil {
t.Errorf("expected error for crashed test, got nil")
}
}
func TestRun_Mixed_With_V(t *testing.T) {
t.Parallel()
dir := setupTestDir(t)
flags := Flags{
Bin: "go",
Dir: dir,
V: V2,
Results: Statuses{StatusBench, StatusPass, StatusNone, StatusFail},
Summary: Statuses{StatusNone, StatusFail},
}
err := runWithRenderer(context.Background(), flags, NewRenderer(io.Discard), []string{"-v", "./mixed"})
if err == nil {
t.Errorf("expected error for mixed failing test, got nil")
}
}