Data-drive script evaluation unit tests.
[novacoin.git] / src / test / data / script_valid.json
1 [
2 ["2 -2 ADD", "0 EQUAL"],
3 ["2147483647 -2147483647 ADD", "0 EQUAL"],
4 ["-1 -1 ADD", "-2 EQUAL"],
5
6 ["1","NOP"],
7 ["0 0","EQUAL"],
8 ["1 1 ADD", "2 EQUAL"],
9 ["1 1ADD", "2 EQUAL"],
10 ["111 1SUB", "110 EQUAL"],
11 ["111 1 ADD 12 SUB", "100 EQUAL"],
12 ["0 ABS", "0 EQUAL"],
13 ["16 ABS", "16 EQUAL"],
14 ["-16 ABS", "-16 NEGATE EQUAL"],
15 ["0 NOT", "NOP"],
16 ["1 NOT", "0 EQUAL"],
17 ["11 NOT", "0 EQUAL"],
18 ["0 0NOTEQUAL", "0 EQUAL"],
19 ["1 0NOTEQUAL", "1 EQUAL"],
20 ["111 0NOTEQUAL", "1 EQUAL"],
21 ["-111 0NOTEQUAL", "1 EQUAL"],
22 ["1 1 BOOLAND", "NOP"],
23 ["1 0 BOOLAND", "NOT"],
24 ["0 1 BOOLAND", "NOT"],
25 ["0 0 BOOLAND", "NOT"],
26 ["16 17 BOOLAND", "NOP"],
27 ["1 1 BOOLOR", "NOP"],
28 ["1 0 BOOLOR", "NOP"],
29 ["0 1 BOOLOR", "NOP"],
30 ["0 0 BOOLOR", "NOT"],
31 ["16 17 BOOLOR", "NOP"],
32 ["11 10 1 ADD", "NUMEQUAL"],
33 ["11 10 1 ADD", "NUMEQUALVERIFY 1"],
34 ["11 10 1 ADD", "NUMNOTEQUAL NOT"],
35 ["111 10 1 ADD", "NUMNOTEQUAL"],
36 ["11 10", "LESSTHAN NOT"],
37 ["4 4", "LESSTHAN NOT"],
38 ["10 11", "LESSTHAN"],
39 ["-11 11", "LESSTHAN"],
40 ["-11 -10", "LESSTHAN"],
41 ["11 10", "GREATERTHAN"],
42 ["4 4", "GREATERTHAN NOT"],
43 ["10 11", "GREATERTHAN NOT"],
44 ["-11 11", "GREATERTHAN NOT"],
45 ["-11 -10", "GREATERTHAN NOT"],
46 ["11 10", "LESSTHANOREQUAL NOT"],
47 ["4 4", "LESSTHANOREQUAL"],
48 ["10 11", "LESSTHANOREQUAL"],
49 ["-11 11", "LESSTHANOREQUAL"],
50 ["-11 -10", "LESSTHANOREQUAL"],
51 ["11 10", "GREATERTHANOREQUAL"],
52 ["4 4", "GREATERTHANOREQUAL"],
53 ["10 11", "GREATERTHANOREQUAL NOT"],
54 ["-11 11", "GREATERTHANOREQUAL NOT"],
55 ["-11 -10", "GREATERTHANOREQUAL NOT"],
56 ["1 0 MIN", "0 NUMEQUAL"],
57 ["0 1 MIN", "0 NUMEQUAL"],
58 ["-1 0 MIN", "-1 NUMEQUAL"],
59 ["0 -2147483647 MIN", "-2147483647 NUMEQUAL"],
60 ["2147483647 0 MAX", "2147483647 NUMEQUAL"],
61 ["0 100 MAX", "100 NUMEQUAL"],
62 ["-100 0 MAX", "0 NUMEQUAL"],
63 ["0 -2147483647 MAX", "0 NUMEQUAL"],
64 ["0 0 1", "WITHIN"],
65 ["1 0 1", "WITHIN NOT"],
66 ["0 -2147483647 2147483647", "WITHIN"],
67 ["-1 -100 100", "WITHIN"],
68 ["11 -100 100", "WITHIN"],
69 ["-2147483647 -100 100", "WITHIN NOT"],
70 ["2147483647 -100 100", "WITHIN NOT"],
71
72 ["2147483647 2147483647 SUB", "0 EQUAL"],
73 ["2147483647 DUP ADD", "4294967294 EQUAL", ">32 bit EQUAL is valid"],
74 ["2147483647 NEGATE DUP ADD", "-4294967294 EQUAL"],
75
76
77 ["NOP","1"]
78 ]