aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorYoichi Hirai <i@yoichihirai.com>2017-09-27 20:49:36 +0800
committerYoichi Hirai <i@yoichihirai.com>2017-09-27 20:49:36 +0800
commitf3dd6c984a9931992e2f4c2f5784befde26c781d (patch)
tree7f90e95838d7eb83ebdadfb67780fe55ff9fb711 /src
parent8977eb93e97f88b0c8e7b434ce137a9122fd90c5 (diff)
downloaddexon-tests-f3dd6c984a9931992e2f4c2f5784befde26c781d.tar
dexon-tests-f3dd6c984a9931992e2f4c2f5784befde26c781d.tar.gz
dexon-tests-f3dd6c984a9931992e2f4c2f5784befde26c781d.tar.bz2
dexon-tests-f3dd6c984a9931992e2f4c2f5784befde26c781d.tar.lz
dexon-tests-f3dd6c984a9931992e2f4c2f5784befde26c781d.tar.xz
dexon-tests-f3dd6c984a9931992e2f4c2f5784befde26c781d.tar.zst
dexon-tests-f3dd6c984a9931992e2f4c2f5784befde26c781d.zip
Add a test where RETURNDATACOPY with a nonzero size fails after a CALL with insufficient balance
Diffstat (limited to 'src')
-rw-r--r--src/BlockchainTestsFiller/GeneralStateTests/stReturnDataTest/returndatacopy_following_too_big_transfer_d0g0v0Filler.json70
-rw-r--r--src/GeneralStateTestsFiller/stReturnDataTest/returndatacopy_following_too_big_transferFiller.json70
2 files changed, 140 insertions, 0 deletions
diff --git a/src/BlockchainTestsFiller/GeneralStateTests/stReturnDataTest/returndatacopy_following_too_big_transfer_d0g0v0Filler.json b/src/BlockchainTestsFiller/GeneralStateTests/stReturnDataTest/returndatacopy_following_too_big_transfer_d0g0v0Filler.json
new file mode 100644
index 000000000..292e01bd1
--- /dev/null
+++ b/src/BlockchainTestsFiller/GeneralStateTests/stReturnDataTest/returndatacopy_following_too_big_transfer_d0g0v0Filler.json
@@ -0,0 +1,70 @@
+{
+ "returndatacopy_following_too_big_transfer_d0g0v0" : {
+ "blocks" : [
+ {
+ "blockHeaderPremine" : {
+ "difficulty" : "0x020000",
+ "gasLimit" : "0x0a00000000",
+ "timestamp" : "0x03e8",
+ "updatePoW" : "1"
+ },
+ "transactions" : [
+ {
+ "data" : "",
+ "gasLimit" : "0x0a00000000",
+ "gasPrice" : "0x01",
+ "nonce" : "0x00",
+ "r" : "0x3b6c2d4d0d9d0abf4d624a6f2930e213789e9c00f679a9afa996fb4bd27cb507",
+ "s" : "0x24a40d7f4cf44278ac739ecf9eeba61554646709142d968ed1c555be138a3ea2",
+ "to" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6",
+ "v" : "0x1b",
+ "value" : "0x00"
+ }
+ ],
+ "uncleHeaders" : [
+ ]
+ }
+ ],
+ "genesisBlockHeader" : {
+ "bloom" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
+ "coinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "difficulty" : "131072",
+ "extraData" : "0x42",
+ "gasLimit" : "0x0a00000000",
+ "gasUsed" : "0",
+ "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "nonce" : "0x0102030405060708",
+ "number" : "0",
+ "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
+ "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "stateRoot" : "0xf99eb1626cfa6db435c0836235942d7ccaa935f1ae247d3f1c21e495685f903a",
+ "timestamp" : "0x03b6",
+ "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ "pre" : {
+ "0x0aabbccdd5c57f15886f9b263e2f6d2d6c7b5ec6" : {
+ "balance" : "0x00",
+ "code" : "0x7d111122223333444455556666777788889999aaaabbbbccccddddeeeeffff60005260206000f3",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : {
+ "balance" : "0x00",
+ "code" : "0x600060006000600062989680730aabbccdd5c57f15886f9b263e2f6d2d6c7b5ec6640900000000f1506020600060003e60c8600055",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x00" : "0x01"
+ }
+ },
+ "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0x6400000000",
+ "code" : "",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stReturnDataTest/returndatacopy_following_too_big_transferFiller.json b/src/GeneralStateTestsFiller/stReturnDataTest/returndatacopy_following_too_big_transferFiller.json
new file mode 100644
index 000000000..27bba6316
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stReturnDataTest/returndatacopy_following_too_big_transferFiller.json
@@ -0,0 +1,70 @@
+{
+ "returndatacopy_following_too_big_transfer" : {
+ "_info" : {
+ "comment" : "This test tries RETURNDATACOPY with a non-zero size after a CALL that fails because of insufficient balance."
+ },
+ "env" : {
+ "currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "0x20000",
+ "currentGasLimit" : "0x0a00000000",
+ "currentNumber" : "0x01",
+ "currentTimestamp" : "0x03e8",
+ "previousHash" : "0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ { "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["EIP150", "EIP158", "Frontier", "Homestead", "Byzantium"],
+ "result" : {
+ "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : {
+ "storage" : {
+ "0x00" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "0x0aabbccdd5c57f15886f9b263e2f6d2d6c7b5ec6" : {
+ "balance" : "0x00",
+ "code" : "{ (seq (MSTORE 0 0x0000111122223333444455556666777788889999aaaabbbbccccddddeeeeffff) (RETURN 0 32)) }",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : {
+ "balance" : "0x00",
+ "code" : "{ (seq (CALL 0x0900000000 0x0aabbccdd5c57f15886f9b263e2f6d2d6c7b5ec6 10000000 0 0 0 0) (RETURNDATACOPY 0 0 32) (SSTORE 0 200) )}",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x00" : "0x01"
+ }
+ },
+ "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0x6400000000",
+ "code" : "",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "0x0a00000000"
+ ],
+ "gasPrice" : "0x01",
+ "nonce" : "0x00",
+ "secretKey" : "0x45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6",
+ "value" : [
+ "0x00"
+ ]
+ }
+ }
+}