{ "dateTests" : { "schema" : [{ "name": "DateObject", "properties": [{ "name": "date", "type": "date" }] }], "objects": [ { "type": "DateObject", "value": [10000] }, { "type": "DateObject", "value": [10001] }, { "type": "DateObject", "value": [10002] } ], "tests": [ ["QueryCount", 2, "DateObject", "date < $0", [2, "date"]], ["QueryCount", 3, "DateObject", "date <= $0", [2, "date"]], ["QueryCount", 2, "DateObject", "date > $0", [0, "date"]], ["QueryCount", 3, "DateObject", "date >= $0", [0, "date"]], ["QueryCount", 1, "DateObject", "date == $0", [0, "date"]], ["QueryCount", 2, "DateObject", "date != $0", [0, "date"]], ["QueryThrows", "DateObject", "date == 'not a date'"], ["QueryThrows", "DateObject", "date == 1"], ["QueryThrows", "DateObject", "date == $0", 1] ] }, "boolTests" : { "schema" : [{ "name": "BoolObject", "properties": [{ "name": "boolCol", "type": "bool" }] }], "objects": [ { "type": "BoolObject", "value": [false] }, { "type": "BoolObject", "value": [true] }, { "type": "BoolObject", "value": [true] } ], "tests": [ ["QueryCount", 2, "BoolObject", "boolCol == true"], ["QueryCount", 1, "BoolObject", "boolCol==false"], ["QueryCount", 1, "BoolObject", "boolCol != true"], ["QueryCount", 2, "BoolObject", "true == boolCol"], ["QueryCount", 2, "BoolObject", "boolCol == TRUE"], ["QueryCount", 1, "BoolObject", "boolCol == FALSE"], ["QueryCount", 2, "BoolObject", "boolCol == $0", true], ["QueryCount", 1, "BoolObject", "boolCol == $0", false], ["QueryCount", 0, "BoolObject", "boolCol == true && boolCol == false"], ["QueryCount", 3, "BoolObject", "boolCol == true || boolCol == false"], ["QueryThrows", "BoolObject", "boolCol == 0"], ["QueryThrows", "BoolObject", "boolCol == 1"], ["QueryThrows", "BoolObject", "boolCol == 'not a bool'"], ["QueryThrows", "BoolObject", "boolCol == $0", "not a bool"], ["QueryThrows", "BoolObject", "boolCol > true"], ["QueryThrows", "BoolObject", "boolCol >= true"], ["QueryThrows", "BoolObject", "boolCol < true"], ["QueryThrows", "BoolObject", "boolCol <= true"], ["QueryThrows", "BoolObject", "boolCol BEGINSWITH true"], ["QueryThrows", "BoolObject", "boolCol CONTAINS true"], ["QueryThrows", "BoolObject", "boolCol ENDSWITH true"] ] }, "intTests" : { "schema" : [{ "name": "IntObject", "properties": [{ "name": "intCol", "type": "int" }] }], "objects": [ { "type": "IntObject", "value": [-1] }, { "type": "IntObject", "value": [0] }, { "type": "IntObject", "value": [100] } ], "tests": [ ["QueryCount", 1, "IntObject", "intCol == -1"], ["QueryCount", 1, "IntObject", "intCol==0"], ["QueryCount", 0, "IntObject", "1 == intCol"], ["QueryCount", 2, "IntObject", "intCol != 0"], ["QueryCount", 2, "IntObject", "intCol > -1"], ["QueryCount", 3, "IntObject", "intCol >= -1"], ["QueryCount", 2, "IntObject", "intCol < 100"], ["QueryCount", 3, "IntObject", "intCol <= 100"], ["QueryCount", 1, "IntObject", "intCol > 0x1F"], ["QueryCount", 1, "IntObject", "intCol == $0", 100], ["QueryThrows", "IntObject", "intCol == 'not an int'"], ["QueryThrows", "IntObject", "intCol == true"], ["QueryThrows", "IntObject", "intCol == $0", "not an int"], ["QueryThrows", "IntObject", "intCol BEGINSWITH 1"], ["QueryThrows", "IntObject", "intCol CONTAINS 1"], ["QueryThrows", "IntObject", "intCol ENDSWITH 1"] ] }, "floatTests" : { "schema" : [{ "name": "FloatObject", "properties": [{ "name": "floatCol", "type": "float" }] }], "objects": [ { "type": "FloatObject", "value": [-1.001] }, { "type": "FloatObject", "value": [0.0] }, { "type": "FloatObject", "value": [100.2] } ], "tests": [ ["QueryCount", 1, "FloatObject", "floatCol == -1.001"], ["QueryCount", 1, "FloatObject", "floatCol = 0"], ["QueryCount", 0, "FloatObject", "1 == floatCol"], ["QueryCount", 2, "FloatObject", "floatCol != 0"], ["QueryCount", 2, "FloatObject", "floatCol > -1.001"], ["QueryCount", 3, "FloatObject", "floatCol >= -1.001"], ["QueryCount", 2, "FloatObject", "floatCol < 100.2"], ["QueryCount", 3, "FloatObject", "floatCol <= 100.2"], ["QueryCount", 1, "FloatObject", "floatCol > 0x1F"], ["QueryCount", 1, "FloatObject", "floatCol == $0", 100.2], ["QueryThrows", "FloatObject", "floatCol == 'not a float'"], ["QueryThrows", "FloatObject", "floatCol == true"], ["QueryThrows", "FloatObject", "floatCol == $0", "not a float"], ["QueryThrows", "FloatObject", "floatCol BEGINSWITH 1"], ["QueryThrows", "FloatObject", "floatCol CONTAINS 1"], ["QueryThrows", "FloatObject", "floatCol ENDSWITH 1"], ["Disabled", "QueryThrows", "FloatObject", "floatCol = 3.5e+38"], ["Disabled", "QueryThrows", "FloatObject", "floatCol = -3.5e+38"] ] }, "doubleTests" : { "schema" : [{ "name": "DoubleObject", "properties": [{ "name": "doubleCol", "type": "double" }] }], "objects": [ { "type": "DoubleObject", "value": [-1.001] }, { "type": "DoubleObject", "value": [0.0] }, { "type": "DoubleObject", "value": [100.2] } ], "tests": [ ["QueryCount", 1, "DoubleObject", "doubleCol == -1.001"], ["QueryCount", 1, "DoubleObject", "doubleCol == 0"], ["QueryCount", 0, "DoubleObject", "1 == doubleCol"], ["QueryCount", 2, "DoubleObject", "doubleCol != 0"], ["QueryCount", 2, "DoubleObject", "doubleCol > -1.001"], ["QueryCount", 3, "DoubleObject", "doubleCol >= -1.001"], ["QueryCount", 2, "DoubleObject", "doubleCol < 100.2"], ["QueryCount", 3, "DoubleObject", "doubleCol <= 100.2"], ["QueryCount", 1, "DoubleObject", "doubleCol > 0x1F"], ["QueryCount", 1, "DoubleObject", "doubleCol == $0", 100.2], ["QueryThrows", "DoubleObject", "doubleCol == 'not a double'"], ["QueryThrows", "DoubleObject", "doubleCol == true"], ["QueryThrows", "DoubleObject", "doubleCol == $0", "not a double"], ["QueryThrows", "DoubleObject", "doubleCol BEGINSWITH 1"], ["QueryThrows", "DoubleObject", "doubleCol CONTAINS 1"], ["QueryThrows", "DoubleObject", "doubleCol ENDSWITH 1"] ] }, "stringTests" : { "schema" : [{ "name": "StringObject", "properties": [{ "name": "stringCol", "type": "string" }] }], "objects": [ { "type": "StringObject", "value": ["A"] }, { "type": "StringObject", "value": ["a"] }, { "type": "StringObject", "value": ["a"] }, { "type": "StringObject", "value": ["C"] }, { "type": "StringObject", "value": ["c"] }, { "type": "StringObject", "value": ["abc"] }, { "type": "StringObject", "value": ["ABC"] }, { "type": "StringObject", "value": [""] }, { "type": "StringObject", "value": ["\\\"\\n\\0\\r\\\\'"] } ], "tests": [ ["QueryCount", 2, "StringObject", "stringCol == 'a'"], ["QueryCount", 1, "StringObject", "'c' == stringCol"], ["QueryCount", 2, "StringObject", "stringCol == \"a\""], ["QueryCount", 1, "StringObject", "stringCol=='abc'"], ["QueryCount", 1, "StringObject", "stringCol == ''"], ["QueryCount", 8, "StringObject", "stringCol != ''"], ["QueryCount", 1, "StringObject", "stringCol == \"\\\"\\n\\0\\r\\\\'\""], ["QueryCount", 3, "StringObject", "stringCol BEGINSWITH 'a'"], ["QueryCount", 1, "StringObject", "stringCol beginswith 'ab'"], ["QueryCount", 0, "StringObject", "stringCol BEGINSWITH 'abcd'"], ["QueryCount", 2, "StringObject", "stringCol BEGINSWITH 'A'"], ["QueryCount", 2, "StringObject", "stringCol ENDSWITH 'c'"], ["QueryCount", 1, "StringObject", "stringCol endswith 'bc'"], ["QueryCount", 9, "StringObject", "stringCol ENDSWITH ''"], ["QueryCount", 1, "StringObject", "stringCol CONTAINS 'b'"], ["QueryCount", 2, "StringObject", "stringCol contains 'c'"], ["QueryCount", 9, "StringObject", "stringCol CONTAINS ''"], ["QueryCount", 2, "StringObject", "stringCol == $0", "a"], ["QueryCount", 2, "StringObject", "stringCol ENDSWITH $0", "c"], ["QueryThrows", "StringObject", "stringCol == true"], ["QueryThrows", "StringObject", "stringCol == 123"], ["QueryThrows", "StringObject", "stringCol CONTAINS $0", 1], ["Disabled", "QueryCount", 3, "StringObject", "stringCol ==[c] 'a'"], ["Disabled", "QueryCount", 5, "StringObject", "stringCol BEGINSWITH[c] 'A'"], ["Disabled", "QueryCount", 4, "StringObject", "stringCol ENDSWITH[c] 'c'"], ["Disabled", "QueryCount", 2, "StringObject", "stringCol CONTAINS[c] 'B'"] ] }, "binaryTests" : { "schema" : [{ "name": "BinaryObject", "properties": [{ "name": "binaryCol", "type": "data" }] }], "objects": [ { "type": "BinaryObject", "value": [[1, 100, 233, 255, 0]] }, { "type": "BinaryObject", "value": [[1, 100]] }, { "type": "BinaryObject", "value": [[100]] }, { "type": "BinaryObject", "value": [[]] }, { "type": "BinaryObject", "value": [[255, 0]] } ], "tests": [ ["QueryCount", 1, "BinaryObject", "binaryCol == $0", [1, "binaryCol"]], ["QueryCount", 1, "BinaryObject", "$0 == binaryCol", [2, "binaryCol"]], ["QueryCount", 4, "BinaryObject", "binaryCol != $0", [0, "binaryCol"]], ["QueryCount", 1, "BinaryObject", "binaryCol BEGINSWITH $0", [0, "binaryCol"]], ["QueryCount", 2, "BinaryObject", "binaryCol BEGINSWITH $0", [1, "binaryCol"]], ["QueryCount", 2, "BinaryObject", "binaryCol ENDSWITH $0", [4, "binaryCol"]], ["QueryCount", 3, "BinaryObject", "binaryCol CONTAINS $0", [2, "binaryCol"]] ] }, "objectTests" : { "schema" : [ { "name": "IntObject", "properties": [{ "name": "intCol", "type": "int" }] }, { "name": "LinkObject", "properties": [{ "name": "linkCol", "type": "IntObject" }] } ], "objects": [ { "type": "LinkObject", "value": [[1]] }, { "type": "LinkObject", "value": [[2]] }, { "type": "LinkObject", "value": [null] } ], "tests": [ ["QueryCount", 1, "LinkObject", "linkCol == $0", [0, "linkCol"]], ["QueryCount", 1, "LinkObject", "$0 == linkCol", [1, "linkCol"]], ["QueryCount", 2, "LinkObject", "linkCol != $0", [0, "linkCol"]], ["QueryThrows", "LinkObject", "linkCol > $0", [0, "linkCol"]], ["QueryThrows", "LinkObject", "intCol = $0", [0, "linkCol"]] ] }, "compoundTests" : { "schema" : [ { "name": "IntObject", "properties": [{ "name": "intCol", "type": "int" }], "primaryKey" : "intCol" } ], "objects": [ { "type": "IntObject", "value": [0] }, { "type": "IntObject", "value": [1] }, { "type": "IntObject", "value": [2] }, { "type": "IntObject", "value": [3] } ], "tests": [ ["ObjectSet", [], "IntObject", "intCol == 0 && intCol == 1"], ["ObjectSet", [0, 1], "IntObject", "intCol == 0 || intCol == 1"], ["ObjectSet", [0], "IntObject", "intCol == 0 && intCol != 1"], ["ObjectSet", [2, 3], "IntObject", "intCol >= 2 && intCol < 4"], ["ObjectSet", [0], "IntObject", "intCol == 0 && NOT intCol != 0"], ["ObjectSet", [0, 3], "IntObject", "intCol == 0 || NOT (intCol == 1 || intCol == 2)"], ["ObjectSet", [1], "IntObject", "(intCol == 0 || intCol == 1) && intCol >= 1"], ["ObjectSet", [1], "IntObject", "intCol >= 1 && (intCol == 0 || intCol == 1)"], ["ObjectSet", [0, 1], "IntObject", "intCol == 0 || (intCol == 1 && intCol >= 1)"], ["ObjectSet", [0, 1], "IntObject", "(intCol == 1 && intCol >= 1) || intCol == 0"], ["ObjectSet", [0, 1], "IntObject", "intCol == 0 || intCol == 1 && intCol >= 1"], ["ObjectSet", [0, 1, 2],"IntObject", "intCol == 0 || intCol == 1 || intCol <= 2"], ["ObjectSet", [0, 1], "IntObject", "intCol == 1 && intCol >= 1 || intCol == 0"], ["ObjectSet", [0, 1], "IntObject", "intCol == 1 || intCol == 0 && intCol <= 0 && intCol >= 0"], ["ObjectSet", [0, 1], "IntObject", "intCol == 0 || NOT (intCol == 3 && intCol >= 0) && intCol == 1"] ] } }