aboutsummaryrefslogtreecommitdiffstats
path: root/GeneralStateTests/stRevertTest
diff options
context:
space:
mode:
authorYoichi Hirai <i@yoichihirai.com>2017-09-22 22:21:03 +0800
committerYoichi Hirai <i@yoichihirai.com>2017-09-27 17:13:50 +0800
commitab372add116d2255062cb54bbc80c55bacbbdc92 (patch)
treecec6e16a387e4ba69d977d4f4ef4c7bde3d37144 /GeneralStateTests/stRevertTest
parent8977eb93e97f88b0c8e7b434ce137a9122fd90c5 (diff)
downloaddexon-tests-ab372add116d2255062cb54bbc80c55bacbbdc92.tar
dexon-tests-ab372add116d2255062cb54bbc80c55bacbbdc92.tar.gz
dexon-tests-ab372add116d2255062cb54bbc80c55bacbbdc92.tar.bz2
dexon-tests-ab372add116d2255062cb54bbc80c55bacbbdc92.tar.lz
dexon-tests-ab372add116d2255062cb54bbc80c55bacbbdc92.tar.xz
dexon-tests-ab372add116d2255062cb54bbc80c55bacbbdc92.tar.zst
dexon-tests-ab372add116d2255062cb54bbc80c55bacbbdc92.zip
Add tests that set up a nonempty returndata buffer and then call a contract that reverts
This should fulfill: non-empty returndata buffer --CALL --> REVERT <-- RETURNDATASIZE, to detect "not setting returndata buffer after REVERT"
Diffstat (limited to 'GeneralStateTests/stRevertTest')
-rw-r--r--GeneralStateTests/stRevertTest/RevertOpcodeInCallsOnNonEmptyReturnData.json475
1 files changed, 475 insertions, 0 deletions
diff --git a/GeneralStateTests/stRevertTest/RevertOpcodeInCallsOnNonEmptyReturnData.json b/GeneralStateTests/stRevertTest/RevertOpcodeInCallsOnNonEmptyReturnData.json
new file mode 100644
index 000000000..72b7dbfbe
--- /dev/null
+++ b/GeneralStateTests/stRevertTest/RevertOpcodeInCallsOnNonEmptyReturnData.json
@@ -0,0 +1,475 @@
+{
+ "RevertOpcodeInCallsOnNonEmptyReturnData" : {
+ "_info" : {
+ "comment" : "",
+ "filledwith" : "cpp-1.3.0+commit.4219e171.Linux.g++",
+ "lllcversion" : "Version: 0.4.12-nightly.2016.12.1+commit.598e289a.Linux.g++",
+ "source" : "src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeInCallsOnNonEmptyReturnDataFiller.json"
+ },
+ "env" : {
+ "currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "0x020000",
+ "currentGasLimit" : "0x989680",
+ "currentNumber" : "0x01",
+ "currentTimestamp" : "0x03e8",
+ "previousHash" : "0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "post" : {
+ "Byzantium" : [
+ {
+ "hash" : "0xcca0b20389271225ec1157b06a1a64cfbfdc4966432fe6d77f2c73247e691ac9",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0xfd20a4fc66eee272a97eff76e01ed3833b75fe29d90aee5819a46ad0711e626e",
+ "indexes" : {
+ "data" : 1,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 1,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x9fd0b6c9bb9ef51fd357116fe0696a065abd739e3db2fc2a5e50c90fe89ad78d",
+ "indexes" : {
+ "data" : 2,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 2,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x0849585360ee31807d2d1b0919f482f2143d6c06edfbbb857f5b917253ffdf3e",
+ "indexes" : {
+ "data" : 3,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 3,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ }
+ ],
+ "EIP150" : [
+ {
+ "hash" : "0x0ca5de6de8629e894c56f400ff263ac37d950771cf31ea46f59f17c2770e1bc6",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x0ca5de6de8629e894c56f400ff263ac37d950771cf31ea46f59f17c2770e1bc6",
+ "indexes" : {
+ "data" : 1,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 1,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x0ca5de6de8629e894c56f400ff263ac37d950771cf31ea46f59f17c2770e1bc6",
+ "indexes" : {
+ "data" : 2,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 2,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x0ca5de6de8629e894c56f400ff263ac37d950771cf31ea46f59f17c2770e1bc6",
+ "indexes" : {
+ "data" : 3,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 3,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ }
+ ],
+ "EIP158" : [
+ {
+ "hash" : "0x0ca5de6de8629e894c56f400ff263ac37d950771cf31ea46f59f17c2770e1bc6",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x0ca5de6de8629e894c56f400ff263ac37d950771cf31ea46f59f17c2770e1bc6",
+ "indexes" : {
+ "data" : 1,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 1,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x0ca5de6de8629e894c56f400ff263ac37d950771cf31ea46f59f17c2770e1bc6",
+ "indexes" : {
+ "data" : 2,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 2,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x0ca5de6de8629e894c56f400ff263ac37d950771cf31ea46f59f17c2770e1bc6",
+ "indexes" : {
+ "data" : 3,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 3,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ }
+ ],
+ "Frontier" : [
+ {
+ "hash" : "0xa0318af5a67c035998d05112c8e4bd11acbb2ec5b95db63b38aa2d1e8462a1cf",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0xa0318af5a67c035998d05112c8e4bd11acbb2ec5b95db63b38aa2d1e8462a1cf",
+ "indexes" : {
+ "data" : 1,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 1,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0xa0318af5a67c035998d05112c8e4bd11acbb2ec5b95db63b38aa2d1e8462a1cf",
+ "indexes" : {
+ "data" : 2,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 2,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0xa0318af5a67c035998d05112c8e4bd11acbb2ec5b95db63b38aa2d1e8462a1cf",
+ "indexes" : {
+ "data" : 3,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 3,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ }
+ ],
+ "Homestead" : [
+ {
+ "hash" : "0xa0318af5a67c035998d05112c8e4bd11acbb2ec5b95db63b38aa2d1e8462a1cf",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0xa0318af5a67c035998d05112c8e4bd11acbb2ec5b95db63b38aa2d1e8462a1cf",
+ "indexes" : {
+ "data" : 1,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 1,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0xa0318af5a67c035998d05112c8e4bd11acbb2ec5b95db63b38aa2d1e8462a1cf",
+ "indexes" : {
+ "data" : 2,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 2,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0xa0318af5a67c035998d05112c8e4bd11acbb2ec5b95db63b38aa2d1e8462a1cf",
+ "indexes" : {
+ "data" : 3,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x701ca106f95f565cf3b7075ffd04127a9592c1cfa547e93ad2a0d121a1c0633e",
+ "indexes" : {
+ "data" : 3,
+ "gas" : 1,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ }
+ ]
+ },
+ "pre" : {
+ "0x094f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0x01",
+ "code" : "0x6000600060006000600073ffff5374fce5edbc8e2a8697c15331677e6ebf0b6000f150600060006000600060006000356203f7a0f1600a55",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x0a" : "0xff"
+ }
+ },
+ "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xe8d4a51000",
+ "code" : "",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xb0005374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0x01",
+ "code" : "0x6000600060006000600073ffff5374fce5edbc8e2a8697c15331677e6ebf0b6000f1506000600060006000600073c94f5374fce5edbc8e2a8697c15331677e6ebf0b61c350f16000553d600255",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xb1005374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0x01",
+ "code" : "0x6000600060006000600073ffff5374fce5edbc8e2a8697c15331677e6ebf0b6000f1506000600060006000600073c94f5374fce5edbc8e2a8697c15331677e6ebf0b61c350f26000553d600255",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xb2005374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0x01",
+ "code" : "0x6000600060006000600073ffff5374fce5edbc8e2a8697c15331677e6ebf0b6000f150600060006000600073c94f5374fce5edbc8e2a8697c15331677e6ebf0b61c350f46000553d600255",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xb3005374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0x01",
+ "code" : "0x6000600060006000600073ffff5374fce5edbc8e2a8697c15331677e6ebf0b6000f1506000600060006000600073b3305374fce5edbc8e2a8697c15331677e6ebf0b620186a0f16000553d600255",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xb3305374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0x01",
+ "code" : "0x6000600060006000600073ffff5374fce5edbc8e2a8697c15331677e6ebf0b6000f1506000600060006000600073c94f5374fce5edbc8e2a8697c15331677e6ebf0b61c350f16004553d600555",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xc94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0x01",
+ "code" : "0x600c60015560016000fd",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xffff5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0x01",
+ "code" : "0x600c60015260406000f3",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ "0x000000000000000000000000b0005374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x000000000000000000000000b1005374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x000000000000000000000000b2005374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x000000000000000000000000b3005374fce5edbc8e2a8697c15331677e6ebf0b"
+ ],
+ "gasLimit" : [
+ "0x0d1f60",
+ "0x6d60"
+ ],
+ "gasPrice" : "0x01",
+ "nonce" : "0x00",
+ "secretKey" : "0x45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "0x094f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "value" : [
+ "0x00"
+ ]
+ }
+ }
+} \ No newline at end of file