Add tests for WHEREIN. Add WHEREIN to the commands.json

This commit is contained in:
Alex Roitman 2017-08-24 10:54:43 -07:00
parent f738e40c7b
commit 1e4b635e19
2 changed files with 54 additions and 0 deletions

View File

@ -344,6 +344,14 @@
"optional": true, "optional": true,
"multiple": true "multiple": true
}, },
{
"command": "WHEREIN",
"name": ["field","count","value"],
"type": ["string","integer","double"],
"optional": true,
"multiple": true,
"variadic": true
},
{ {
"command": "NOFIELDS", "command": "NOFIELDS",
"name": [], "name": [],
@ -411,6 +419,14 @@
"optional": true, "optional": true,
"multiple": true "multiple": true
}, },
{
"command": "WHEREIN",
"name": ["field","count","value"],
"type": ["string","integer","double"],
"optional": true,
"multiple": true,
"variadic": true
},
{ {
"command": "NOFIELDS", "command": "NOFIELDS",
"name": [], "name": [],
@ -496,6 +512,14 @@
"optional": true, "optional": true,
"multiple": true "multiple": true
}, },
{
"command": "WHEREIN",
"name": ["field","count","value"],
"type": ["string","integer","double"],
"optional": true,
"multiple": true,
"variadic": true
},
{ {
"command": "NOFIELDS", "command": "NOFIELDS",
"name": [], "name": [],
@ -632,6 +656,14 @@
"optional": true, "optional": true,
"multiple": true "multiple": true
}, },
{
"command": "WHEREIN",
"name": ["field","count","value"],
"type": ["string","integer","double"],
"optional": true,
"multiple": true,
"variadic": true
},
{ {
"command": "NOFIELDS", "command": "NOFIELDS",
"name": [], "name": [],
@ -812,6 +844,14 @@
"optional": true, "optional": true,
"multiple": true "multiple": true
}, },
{
"command": "WHEREIN",
"name": ["field","count","value"],
"type": ["string","integer","double"],
"optional": true,
"multiple": true,
"variadic": true
},
{ {
"command": "NOFIELDS", "command": "NOFIELDS",
"name": [], "name": [],

View File

@ -29,6 +29,7 @@ func subTestKeys(t *testing.T, mc *mockServer) {
runStep(t, mc, "SET EX", keys_SET_EX_test) runStep(t, mc, "SET EX", keys_SET_EX_test)
runStep(t, mc, "PDEL", keys_PDEL_test) runStep(t, mc, "PDEL", keys_PDEL_test)
runStep(t, mc, "FIELDS", keys_FIELDS_test) runStep(t, mc, "FIELDS", keys_FIELDS_test)
runStep(t, mc, "WHEREIN", keys_WHEREIN_test)
} }
func keys_BOUNDS_test(mc *mockServer) error { func keys_BOUNDS_test(mc *mockServer) error {
@ -332,3 +333,16 @@ func keys_PDEL_test(mc *mockServer) error {
{"PDEL", "mykey", "*"}, {0}, {"PDEL", "mykey", "*"}, {0},
}) })
} }
func keys_WHEREIN_test(mc *mockServer) error {
return mc.DoBatch([][]interface{}{
{"SET", "mykey", "myid_a1", "FIELD", "a", 1, "POINT", 33, -115}, {"OK"},
{"WITHIN", "mykey", "WHEREIN", "a", 3, 0, 1, 2, "BOUNDS", 32.8, -115.2, 33.2, -114.8}, {`[0 [[myid_a1 {"type":"Point","coordinates":[-115,33]} [a 1]]]]`},
{"WITHIN", "mykey", "WHEREIN", "a", "a", 0, 1, 2, "BOUNDS", 32.8, -115.2, 33.2, -114.8}, {"ERR invalid argument 'a'"},
{"WITHIN", "mykey", "WHEREIN", "a", 1, 0, 1, 2, "BOUNDS", 32.8, -115.2, 33.2, -114.8}, {"ERR invalid argument '1'"},
{"WITHIN", "mykey", "WHEREIN", "a", 3, 0, "a", 2, "BOUNDS", 32.8, -115.2, 33.2, -114.8}, {"ERR invalid argument 'a'"},
{"SET", "mykey", "myid_a2", "FIELD", "a", 2, "POINT", 32.99, -115}, {"OK"},
{"SET", "mykey", "myid_a3", "FIELD", "a", 3, "POINT", 33, -115.02}, {"OK"},
{"WITHIN", "mykey", "WHEREIN", "a", 3, 0, 1, 2, "BOUNDS", 32.8, -115.2, 33.2, -114.8}, {`[0 [[myid_a1 {"type":"Point","coordinates":[-115,33]} [a 1]] [myid_a2 {"type":"Point","coordinates":[-115,32.99]} [a 2]]]]`},
})
}