Skip to content

Commit c70fb5f

Browse files
committed
(test)Export TestCase/TestCases
1 parent 55b7eb4 commit c70fb5f

File tree

6 files changed

+93
-85
lines changed

6 files changed

+93
-85
lines changed

array_str_test.go

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ func TestOpMapFilterReduce(t *testing.T) {
1616
AddOpMap(jl)
1717
AddOpFilter(jl)
1818
AddOpReduce(jl)
19-
runJSONLogicTestCases(assert, jl, []jsonLogicTestCase{
19+
TestCases{
2020
// http://jsonlogic.com/operations.html#map-reduce-and-filter
2121
{Logic: `{"map":[{"var":"integers"},{"*":[{"var":""},2]}]}`, Data: `{"integers":[1,2,3,4,5]}`, Result: []interface{}{float64(2), float64(4), float64(6), float64(8), float64(10)}},
2222
{Logic: `{"filter":[{"var":"integers"},{"%":[{"var":""},2]}]}`, Data: `{"integers":[1,2,3,4,5]}`, Result: []interface{}{float64(1), float64(3), float64(5)}},
@@ -27,7 +27,7 @@ func TestOpMapFilterReduce(t *testing.T) {
2727
{Logic: `{"filter":[[1,2]]}`, Data: `null`, Err: true},
2828
{Logic: `{"filter":[1,{"var":""}]}`, Data: `null`, Result: []interface{}{}},
2929
{Logic: `{"reduce":[[1,2],{"var":""}]}`, Data: `null`, Err: true},
30-
})
30+
}.Run(assert, jl)
3131

3232
}
3333

@@ -40,7 +40,7 @@ func TestOpAllNoneSome(t *testing.T) {
4040
AddOpAll(jl)
4141
AddOpNone(jl)
4242
AddOpSome(jl)
43-
runJSONLogicTestCases(assert, jl, []jsonLogicTestCase{
43+
TestCases{
4444
// http://jsonlogic.com/operations.html#map-reduce-and-filter
4545
{Logic: `{"all":[[1,2,3],{">":[{"var":""},0]}]}`, Data: `null`, Result: true},
4646
{Logic: `{"none":[[-3,-2,-1],{">":[{"var":""},0]}]}`, Data: `null`, Result: true},
@@ -53,7 +53,7 @@ func TestOpAllNoneSome(t *testing.T) {
5353
{Logic: `{"none":[[],{">":[{"var":""},0]}]}`, Data: `null`, Result: true},
5454
{Logic: `{"some":[[-1,0,-2],{">":[{"var":""},0]}]}`, Data: `null`, Result: false},
5555
{Logic: `{"some":[[],{">":[{"var":""},0]}]}`, Data: `null`, Result: false},
56-
})
56+
}.Run(assert, jl)
5757
}
5858

5959
func TestOpMerge(t *testing.T) {
@@ -63,21 +63,21 @@ func TestOpMerge(t *testing.T) {
6363
AddOpIf(jl)
6464
AddOpVar(jl)
6565
AddOpMerge(jl)
66-
runJSONLogicTestCases(assert, jl, []jsonLogicTestCase{
66+
TestCases{
6767
// http://jsonlogic.com/operations.html#merge
6868
{Logic: `{"merge":[[1,2],[3,4]]}`, Data: `null`, Result: []interface{}{float64(1), float64(2), float64(3), float64(4)}},
6969
{Logic: `{"missing":{"merge":["vin",{"if":[{"var":"financing"},["apr","term"],[]]}]}}`, Data: `{"financing":true}`, Result: []interface{}{"vin", "apr", "term"}},
7070
{Logic: `{"missing":{"merge":["vin",{"if":[{"var":"financing"},["apr","term"],[]]}]}}`, Data: `{"financing":false}`, Result: []interface{}{"vin"}},
7171
//
7272
{Logic: `{"merge":[]}`, Data: `null`, Result: []interface{}{}},
73-
})
73+
}.Run(assert, jl)
7474
}
7575

7676
func TestOpIn(t *testing.T) {
7777
assert := assert.New(t)
7878
jl := NewEmpty()
7979
AddOpIn(jl)
80-
runJSONLogicTestCases(assert, jl, []jsonLogicTestCase{
80+
TestCases{
8181
// http://jsonlogic.com/operations.html#in
8282
{Logic: `{"in":["Ringo",["John","Paul","George","Ringo"]]}`, Data: `null`, Result: true},
8383
// http://jsonlogic.com/operations.html#in-1
@@ -87,35 +87,35 @@ func TestOpIn(t *testing.T) {
8787
// 'in' convert to string in string mode.
8888
{Logic: `{"in":[1,"1"]}`, Data: `null`, Result: true},
8989
{Logic: `{"in":[null,"xnull"]}`, Data: `null`, Result: true},
90-
})
90+
}.Run(assert, jl)
9191
}
9292

9393
func TestOpCat(t *testing.T) {
9494
assert := assert.New(t)
9595
jl := NewEmpty()
9696
AddOpVar(jl)
9797
AddOpCat(jl)
98-
runJSONLogicTestCases(assert, jl, []jsonLogicTestCase{
98+
TestCases{
9999
// http://jsonlogic.com/operations.html#cat
100100
{Logic: `{"cat":["I love"," pie"]}`, Data: `null`, Result: "I love pie"},
101101
{Logic: `{"cat":["I love ",{"var":"filling"}," pie"]}`, Data: `{"filling":"apple","temp":110}`, Result: "I love apple pie"},
102102
//
103103
{Logic: `{"cat":[]}`, Data: `null`, Result: ""},
104104
{Logic: `{"cat":[1,true,3.11,null]}`, Data: `null`, Result: "1true3.11null"},
105-
})
105+
}.Run(assert, jl)
106106
}
107107

108108
func TestOpSubstr(t *testing.T) {
109109
assert := assert.New(t)
110110
jl := NewEmpty()
111111
AddOpSubstr(jl)
112-
runJSONLogicTestCases(assert, jl, []jsonLogicTestCase{
112+
TestCases{
113113
// http://jsonlogic.com/operations.html#substr
114114
{Logic: `{"substr":["jsonlogic",4]}`, Data: `null`, Result: "logic"},
115115
{Logic: `{"substr":["jsonlogic",-5]}`, Data: `null`, Result: "logic"},
116116
{Logic: `{"substr":["jsonlogic",1,3]}`, Data: `null`, Result: "son"},
117117
{Logic: `{"substr":["jsonlogic",4,-2]}`, Data: `null`, Result: "log"},
118118
// Multi bytes chars.
119119
{Logic: `{"substr":["大家好",1]}`, Data: `null`, Result: "家好"},
120-
})
120+
}.Run(assert, jl)
121121
}

data_access_test.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ func TestOpVar(t *testing.T) {
1010
assert := assert.New(t)
1111
jl := NewEmpty()
1212
AddOpVar(jl)
13-
runJSONLogicTestCases(assert, jl, []jsonLogicTestCase{
13+
TestCases{
1414
// http://jsonlogic.com/operations.html#var
1515
{Logic: `{"var":["a"]}`, Data: `{"a":1,"b":2}`, Result: float64(1)},
1616
{Logic: `{"var":"a"}`, Data: `{"a":1,"b":2}`, Result: float64(1)},
@@ -56,7 +56,7 @@ func TestOpVar(t *testing.T) {
5656
// Err.
5757
{Logic: `{"var":[]}`, Data: `null`, Err: true},
5858
{Logic: `{"var":[[]]}`, Data: `null`, Err: true},
59-
})
59+
}.Run(assert, jl)
6060

6161
}
6262

@@ -65,7 +65,7 @@ func TestOpMissing(t *testing.T) {
6565
jl := NewEmpty()
6666
AddOpVar(jl)
6767
AddOpMissing(jl)
68-
runJSONLogicTestCases(assert, jl, []jsonLogicTestCase{
68+
TestCases{
6969
// http://jsonlogic.com/operations.html#missing
7070
{Logic: `{"missing":["a","b"]}`, Data: `{"a":"apple","c":"carrot"}`, Result: []interface{}{"b"}},
7171
{Logic: `{"missing":["a","b"]}`, Data: `{"a":"apple", "b":"banana"}`, Result: []interface{}{}},
@@ -82,19 +82,19 @@ func TestOpMissing(t *testing.T) {
8282
// Using logic in param.
8383
{Logic: `{"missing":{"var":"pointer"}}`, Data: `{"a":"xxx","pointer":"a"}`, Result: []interface{}{}},
8484
{Logic: `{"missing":{"var":"pointer"}}`, Data: `{"a":"xxx","pointer":"b"}`, Result: []interface{}{"b"}},
85-
})
85+
}.Run(assert, jl)
8686
}
8787

8888
func TestOpMissingSome(t *testing.T) {
8989
assert := assert.New(t)
9090
jl := NewEmpty()
9191
AddOpVar(jl)
9292
AddOpMissingSome(jl)
93-
runJSONLogicTestCases(assert, jl, []jsonLogicTestCase{
93+
TestCases{
9494
// http://jsonlogic.com/operations.html#missing_some
9595
{Logic: `{"missing_some":[1,["a","b","c"]]}`, Data: `{"a":"apple"}`, Result: []interface{}{}},
9696
{Logic: `{"missing_some":[2,["a","b","c"]]}`, Data: `{"a":"apple"}`, Result: []interface{}{"b", "c"}},
9797
// Using logic in param.
9898
{Logic: `{"missing_some":[2,{"var":"pointer"}]}`, Data: `{"pointer":["x","y"]}`, Result: []interface{}{"x", "y"}},
99-
})
99+
}.Run(assert, jl)
100100
}

jsonlogic_test.go

Lines changed: 0 additions & 39 deletions
This file was deleted.

logic_test.go

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ func TestOpIf(t *testing.T) {
1010
assert := assert.New(t)
1111
jl := NewEmpty()
1212
AddOpIf(jl)
13-
runJSONLogicTestCases(assert, jl, []jsonLogicTestCase{
13+
TestCases{
1414
// http://jsonlogic.com/operations.html#if
1515
{Logic: `{"if":[true,"yes","no"]}`, Data: `null`, Result: "yes"},
1616
{Logic: `{"if":[false,"yes","no"]}`, Data: `null`, Result: "no"},
@@ -21,15 +21,15 @@ func TestOpIf(t *testing.T) {
2121
// Two params.
2222
{Logic: `{"if":[true,"1"]}`, Data: `null`, Result: "1"},
2323
{Logic: `{"if":[false,"1"]}`, Data: `null`, Result: nil},
24-
})
24+
}.Run(assert, jl)
2525

2626
}
2727

2828
func TestOpStrictEqual(t *testing.T) {
2929
assert := assert.New(t)
3030
jl := NewEmpty()
3131
AddOpStrictEqual(jl)
32-
runJSONLogicTestCases(assert, jl, []jsonLogicTestCase{
32+
TestCases{
3333
// http://jsonlogic.com/operations.html
3434
{Logic: `{"===":[1,1]}`, Data: `null`, Result: true},
3535
{Logic: `{"===":[1,"1"]}`, Data: `null`, Result: false},
@@ -44,15 +44,15 @@ func TestOpStrictEqual(t *testing.T) {
4444
{Logic: `{"===":["",3.0]}`, Data: `null`, Result: false},
4545
// Non-primitives.
4646
{Logic: `{"===":["",[]]}`, Data: `null`, Err: true},
47-
})
47+
}.Run(assert, jl)
4848

4949
}
5050

5151
func TestOpStrictNotEqual(t *testing.T) {
5252
assert := assert.New(t)
5353
jl := NewEmpty()
5454
AddOpStrictNotEqual(jl)
55-
runJSONLogicTestCases(assert, jl, []jsonLogicTestCase{
55+
TestCases{
5656
// http://jsonlogic.com/operations.html
5757
{Logic: `{"!==":[1,2]}`, Data: `null`, Result: true},
5858
{Logic: `{"!==":[1,"1"]}`, Data: `null`, Result: true},
@@ -67,15 +67,15 @@ func TestOpStrictNotEqual(t *testing.T) {
6767
{Logic: `{"!==":["",3.0]}`, Data: `null`, Result: true},
6868
// Non-primitives.
6969
{Logic: `{"!==":["",[]]}`, Data: `null`, Err: true},
70-
})
70+
}.Run(assert, jl)
7171

7272
}
7373

7474
func TestOpNegative(t *testing.T) {
7575
assert := assert.New(t)
7676
jl := NewEmpty()
7777
AddOpNegative(jl)
78-
runJSONLogicTestCases(assert, jl, []jsonLogicTestCase{
78+
TestCases{
7979
// http://jsonlogic.com/operations.html
8080
{Logic: `{"!":[true]}`, Data: `null`, Result: false},
8181
{Logic: `{"!":true}`, Data: `null`, Result: false},
@@ -93,14 +93,14 @@ func TestOpNegative(t *testing.T) {
9393
{Logic: `{"!":[["x"]]}`, Data: `null`, Result: false},
9494
{Logic: `{"!":{}}`, Data: `null`, Result: false},
9595
{Logic: `{"!":{"1":2,"3":4}}`, Data: `null`, Result: false},
96-
})
96+
}.Run(assert, jl)
9797
}
9898

9999
func TestOpDoubleNegative(t *testing.T) {
100100
assert := assert.New(t)
101101
jl := NewEmpty()
102102
AddOpDoubleNegative(jl)
103-
runJSONLogicTestCases(assert, jl, []jsonLogicTestCase{
103+
TestCases{
104104
// http://jsonlogic.com/operations.html
105105
{Logic: `{"!!":[true]}`, Data: `null`, Result: true},
106106
{Logic: `{"!!":true}`, Data: `null`, Result: true},
@@ -118,35 +118,35 @@ func TestOpDoubleNegative(t *testing.T) {
118118
{Logic: `{"!!":[["x"]]}`, Data: `null`, Result: true},
119119
{Logic: `{"!!":{}}`, Data: `null`, Result: true},
120120
{Logic: `{"!!":{"1":2,"3":4}}`, Data: `null`, Result: true},
121-
})
121+
}.Run(assert, jl)
122122
}
123123

124124
func TestOpAnd(t *testing.T) {
125125
assert := assert.New(t)
126126
jl := NewEmpty()
127127
AddOpAnd(jl)
128-
runJSONLogicTestCases(assert, jl, []jsonLogicTestCase{
128+
TestCases{
129129
// http://jsonlogic.com/operations.html
130130
{Logic: `{"and":[true,true]}`, Data: `null`, Result: true},
131131
{Logic: `{"and":[true,false]}`, Data: `null`, Result: false},
132132
{Logic: `{"and":[true,"a",3]}`, Data: `null`, Result: float64(3)},
133133
{Logic: `{"and":[true,"",3]}`, Data: `null`, Result: ""},
134134
// Zero param.
135135
{Logic: `{"and":[]}`, Data: `null`, Err: true},
136-
})
136+
}.Run(assert, jl)
137137
}
138138

139139
func TestOpOr(t *testing.T) {
140140
assert := assert.New(t)
141141
jl := NewEmpty()
142142
AddOpOr(jl)
143-
runJSONLogicTestCases(assert, jl, []jsonLogicTestCase{
143+
TestCases{
144144
// http://jsonlogic.com/operations.html
145145
{Logic: `{"or":[true,false]}`, Data: `null`, Result: true},
146146
{Logic: `{"or":[false,true]}`, Data: `null`, Result: true},
147147
{Logic: `{"or":[false,"a"]}`, Data: `null`, Result: "a"},
148148
{Logic: `{"or":[false,0,"a"]}`, Data: `null`, Result: "a"},
149149
// Zero param.
150150
{Logic: `{"or":[]}`, Data: `null`, Err: true},
151-
})
151+
}.Run(assert, jl)
152152
}

0 commit comments

Comments
 (0)