Data-drive script evaluation unit tests.

This commit is contained in:
Gavin Andresen
2012-04-17 17:57:06 -04:00
parent 6a7a42be16
commit 8449a8788a
3 changed files with 253 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
[
["", ""],
["", "NOP"],
["NOP", ""],
["NOP","NOP"],
["0 1","EQUAL"],
["1 1 ADD", "0 EQUAL"],
["11 1 ADD 12 SUB", "11 EQUAL"],
["2147483648 0 ADD", "NOP", "arithmetic operands must be in range [-2^31...2^31] "],
["-2147483648 0 ADD", "NOP", "arithmetic operands must be in range [-2^31...2^31] "],
["2147483647 DUP ADD", "4294967294 NUMEQUAL", "NUMEQUAL must be in numeric range"],
["0xaabbccddeeff NOT", "0 EQUAL", "NOT is an arithmetic operand"],
["2 DUP MUL", "4 EQUAL", "disabled"],
["2 DUP DIV", "1 EQUAL", "disabled"],
["2 2MUL", "4 EQUAL", "disabled"],
["2 2DIV", "1 EQUAL", "disabled"],
["7 3 MOD", "1 EQUAL", "disabled"],
["2 2 LSHIFT", "8 EQUAL", "disabled"],
["2 1 RSHIFT", "1 EQUAL", "disabled"],
["NOP1","NOP10"]
]

View File

@@ -0,0 +1,78 @@
[
["2 -2 ADD", "0 EQUAL"],
["2147483647 -2147483647 ADD", "0 EQUAL"],
["-1 -1 ADD", "-2 EQUAL"],
["1","NOP"],
["0 0","EQUAL"],
["1 1 ADD", "2 EQUAL"],
["1 1ADD", "2 EQUAL"],
["111 1SUB", "110 EQUAL"],
["111 1 ADD 12 SUB", "100 EQUAL"],
["0 ABS", "0 EQUAL"],
["16 ABS", "16 EQUAL"],
["-16 ABS", "-16 NEGATE EQUAL"],
["0 NOT", "NOP"],
["1 NOT", "0 EQUAL"],
["11 NOT", "0 EQUAL"],
["0 0NOTEQUAL", "0 EQUAL"],
["1 0NOTEQUAL", "1 EQUAL"],
["111 0NOTEQUAL", "1 EQUAL"],
["-111 0NOTEQUAL", "1 EQUAL"],
["1 1 BOOLAND", "NOP"],
["1 0 BOOLAND", "NOT"],
["0 1 BOOLAND", "NOT"],
["0 0 BOOLAND", "NOT"],
["16 17 BOOLAND", "NOP"],
["1 1 BOOLOR", "NOP"],
["1 0 BOOLOR", "NOP"],
["0 1 BOOLOR", "NOP"],
["0 0 BOOLOR", "NOT"],
["16 17 BOOLOR", "NOP"],
["11 10 1 ADD", "NUMEQUAL"],
["11 10 1 ADD", "NUMEQUALVERIFY 1"],
["11 10 1 ADD", "NUMNOTEQUAL NOT"],
["111 10 1 ADD", "NUMNOTEQUAL"],
["11 10", "LESSTHAN NOT"],
["4 4", "LESSTHAN NOT"],
["10 11", "LESSTHAN"],
["-11 11", "LESSTHAN"],
["-11 -10", "LESSTHAN"],
["11 10", "GREATERTHAN"],
["4 4", "GREATERTHAN NOT"],
["10 11", "GREATERTHAN NOT"],
["-11 11", "GREATERTHAN NOT"],
["-11 -10", "GREATERTHAN NOT"],
["11 10", "LESSTHANOREQUAL NOT"],
["4 4", "LESSTHANOREQUAL"],
["10 11", "LESSTHANOREQUAL"],
["-11 11", "LESSTHANOREQUAL"],
["-11 -10", "LESSTHANOREQUAL"],
["11 10", "GREATERTHANOREQUAL"],
["4 4", "GREATERTHANOREQUAL"],
["10 11", "GREATERTHANOREQUAL NOT"],
["-11 11", "GREATERTHANOREQUAL NOT"],
["-11 -10", "GREATERTHANOREQUAL NOT"],
["1 0 MIN", "0 NUMEQUAL"],
["0 1 MIN", "0 NUMEQUAL"],
["-1 0 MIN", "-1 NUMEQUAL"],
["0 -2147483647 MIN", "-2147483647 NUMEQUAL"],
["2147483647 0 MAX", "2147483647 NUMEQUAL"],
["0 100 MAX", "100 NUMEQUAL"],
["-100 0 MAX", "0 NUMEQUAL"],
["0 -2147483647 MAX", "0 NUMEQUAL"],
["0 0 1", "WITHIN"],
["1 0 1", "WITHIN NOT"],
["0 -2147483647 2147483647", "WITHIN"],
["-1 -100 100", "WITHIN"],
["11 -100 100", "WITHIN"],
["-2147483647 -100 100", "WITHIN NOT"],
["2147483647 -100 100", "WITHIN NOT"],
["2147483647 2147483647 SUB", "0 EQUAL"],
["2147483647 DUP ADD", "4294967294 EQUAL", ">32 bit EQUAL is valid"],
["2147483647 NEGATE DUP ADD", "-4294967294 EQUAL"],
["NOP","1"]
]