aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--GeneralStateTests/stSStoreTest/InitCollisionNonZeroNonce.json109
-rw-r--r--src/GeneralStateTestsFiller/stSStoreTest/InitCollisionNonZeroNonceFiller.json162
2 files changed, 271 insertions, 0 deletions
diff --git a/GeneralStateTests/stSStoreTest/InitCollisionNonZeroNonce.json b/GeneralStateTests/stSStoreTest/InitCollisionNonZeroNonce.json
new file mode 100644
index 000000000..4ceb8f2bd
--- /dev/null
+++ b/GeneralStateTests/stSStoreTest/InitCollisionNonZeroNonce.json
@@ -0,0 +1,109 @@
+{
+ "InitCollisionNonZeroNonce" : {
+ "_info" : {
+ "comment" : "account already has storage X. create -> in init code change that account's storage -> 0 -> change it to X again ",
+ "filledwith" : "testeth 1.5.0-alpha.7-15+commit.91787f23",
+ "lllcversion" : "Version: 0.5.0-develop.2018.11.9+commit.9709dfe0.Linux.g++",
+ "source" : "src/GeneralStateTestsFiller/stSStoreTest/InitCollisionNonZeroNonceFiller.json",
+ "sourceHash" : "4918c4e61de66c6332129e96f64f71e4c82eaf51ea343754dc74eeee8fab08e7"
+ },
+ "env" : {
+ "currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "0x020000",
+ "currentGasLimit" : "0x989680",
+ "currentNumber" : "0x01",
+ "currentTimestamp" : "0x03e8",
+ "previousHash" : "0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "post" : {
+ "Constantinople" : [
+ {
+ "hash" : "0x01a2f9fbee04ba20a3e14acb4f7ffc504f1290626818f075fe72976bdb6c7f1f",
+ "indexes" : {
+ "data" : 0,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x01a2f9fbee04ba20a3e14acb4f7ffc504f1290626818f075fe72976bdb6c7f1f",
+ "indexes" : {
+ "data" : 1,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x01a2f9fbee04ba20a3e14acb4f7ffc504f1290626818f075fe72976bdb6c7f1f",
+ "indexes" : {
+ "data" : 2,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ {
+ "hash" : "0x01a2f9fbee04ba20a3e14acb4f7ffc504f1290626818f075fe72976bdb6c7f1f",
+ "indexes" : {
+ "data" : 3,
+ "gas" : 0,
+ "value" : 0
+ },
+ "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ }
+ ]
+ },
+ "pre" : {
+ "0x6295ee1b4f6dd65047762f924ecd367c17eabf8f" : {
+ "balance" : "0x00",
+ "code" : "",
+ "nonce" : "0x01",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ },
+ "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xe8d4a51000",
+ "code" : "",
+ "nonce" : "0x01",
+ "storage" : {
+ }
+ },
+ "0xdea0000000000000000000000000000000000000" : {
+ "balance" : "0x00",
+ "code" : "0x6001600155600060015560016002556000600255600160035560006003556001600455600060045560016005556000600555600160065560006006556001600755600060075560016008556000600855600160095560006009556001600a556000600a556001600b556000600b556001600c556000600c556001600d556000600d556001600e556000600e556001600f556000600f55600160105560006010556001600155",
+ "nonce" : "0x01",
+ "storage" : {
+ }
+ },
+ "0xfc597da4849c0d854629216d9e297bbca7bb4616" : {
+ "balance" : "0x00",
+ "code" : "",
+ "nonce" : "0x01",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ "0x60006001556001600155",
+ "0x6000600a80601260003960006000f55000fe60006001556001600155",
+ "0x6000600a80601760003960006000f55060006000fd00fe60006001556001600155",
+ "0x6000600a80603760003960006000f5506000600060006000600073dea000000000000000000000000000000000000062030d40f15000fe60006001556001600155"
+ ],
+ "gasLimit" : [
+ "0x030d40"
+ ],
+ "gasPrice" : "0x01",
+ "nonce" : "0x00",
+ "secretKey" : "0x45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "",
+ "value" : [
+ "0x00"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stSStoreTest/InitCollisionNonZeroNonceFiller.json b/src/GeneralStateTestsFiller/stSStoreTest/InitCollisionNonZeroNonceFiller.json
new file mode 100644
index 000000000..0985e8d25
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stSStoreTest/InitCollisionNonZeroNonceFiller.json
@@ -0,0 +1,162 @@
+{
+ "InitCollisionNonZeroNonce" : {
+ "_info" : {
+ "comment" : "account already has storage X. create -> in init code change that account's storage -> 0 -> change it to X again "
+ },
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "0x020000",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "1",
+ "currentTimestamp" : "1000",
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "//comment" : "Collision on transaction create",
+ "indexes" : {
+ "data" : [0],
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : [">=Constantinople"],
+ "result" : {
+ "6295ee1b4f6dd65047762f924ecd367c17eabf8f" : {
+ "nonce" : "1",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ },
+ "fc597da4849c0d854629216d9e297bbca7bb4616" : {
+ "nonce" : "1",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ }
+ }
+ },
+ {
+ "//comment" : "Collision on create2",
+ "indexes" : {
+ "data" : [1],
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : [">=Constantinople"],
+ "result" : {
+ "6295ee1b4f6dd65047762f924ecd367c17eabf8f" : {
+ "nonce" : "1",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ },
+ "fc597da4849c0d854629216d9e297bbca7bb4616" : {
+ "nonce" : "1",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ }
+ }
+ },
+ {
+ "//comment" : "Collision on create2 and REVERT",
+ "indexes" : {
+ "data" : [2],
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : [">=Constantinople"],
+ "result" : {
+ "6295ee1b4f6dd65047762f924ecd367c17eabf8f" : {
+ "nonce" : "1",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ },
+ "fc597da4849c0d854629216d9e297bbca7bb4616" : {
+ "nonce" : "1",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ }
+ }
+ },
+ {
+ "//comment" : "Collision on create2 and OOG",
+ "indexes" : {
+ "data" : [3],
+ "gas" : 0,
+ "value" : -1
+ },
+ "network" : [">=Constantinople"],
+ "result" : {
+ "6295ee1b4f6dd65047762f924ecd367c17eabf8f" : {
+ "nonce" : "1",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ },
+ "fc597da4849c0d854629216d9e297bbca7bb4616" : {
+ "nonce" : "1",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" :
+ {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000",
+ "code" : "",
+ "nonce" : "1",
+ "storage" : {
+ }
+ },
+ "6295ee1b4f6dd65047762f924ecd367c17eabf8f" : {
+ "//comment" : "transaction create account",
+ "balance" : "",
+ "code" : "",
+ "nonce" : "1",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ },
+ "fc597da4849c0d854629216d9e297bbca7bb4616" : {
+ "//comment" : "Create2 account",
+ "balance" : "",
+ "code" : "",
+ "nonce" : "1",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ },
+ "dea0000000000000000000000000000000000000" : {
+ "balance" : "",
+ "code" : "{ [[1]] 1 [[1]] 0 [[2]] 1 [[2]] 0 [[3]] 1 [[3]] 0 [[4]] 1 [[4]] 0 [[5]] 1 [[5]] 0 [[6]] 1 [[6]] 0 [[7]] 1 [[7]] 0 [[8]] 1 [[8]] 0 [[9]] 1 [[9]] 0 [[10]] 1 [[10]] 0 [[11]] 1 [[11]] 0 [[12]] 1 [[12]] 0 [[13]] 1 [[13]] 0 [[14]] 1 [[14]] 0 [[15]] 1 [[15]] 0 [[16]] 1 [[16]] 0 [[1]] 1 }",
+ "nonce" : "1",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ "{ (SSTORE 1 0) (SSTORE 1 1) }",
+ "{ (seq (CREATE2 0 0 (lll (seq (SSTORE 1 0) (SSTORE 1 1) ) 0) 0) (STOP) ) }",
+ "{ (seq (CREATE2 0 0 (lll (seq (SSTORE 1 0) (SSTORE 1 1) ) 0) 0) (REVERT 0 0) (STOP) ) }",
+ "{ (seq (CREATE2 0 0 (lll (seq (SSTORE 1 0) (SSTORE 1 1) ) 0) 0) (CALL 200000 0xdea0000000000000000000000000000000000000 0 0 0 0 0) (STOP) ) }"
+ ],
+ "gasLimit" : [
+ "200000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}