forked from dimiro1/health
-
Notifications
You must be signed in to change notification settings - Fork 0
/
checker_test.go
140 lines (99 loc) · 2.73 KB
/
checker_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
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
130
131
132
133
134
135
136
137
138
139
140
package health
import "testing"
type outOfServiceTestChecker struct{}
func (c outOfServiceTestChecker) Check() Health {
health := NewHealth()
health.OutOfService()
return health
}
type upTestChecker struct{}
func (c upTestChecker) Check() Health {
health := NewHealth()
health.Up()
return health
}
type downTestChecker struct{}
func (c downTestChecker) Check() Health {
health := NewHealth()
health.Down()
return health
}
func Test_CompositeChecker_AddChecker(t *testing.T) {
c := NewCompositeChecker()
if len(c.checkers) != 0 {
t.Errorf("len(c.checkers) == %d, wants %d", len(c.checkers), 0)
}
c.AddChecker("testChecker", upTestChecker{})
if len(c.checkers) != 1 {
t.Errorf("len(c.checkers) == %d, wants %d", len(c.checkers), 1)
}
}
func Test_CompositeChecker_Check_Up(t *testing.T) {
c := NewCompositeChecker()
c.AddChecker("upTestChecker", upTestChecker{})
health := c.Check()
if !health.IsUp() {
t.Errorf("health.IsUp() == %t, wants %t", health.IsUp(), true)
}
}
func Test_CompositeChecker_Check_Down(t *testing.T) {
c := NewCompositeChecker()
c.AddChecker("downTestChecker", downTestChecker{})
health := c.Check()
if !health.IsDown() {
t.Errorf("health.IsDown() == %t, wants %t", health.IsDown(), true)
}
}
func Test_CompositeChecker_Check_OutOfService(t *testing.T) {
c := NewCompositeChecker()
c.AddChecker("outOfServiceTestChecker", outOfServiceTestChecker{})
health := c.Check()
if !health.IsDown() {
t.Errorf("health.IsDown() == %t, wants %t", health.IsDown(), true)
}
}
func Test_CompositeChecker_Check_Down_combined(t *testing.T) {
c := NewCompositeChecker()
c.AddChecker("downTestChecker", downTestChecker{})
c.AddChecker("upTestChecker", upTestChecker{})
health := c.Check()
if !health.IsDown() {
t.Errorf("health.IsDown() == %t, wants %t", health.IsDown(), true)
}
}
func Test_CompositeChecker_Check_Up_combined(t *testing.T) {
c := NewCompositeChecker()
c.AddChecker("upTestChecker", upTestChecker{})
c.AddChecker("upTestChecker", upTestChecker{})
health := c.Check()
if !health.IsUp() {
t.Errorf("health.IsUp() == %t, wants %t", health.IsUp(), true)
}
}
func Test_CompositeChecker_AddInfo(t *testing.T) {
c := NewCompositeChecker()
c.AddInfo("key", "value")
_, ok := c.info["key"]
if !ok {
t.Error("c.AddInfo() should add a key value to the map")
}
}
func Test_CompositeChecker_AddInfo_null_map(t *testing.T) {
c := CompositeChecker{}
c.AddInfo("key", "value")
_, ok := c.info["key"]
if !ok {
t.Error("c.AddInfo() should add a key value to the map")
}
}
func TestCheckerFunc_Check(t *testing.T) {
f := CheckerFunc(func() Health {
h := NewHealth()
h.Up()
return h
})
h := f.Check()
if !h.IsUp() {
t.Errorf("h.IsUp() == %t, wants %t", h.IsUp(), true)
}
}