aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdrian Sutton <adrian.sutton@consensys.net>2018-11-12 07:04:02 +0800
committerAdrian Sutton <adrian.sutton@consensys.net>2018-11-12 07:50:28 +0800
commite98f0866a20839581ec3d3c79d8d6c2e81a2d1a4 (patch)
tree19788dd91a67ec776c1d1db03bbe937a6034478f
parent6f9575214a707d6b38b473aba0b271c95c560478 (diff)
downloaddexon-tests-e98f0866a20839581ec3d3c79d8d6c2e81a2d1a4.tar
dexon-tests-e98f0866a20839581ec3d3c79d8d6c2e81a2d1a4.tar.gz
dexon-tests-e98f0866a20839581ec3d3c79d8d6c2e81a2d1a4.tar.bz2
dexon-tests-e98f0866a20839581ec3d3c79d8d6c2e81a2d1a4.tar.lz
dexon-tests-e98f0866a20839581ec3d3c79d8d6c2e81a2d1a4.tar.xz
dexon-tests-e98f0866a20839581ec3d3c79d8d6c2e81a2d1a4.tar.zst
dexon-tests-e98f0866a20839581ec3d3c79d8d6c2e81a2d1a4.zip
Add test case for a contract executing EXTCODEHASH on itself.
-rw-r--r--GeneralStateTests/stExtCodeHash/extCodeHashSelf.json119
-rw-r--r--src/GeneralStateTestsFiller/stExtCodeHash/extCodeHashSelfFiller.json86
2 files changed, 205 insertions, 0 deletions
diff --git a/GeneralStateTests/stExtCodeHash/extCodeHashSelf.json b/GeneralStateTests/stExtCodeHash/extCodeHashSelf.json
new file mode 100644
index 000000000..f6b0a29fd
--- /dev/null
+++ b/GeneralStateTests/stExtCodeHash/extCodeHashSelf.json
@@ -0,0 +1,119 @@
+{
+ "extCodeHashSelf" : {
+ "_info" : {
+ "comment" : "EXTCODEHASH/EXTCODESIZE of the currently executing account",
+ "filledwith" : "testeth 1.5.0-alpha.6-1+commit.19ad7d95.dirty",
+ "lllcversion" : "Version: 0.5.0-develop.2018.9.29+commit.c4b5101b.Darwin.appleclang",
+ "source" : "src/GeneralStateTestsFiller/stExtCodeHash/extCodeHashSelfFiller.json",
+ "sourceHash" : "6f8936f6732cbdf55ba1febcb101219015fd9432992545cdaff04df7697948b4"
+ },
+ "env" : {
+ "currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "0x20000",
+ "currentGasLimit" : "0x0f4240",
+ "currentNumber" : "0x01",
+ "currentTimestamp" : "0x03e8",
+ "previousHash" : "0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "post" : {
+ "Byzantium" : [
+ {
+ "hash" : "0xd3e539dea7d810d48422f5ab25f48a79c05982907bf9f73b8efbee42c19531b1",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ }
+ ],
+ "Constantinople" : [
+ {
+ "hash" : "0xf4d9afb014cddaab6c38911576da8445ad61aa19ccfd9cc8255bf3f99de7950e",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ }
+ ],
+ "EIP150" : [
+ {
+ "hash" : "0xd3e539dea7d810d48422f5ab25f48a79c05982907bf9f73b8efbee42c19531b1",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ }
+ ],
+ "EIP158" : [
+ {
+ "hash" : "0xd3e539dea7d810d48422f5ab25f48a79c05982907bf9f73b8efbee42c19531b1",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ }
+ ],
+ "Frontier" : [
+ {
+ "hash" : "0xd3e539dea7d810d48422f5ab25f48a79c05982907bf9f73b8efbee42c19531b1",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ }
+ ],
+ "Homestead" : [
+ {
+ "hash" : "0xd3e539dea7d810d48422f5ab25f48a79c05982907bf9f73b8efbee42c19531b1",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ }
+ ]
+ },
+ "pre" : {
+ "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0x0de0b6b3a7640000",
+ "code" : "",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xdeadbeef00000000000000000000000000000000" : {
+ "balance" : "0x0de0b6b3a7640000",
+ "code" : "0x73deadbeef000000000000000000000000000000003f60005573deadbeef000000000000000000000000000000003b600155",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x00" : "0xdeadbeef"
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ "0x"
+ ],
+ "gasLimit" : [
+ "0x061a80"
+ ],
+ "gasPrice" : "0x01",
+ "nonce" : "0x00",
+ "secretKey" : "0x45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "0xdeadbeef00000000000000000000000000000000",
+ "value" : [
+ "0x01"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stExtCodeHash/extCodeHashSelfFiller.json b/src/GeneralStateTestsFiller/stExtCodeHash/extCodeHashSelfFiller.json
new file mode 100644
index 000000000..ba3433521
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stExtCodeHash/extCodeHashSelfFiller.json
@@ -0,0 +1,86 @@
+{
+ "extCodeHashSelf": {
+ "_info": {
+ "comment": "EXTCODEHASH/EXTCODESIZE of the currently executing account"
+ },
+ "env": {
+ "currentCoinbase": "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty": "0x20000",
+ "currentGasLimit": "1000000",
+ "currentNumber": "1",
+ "currentTimestamp": "1000",
+ "previousHash": "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect": [
+ {
+ "indexes": {
+ "data": -1,
+ "gas": -1,
+ "value": -1
+ },
+ "network": [
+ ">Byzantium"
+ ],
+ "result": {
+ "deadbeef00000000000000000000000000000000": {
+ "balance": "1000000000000000001",
+ "storage": {
+ "0x00": "0x43c7c0889fcfd6f96372b271391c53786415d307790ee45f0897b0e47ed61c8b",
+ "0x01": "0x32"
+ }
+ }
+ }
+ },
+ {
+ "indexes": {
+ "data": -1,
+ "gas": -1,
+ "value": -1
+ },
+ "network": [
+ "<=Byzantium"
+ ],
+ "result": {
+ "deadbeef00000000000000000000000000000000": {
+ "balance": "1000000000000000000",
+ "storage": {
+ "0x00": "0xdeadbeef"
+ }
+ }
+ }
+ }
+ ],
+ "pre": {
+ "deadbeef00000000000000000000000000000000": {
+ "balance": "1000000000000000000",
+ "code": "{ [[0]] (EXTCODEHASH 0xdeadbeef00000000000000000000000000000000) [[1]] (EXTCODESIZE 0xdeadbeef00000000000000000000000000000000) }",
+ "nonce": "0",
+ "storage": {
+ "0x00": "0xdeadbeef"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b": {
+ "balance": "1000000000000000000",
+ "code": "0x",
+ "nonce": "0",
+ "storage": {
+ }
+ }
+ },
+ "transaction": {
+ "data": [
+ ""
+ ],
+ "gasLimit": [
+ "400000"
+ ],
+ "gasPrice": "1",
+ "nonce": "0",
+ "secretKey": "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to": "deadbeef00000000000000000000000000000000",
+ "value": [
+ "1"
+ ]
+ }
+ }
+}