diff options
Diffstat (limited to 'src/GeneralStateTestsFiller/stSStoreTest/sstore_Xto0toXFiller.json')
-rw-r--r-- | src/GeneralStateTestsFiller/stSStoreTest/sstore_Xto0toXFiller.json | 153 |
1 files changed, 132 insertions, 21 deletions
diff --git a/src/GeneralStateTestsFiller/stSStoreTest/sstore_Xto0toXFiller.json b/src/GeneralStateTestsFiller/stSStoreTest/sstore_Xto0toXFiller.json index 6096727bf..e8d53659c 100644 --- a/src/GeneralStateTestsFiller/stSStoreTest/sstore_Xto0toXFiller.json +++ b/src/GeneralStateTestsFiller/stSStoreTest/sstore_Xto0toXFiller.json @@ -1,5 +1,5 @@ { - "sstore_Xto0toX" : { + "sstore_Xto0toX" : { "_info" : { "comment" : "change X -> 0 -> X" }, @@ -13,32 +13,134 @@ }, "expect" : [ { + "//comment" : "CALL to a contract", "indexes" : { - "data" : -1, - "gas" : -1, + "data" : [0], + "gas" : 0, "value" : -1 }, "network" : [">=Constantinople"], "result" : { - "0fefbd69274fc334faf14093f3d8c59d21389669" : { - "storage" : { - "0x00" : "0x01", + "b000000000000000000000000000000000000000" : { + "storage" : { "0x01" : "0x01" } }, - "3e180b1862f9d158abb5e519a6d8605540c23682" : { - "storage" : { - "0x00" : "0x01", + "dea0000000000000000000000000000000000000" : { + "//comment" : "indicates that call finished without OOG", + "storage" : { "0x01" : "0x01" } }, + "6295ee1b4f6dd65047762f924ecd367c17eabf8f" : { + "nonce" : "1", + "storage" : { + } + } + } + }, + { + "//comment" : "CALLCODE AND DELEGATECALL", + "indexes" : { + "data" : [1, 2], + "gas" : 0, + "value" : -1 + }, + "network" : [">=Constantinople"], + "result" : { "b000000000000000000000000000000000000000" : { "storage" : { "0x01" : "0x01" } }, + "dea0000000000000000000000000000000000000" : { + "//comment" : "indicates that call finished without OOG", + "storage" : { + "0x01" : "0x01" + } + }, + "6295ee1b4f6dd65047762f924ecd367c17eabf8f" : { + "nonce" : "1", + "storage" : { + "0x01" : "0x01" + } + } + } + }, + { + "//comment" : "STATICCALL, fails on storage change", + "indexes" : { + "data" : 3, + "gas" : 0, + "value" : -1 + }, + "network" : [">=Constantinople"], + "result" : { "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { - "balance" : "999999782203" + "balance" : "999999617076" + }, + "dea0000000000000000000000000000000000000" : { + "//comment" : "indicates that call finished without OOG", + "storage" : { + "0x01" : "0x01" + } + } + } + }, + { + "//comment" : "inside CREATE2 init code", + "indexes" : { + "data" : 4, + "gas" : 0, + "value" : -1 + }, + "network" : [">=Constantinople"], + "result" : { + "10873bc2361905c64bf1b5f92b7550d0d2e3759f" : { + "storage" : { + "0x00" : "0x01", + "0x01" : "0x01" + } + }, + "dea0000000000000000000000000000000000000" : { + "//comment" : "indicates that call finished without OOG", + "storage" : { + "0x01" : "0x01" + } + } + } + }, + { + "//comment" : "ALL of above but going OOG", + "indexes" : { + "data" : -1, + "gas" : 1, + "value" : -1 + }, + "network" : [">=Constantinople"], + "result" : { + "dea0000000000000000000000000000000000000" : { + "//comment" : "indicates that call finished without OOG", + "storage" : { + "0x01" : "0x00" + } + } + } + }, + { + "//comment" : "ALL of above but REVERT at the end", + "indexes" : { + "data" : [5,6,7,8], + "gas" : 0, + "value" : -1 + }, + "network" : [">=Constantinople"], + "result" : { + "dea0000000000000000000000000000000000000" : { + "//comment" : "indicates that call finished without OOG", + "storage" : { + "0x01" : "0x00" + } } } } @@ -52,14 +154,6 @@ "storage" : { } }, - "3e180b1862f9d158abb5e519a6d8605540c23682" : { - "balance" : "5", - "code" : "{ (seq [[0]] 0 [[0]] 1 (CALL 100000 0xb000000000000000000000000000000000000000 0 0 0 0 0) (CALLCODE 100000 0xb000000000000000000000000000000000000000 0 0 0 0 0) (DELEGATECALL 100000 0xb000000000000000000000000000000000000000 0 0 0 0) (STATICCALL 100000 0xb000000000000000000000000000000000000000 0 0 0 0) (CREATE2 0 0 (lll (seq (SSTORE 0 1) (SSTORE 1 1) (SSTORE 1 0) (SSTORE 1 1) ) 0) 0) (STOP) ) }", - "nonce" : "0", - "storage" : { - "0x00" : "0x01" - } - }, "b000000000000000000000000000000000000000" : { "balance" : "", "code" : "{ [[1]] 0 [[1]] 1 }", @@ -75,19 +169,36 @@ "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" : "", + "storage" : { + } } }, "transaction" : { "data" : [ - "" + "{ (CALL 300000 0xb000000000000000000000000000000000000000 0 0 0 0 0) (CALL 600000 0xdea0000000000000000000000000000000000000 0 0 0 0 0)}", + "{ (CALLCODE 300000 0xb000000000000000000000000000000000000000 0 0 0 0 0) (CALL 600000 0xdea0000000000000000000000000000000000000 0 0 0 0 0)}", + "{ (DELEGATECALL 300000 0xb000000000000000000000000000000000000000 0 0 0 0) (CALL 600000 0xdea0000000000000000000000000000000000000 0 0 0 0 0)}", + "{ (STATICCALL 300000 0xc000000000000000000000000000000000000000 0 0 0 0) (CALL 600000 0xdea0000000000000000000000000000000000000 0 0 0 0 0)}", + "{ (seq (CREATE2 0 0 (lll (seq (SSTORE 0 1) (SSTORE 0 0) (SSTORE 0 1) (SSTORE 1 1) ) 0) 0) (CALL 600000 0xdea0000000000000000000000000000000000000 0 0 0 0 0) (STOP) ) }", + "{ (CALL 300000 0xb000000000000000000000000000000000000000 0 0 0 0 0) (CALL 600000 0xdea0000000000000000000000000000000000000 0 0 0 0 0) (REVERT 0 32)}", + "{ (CALLCODE 300000 0xb000000000000000000000000000000000000000 0 0 0 0 0) (CALL 600000 0xdea0000000000000000000000000000000000000 0 0 0 0 0) (REVERT 0 32)}", + "{ (DELEGATECALL 300000 0xb000000000000000000000000000000000000000 0 0 0 0) (CALL 600000 0xdea0000000000000000000000000000000000000 0 0 0 0 0) (REVERT 0 32)}", + "{ (STATICCALL 300000 0xc000000000000000000000000000000000000000 0 0 0 0) (CALL 600000 0xdea0000000000000000000000000000000000000 0 0 0 0 0) (REVERT 0 32)}", + "{ (seq (CREATE2 0 0 (lll (seq (SSTORE 0 1) (SSTORE 0 0) (SSTORE 0 1) (SSTORE 1 1) ) 0) 0) (CALL 600000 0xdea0000000000000000000000000000000000000 0 0 0 0 0) (REVERT 0 32) (STOP) ) }" + ], "gasLimit" : [ - "660000" + "1000000", "400000" ], "gasPrice" : "1", "nonce" : "0", "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", - "to" : "3e180b1862f9d158abb5e519a6d8605540c23682", + "to" : "", "value" : [ "1" ] |