aboutsummaryrefslogtreecommitdiffstats
path: root/src/GeneralStateTestsFiller
diff options
context:
space:
mode:
authorwinsvega <winsvega@mail.ru>2017-04-03 20:26:08 +0800
committerGitHub <noreply@github.com>2017-04-03 20:26:08 +0800
commitd20829ef0bfd7a086d5a97c2c8008dcf83cb5304 (patch)
tree4b7d9ee70009c9bb8d3965eaf1a0cbddf3e7fd33 /src/GeneralStateTestsFiller
parent8e5e26d20e9d3a76fd493f84ab6f79fc1990764d (diff)
parent7458738f0b906b52075f4ff79a7309ce28c8fe56 (diff)
downloadtangerine-tests-d20829ef0bfd7a086d5a97c2c8008dcf83cb5304.tar
tangerine-tests-d20829ef0bfd7a086d5a97c2c8008dcf83cb5304.tar.gz
tangerine-tests-d20829ef0bfd7a086d5a97c2c8008dcf83cb5304.tar.bz2
tangerine-tests-d20829ef0bfd7a086d5a97c2c8008dcf83cb5304.tar.lz
tangerine-tests-d20829ef0bfd7a086d5a97c2c8008dcf83cb5304.tar.xz
tangerine-tests-d20829ef0bfd7a086d5a97c2c8008dcf83cb5304.tar.zst
tangerine-tests-d20829ef0bfd7a086d5a97c2c8008dcf83cb5304.zip
Merge pull request #149 from ethereum/revertTests
Revert tests
Diffstat (limited to 'src/GeneralStateTestsFiller')
-rw-r--r--src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeCallsFiller.json299
-rw-r--r--src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeCreateFiller.json99
-rw-r--r--src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeDirectCallFiller.json116
-rw-r--r--src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeFiller.json103
-rw-r--r--src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeInInitFiller.json120
-rw-r--r--src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeMultipleSubCallsFiller.json412
-rw-r--r--src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeReturnFiller.json164
-rw-r--r--src/GeneralStateTestsFiller/stRevertTest/TouchToEmptyAccountRevert3Filler.json4
8 files changed, 1315 insertions, 2 deletions
diff --git a/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeCallsFiller.json b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeCallsFiller.json
new file mode 100644
index 000000000..bfeaaaf6f
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeCallsFiller.json
@@ -0,0 +1,299 @@
+{
+ "RevertOpcodeCalls" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "0x020000",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "1",
+ "currentTimestamp" : "1000",
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : 0,
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead", "EIP150", "EIP158"],
+ "result" : {
+ "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ }
+ },
+ "094f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x0a" : "0x01"
+ }
+ },
+ "b0005374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x02" : "0x0e"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : 0,
+ "gas" : 1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead", "EIP150", "EIP158"],
+ "result" : {
+ "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ }
+ },
+ "b0005374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : 0,
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ }
+ },
+ "094f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x0a" : "0x01"
+ }
+ },
+ "b0005374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0",
+ "storage" : {
+ "0x00" : "0x00",
+ "0x02" : "0x0e"
+ }
+ }
+ }
+ },
+ {
+ "comment" : "OOG",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 1,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ }
+ },
+ "b0005374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : 1,
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ }
+ },
+ "094f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x0a" : "0x01"
+ }
+ },
+ "b1005374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0",
+ "storage" : {
+ "0x00" : "0x00",
+ "0x02" : "0x0e"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : 1,
+ "gas" : 1,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ }
+ },
+ "b1005374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : 2,
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ }
+ },
+ "094f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x0a" : "0x01"
+ }
+ },
+ "b2005374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0",
+ "storage" : {
+ "0x00" : "0x00",
+ "0x02" : "0x0e"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : 2,
+ "gas" : 1,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ }
+ },
+ "b2005374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : 3,
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ }
+ },
+ "094f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x0a" : "0x01"
+ }
+ },
+ "b3005374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0",
+ "storage" : {
+ "0x00" : "0x01",
+ "0x02" : "0x0e"
+ }
+ },
+ "b3305374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0",
+ "storage" : {
+ "0x04" : "0x00",
+ "0x05" : "0x0e"
+ }
+ }
+ }
+ }
+ ],
+ "pre" :
+ {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "094f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1",
+ "code" : "{ [[10]] (CALL 260000 (CALLDATALOAD 0) 0 0 0 0 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "b0005374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1",
+ "code" : "{ [[0]] (CALL 50000 0xc94f5374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0 0) [[2]] 14 }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "b1005374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1",
+ "code" : "{ [[0]] (CALLCODE 50000 0xc94f5374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0 0) [[2]] 14 }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "b2005374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1",
+ "code" : "{ [[0]] (DELEGATECALL 50000 0xc94f5374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0) [[2]] 14 }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "b3005374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1",
+ "code" : "{ [[0]] (CALL 100000 0xb3305374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0 0) [[2]] 14 }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "b3305374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1",
+ "code" : "{ [[4]] (CALL 50000 0xc94f5374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0 0) [[5]] 14 }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1",
+ "code" : "{ [[1]] 12 (REVERT 0 1) [[3]] 13 }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ "0x000000000000000000000000b0005374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x000000000000000000000000b1005374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x000000000000000000000000b2005374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x000000000000000000000000b3005374fce5edbc8e2a8697c15331677e6ebf0b"
+ ],
+ "gasLimit" : [
+ "460000", "88000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "094f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeCreateFiller.json b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeCreateFiller.json
new file mode 100644
index 000000000..9e0304078
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeCreateFiller.json
@@ -0,0 +1,99 @@
+{
+ "RevertOpcodeCreate" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "0x020000",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "1",
+ "currentTimestamp" : "1000",
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead", "EIP150", "EIP158"],
+ "result" : {
+ "f1ecf98489fa9ed60a664fc4998db699cfa39d40" : {
+ "shouldnotexist" : "1"
+ },
+ "b94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0"
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "f1ecf98489fa9ed60a664fc4998db699cfa39d40" : {
+ "shouldnotexist" : "1"
+ },
+ "b94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "1",
+ "storage" : {
+ "0x00" : "0x0c",
+ "0x01" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : 1,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "f1ecf98489fa9ed60a664fc4998db699cfa39d40" : {
+ "shouldnotexist" : "1"
+ },
+ "b94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0"
+ }
+ }
+ }
+ ],
+ "pre" :
+ {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "b94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1",
+ "code" : "{ [[0]] 1 (REVERT 0 1) [[1]] 12 }",
+ "code" : "{ (MSTORE 0 0x600160005560016000fd6011600155 ) [[1]](CREATE 1 17 15) [[0]] 12 }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ "0x600160005560016000fe6011600155"
+ ],
+ "gasLimit" : [
+ "460000", "70000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "b94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeDirectCallFiller.json b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeDirectCallFiller.json
new file mode 100644
index 000000000..40eaf231c
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeDirectCallFiller.json
@@ -0,0 +1,116 @@
+{
+ "RevertOpcodeDirectCall" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "0x020000",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "1",
+ "currentTimestamp" : "1000",
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead", "EIP150", "EIP158"],
+ "result" : {
+ "f1ecf98489fa9ed60a664fc4998db699cfa39d40" : {
+ "shouldnotexist" : "1"
+ },
+ "b94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0"
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ }
+ },
+ "b94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0",
+ "storage" : {
+ "0x00" : "0x00",
+ "0x02" : "0x0e"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : 1,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ }
+ },
+ "b94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ }
+ }
+ }
+ }
+ ],
+ "pre" :
+ {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "094f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1",
+ "code" : "{ [[10]] (CALL 60000 (CALLDATALOAD 0) 0 0 0 0 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "b94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1",
+ "code" : "!!! STRANGE: CALL works, but if called from 094... it wont work. even if gas is enough. seems to be OOG.",
+ "code" : "{ [[0]] (CALL 50000 0xc94f5374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0 0) [[2]] 14 }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1",
+ "code" : "{ [[1]] 12 (REVERT 0 1) [[3]] 13 }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ "0x000000000000000000000000b94f5374fce5edbc8e2a8697c15331677e6ebf0b"
+ ],
+ "gasLimit" : [
+ "460000", "68000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "b94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeFiller.json b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeFiller.json
new file mode 100644
index 000000000..be1a3146a
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeFiller.json
@@ -0,0 +1,103 @@
+{
+ "RevertOpcode" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "0x020000",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "1",
+ "currentTimestamp" : "1000",
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead", "EIP150", "EIP158"],
+ "result" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "1"
+ },
+ "a000000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "storage" : {
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "999999958985",
+ "nonce" : "1"
+ },
+ "a000000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "storage" : {
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : 1,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "999999970000",
+ "nonce" : "1"
+ },
+ "a000000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "storage" : {
+ }
+ }
+ }
+ }
+ ],
+ "pre" :
+ {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a000000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "code" : "{ [[0]] 1 (REVERT 0 1) [[1]] 11 }",
+ "code" : "0x600160005560016000fd6011600155",
+ "nonce" : "",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "800000", "30000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "a000000000000000000000000000000000000000",
+ "value" : [
+ "0", "10"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeInInitFiller.json b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeInInitFiller.json
new file mode 100644
index 000000000..8aa10605c
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeInInitFiller.json
@@ -0,0 +1,120 @@
+{
+ "RevertOpcodeInInit" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "0x020000",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "1",
+ "currentTimestamp" : "1000",
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead", "EIP158", "EIP150"],
+ "result" : {
+ "6295ee1b4f6dd65047762f924ecd367c17eabf8f" : {
+ "shouldnotexist" : "1"
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "1"
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : 1,
+ "value" : -1
+ },
+ "network" : ["Frontier"],
+ "result" : {
+ "6295ee1b4f6dd65047762f924ecd367c17eabf8f" : {
+ "shouldnotexist" : "1"
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "1"
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : 1,
+ "value" : -1
+ },
+ "network" : ["Homestead", "EIP158", "EIP150"],
+ "result" : {
+ "6295ee1b4f6dd65047762f924ecd367c17eabf8f" : {
+ "shouldnotexist" : "1"
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0"
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "6295ee1b4f6dd65047762f924ecd367c17eabf8f" : {
+ "shouldnotexist" : "1"
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "1"
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : 1,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "6295ee1b4f6dd65047762f924ecd367c17eabf8f" : {
+ "shouldnotexist" : "1"
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0"
+ }
+ }
+ }
+ ],
+ "pre" :
+ {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : "{ [[0]] 1 (REVERT 0 1) [[1]] 12 }",
+ "data" : [
+ "0x600160005560016000fd6011600155"
+ ],
+ "gasLimit" : [
+ "160000", "40000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "",
+ "value" : [
+ "0", "10"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeMultipleSubCallsFiller.json b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeMultipleSubCallsFiller.json
new file mode 100644
index 000000000..0b40433ed
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeMultipleSubCallsFiller.json
@@ -0,0 +1,412 @@
+{
+ "RevertOpcodeMultipleSubCalls" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "0x020000",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "1",
+ "currentTimestamp" : "1000",
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : 0,
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead", "EIP150", "EIP158"],
+ "result" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0x01"
+ },
+ "a000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x04" : "0x0c",
+ "0x05" : "0x0c"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : 0,
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0x01"
+ },
+ "a000000000000000000000000000000000000000" : {
+ "nonce" : "0x00",
+ "storage" : {
+ "0x04" : "0x0c",
+ "0x05" : "0x0c",
+ "0x0a" : "0x00",
+ "0x0b" : "0x00",
+ "0x0c" : "0x00"
+ }
+ },
+ "b000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "c000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "d000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : 1,
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0x01"
+ },
+ "a100000000000000000000000000000000000000" : {
+ "nonce" : "0x00",
+ "storage" : {
+ "0x04" : "0x0c",
+ "0x05" : "0x0c",
+ "0x0a" : "0x00",
+ "0x0b" : "0x00",
+ "0x0c" : "0x00"
+ }
+ },
+ "b000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "c000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "d000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : 2,
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0x01"
+ },
+ "a200000000000000000000000000000000000000" : {
+ "nonce" : "0x00",
+ "storage" : {
+ "0x04" : "0x0c",
+ "0x05" : "0x0c",
+ "0x0a" : "0x00",
+ "0x0b" : "0x00",
+ "0x0c" : "0x00"
+ }
+ },
+ "b000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "c000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "d000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : 3,
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0x01"
+ },
+ "a300000000000000000000000000000000000000" : {
+ "nonce" : "0x00",
+ "storage" : {
+ "0x04" : "0x0c",
+ "0x05" : "0x0c",
+ "0x0a" : "0x00",
+ "0x0b" : "0x00",
+ "0x0c" : "0x00"
+ }
+ },
+ "b000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "c000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "d000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : 0,
+ "gas" : [2],
+ "value" : [1,0]
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0x01"
+ },
+ "a000000000000000000000000000000000000000" : {
+ "nonce" : "0x00",
+ "storage" : {
+ "0x04" : "0x0c",
+ "0x05" : "0x0c",
+ "0x0a" : "0x00",
+ "0x0b" : "0x00",
+ "0x0c" : "0x00"
+ }
+ },
+ "a100000000000000000000000000000000000000" : {
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "a200000000000000000000000000000000000000" : {
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "a300000000000000000000000000000000000000" : {
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "b000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "c000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "d000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : [1],
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0x01"
+ },
+ "a000000000000000000000000000000000000000" : {
+ "nonce" : "0x00",
+ "storage" : {
+ "0x04" : "0x00",
+ "0x05" : "0x00",
+ "0x0a" : "0x00",
+ "0x0b" : "0x00",
+ "0x0c" : "0x00"
+ }
+ },
+ "a100000000000000000000000000000000000000" : {
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "a200000000000000000000000000000000000000" : {
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "a300000000000000000000000000000000000000" : {
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "b000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "c000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "d000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" :
+ {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "ac00000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "code" : "{ (CALL 260000 (CALLDATALOAD 0) (CALLVALUE) 0 0 0 0) }",
+ "nonce" : "0",
+ "storage" : {}
+ },
+ "a000000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "code" : "simple calls",
+ "code" : "call -> callA-> revert | callB -> revert | some code * and OOG scenarious",
+ "code" : "{ [[10]](CALL 50000 0xb000000000000000000000000000000000000000 0 0 0 0 0) [[11]](CALL 50000 0xc000000000000000000000000000000000000000 0 0 0 0 0) [[12]](CALL 50000 0xd000000000000000000000000000000000000000 0 0 0 0 0) [[4]]12 [[5]]12 }",
+ "nonce" : "",
+ "storage" : {
+ }
+ },
+ "a100000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "code" : "{ [[10]](CALLCODE 50000 0xb000000000000000000000000000000000000000 0 0 0 0 0) [[11]](CALLCODE 50000 0xc000000000000000000000000000000000000000 0 0 0 0 0) [[12]](CALLCODE 50000 0xd000000000000000000000000000000000000000 0 0 0 0 0) [[4]]12 [[5]]12 }",
+ "nonce" : "",
+ "storage" : {
+ }
+ },
+ "a200000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "code" : "{ [[10]](DELEGATECALL 50000 0xb000000000000000000000000000000000000000 0 0 0 0) [[11]](DELEGATECALL 50000 0xc000000000000000000000000000000000000000 0 0 0 0) [[12]](DELEGATECALL 50000 0xd000000000000000000000000000000000000000 0 0 0 0) [[4]]12 [[5]]12 }",
+ "nonce" : "",
+ "storage" : {
+ }
+ },
+ "a300000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "code" : "{ [[10]](CALL 50000 0xb000000000000000000000000000000000000000 0 0 0 0 0) [[11]](DELEGATECALL 50000 0xc000000000000000000000000000000000000000 0 0 0 0) [[12]](CALLCODE 50000 0xd000000000000000000000000000000000000000 0 0 0 0 0) [[4]]12 [[5]]12 }",
+ "nonce" : "",
+ "storage" : {
+ }
+ },
+ "b000000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "code" : "{ [[1]] 12 (REVERT 0 1) }",
+ "nonce" : "",
+ "storage" : {
+ }
+ },
+ "c000000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "code" : "{ [[2]] 12 (REVERT 0 1) }",
+ "nonce" : "",
+ "storage" : {
+ }
+ },
+ "d000000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "code" : "{ [[3]] 12 (REVERT 0 1) }",
+ "nonce" : "",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ "000000000000000000000000a000000000000000000000000000000000000000",
+ "000000000000000000000000a100000000000000000000000000000000000000",
+ "000000000000000000000000a200000000000000000000000000000000000000",
+ "000000000000000000000000a300000000000000000000000000000000000000"
+ ],
+ "gasLimit" : [
+ "800000", "140000", "160000", "50000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "ac00000000000000000000000000000000000000",
+ "value" : [
+ "0", "10"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeReturnFiller.json b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeReturnFiller.json
new file mode 100644
index 000000000..dd57096f0
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeReturnFiller.json
@@ -0,0 +1,164 @@
+{
+ "RevertOpcodeReturn" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "0x020000",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "1",
+ "currentTimestamp" : "1000",
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead", "EIP150", "EIP158"],
+ "result" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "1"
+ },
+ "a000000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "storage" : {
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : 0,
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "1"
+ },
+ "a000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x726576657274206d657373616765"
+ }
+ },
+ "a100000000000000000000000000000000000000" : {
+ "storage" : {
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : [1,3],
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "1"
+ },
+ "a000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "a100000000000000000000000000000000000000" : {
+ "storage" : {
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : [2],
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : ["Metropolis"],
+ "result" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "1"
+ },
+ "a000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "a100000000000000000000000000000000000000" : {
+ "storage" : {
+ }
+ }
+ }
+ }
+ ],
+ "pre" :
+ {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a000000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "code" : "{ [[1]](CALL 150000 (CALLDATALOAD 0) 0 0 0 0 32) [[2]] (MLOAD 0) }",
+ "nonce" : "",
+ "storage" : {
+ }
+ },
+ "a100000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 0 0x72657665727465642064617461) (MSTORE 0 0x726576657274206d657373616765) (REVERT 0 32) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a200000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 0 0x72657665727465642064617461) (MSTORE 0 0x726576657274206d657373616765) (REVERT 0 0) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a300000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 0 0x72657665727465642064617461) (MSTORE 0 0x726576657274206d657373616765) (REVERT 0 0xfffffffffffffffffffffffffffff) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a400000000000000000000000000000000000000" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 0 0x72657665727465642064617461) (MSTORE 0 0x726576657274206d657373616765) (REVERT 0x100 0x00) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ "000000000000000000000000a100000000000000000000000000000000000000",
+ "000000000000000000000000a200000000000000000000000000000000000000",
+ "000000000000000000000000a300000000000000000000000000000000000000",
+ "000000000000000000000000a400000000000000000000000000000000000000"
+ ],
+ "gasLimit" : [
+ "800000", "70000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "a000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stRevertTest/TouchToEmptyAccountRevert3Filler.json b/src/GeneralStateTestsFiller/stRevertTest/TouchToEmptyAccountRevert3Filler.json
index 5bbf12567..c7402caf3 100644
--- a/src/GeneralStateTestsFiller/stRevertTest/TouchToEmptyAccountRevert3Filler.json
+++ b/src/GeneralStateTestsFiller/stRevertTest/TouchToEmptyAccountRevert3Filler.json
@@ -60,14 +60,14 @@
"d94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
"balance" : "0",
"nonce" : "0",
- "code" : "{ (SUICIDE 0x1000000000000000000000000000000000000000) }",
+ "code" : "{ (SELFDESTRUCT 0x1000000000000000000000000000000000000000) }",
"storage": {
}
},
"e94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
"balance" : "0",
"nonce" : "0",
- "code" : "{ (SUICIDE 0x1000000000000000000000000000000000000000) }",
+ "code" : "{ (SELFDESTRUCT 0x1000000000000000000000000000000000000000) }",
"storage": {
}
}