Newer
Older
"testing"
)
func TestRun(t *testing.T) {
type args struct {
request string
}
tests := []struct {
name string
args args
want interface{}
}{
{
name: "liveliness indicator",
args: args{request: apiEndpoint + "/livez"},
},
{
name: "readyness indicator",
args: args{request: apiEndpoint + "/readyz"},
},
{
name: "init",
args: args{request: apiEndpoint + "/api?q=init"},
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
ctx, cancel := context.WithCancel(context.Background())
go func() {
if err := Run(ctx); err != nil{
t.Errorf("Run() error = %v", err)
}
}()
t.Run("Controller Start HTTP API", func(t *testing.T) {
got, err := http.Get(tests[0].args.request)
if err != nil {
t.Error(err)
return
}
if !reflect.DeepEqual(got.StatusCode, tests[0].want) {
t.Errorf("Run() got: %v, want %v", got.StatusCode, tests[0].want)
}
got, err = http.Get(tests[0].args.request)
if err != nil {
t.Error(err)
return
}
if !reflect.DeepEqual(got.StatusCode, tests[1].want) {
t.Errorf("Run() got: %v, want %v", got.StatusCode, tests[1].want)
}
got, err = http.Get(tests[0].args.request)
if err != nil {
t.Error(err)
return
}
if !reflect.DeepEqual(got.StatusCode, tests[2].want) {
t.Errorf("Run() got: %v, want %v", got.StatusCode, tests[2].want)
}
})
cancel()