-
Notifications
You must be signed in to change notification settings - Fork 2
/
cli_test.go
42 lines (37 loc) · 1.11 KB
/
cli_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
package t
import (
"testing"
)
func TestTest(testing *testing.T) {
inputs := []struct {
expected string
param param
received string
}{
{expected: "", param: param{}, received: ""},
{expected: "hello", param: param{}, received: "hello"},
{expected: "2", param: param{operator: "==", evalFlag: true}, received: "1+1"},
{expected: "10", param: param{operator: "<", evalFlag: true}, received: "2*10"},
{expected: "a.*", param: param{operator: "=~", matchFlag: true}, received: "abc"},
}
for _, input := range inputs {
passed := test(input.expected, input.received, input.param)
if passed == false {
testing.Errorf("%v %s %v: is not true", input.expected, input.param.operator, input.received)
}
}
inputs = []struct {
expected string
param param
received string
}{
{expected: "", param: param{operator: "=="}, received: "h"},
{expected: "hello", param: param{operator: "=="}, received: "hell"},
}
for _, input := range inputs {
passed := test(input.expected, input.received, input.param)
if passed == true {
testing.Errorf("%v is %v", input.expected, input.received)
}
}
}