aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDimitry <dimitry@ethereum.org>2018-10-16 19:36:57 +0800
committerDimitry <dimitry@ethereum.org>2018-10-16 19:36:57 +0800
commit2a458bcacd7692d1d5bf4b94b303ec548dd351d5 (patch)
treeec2c77812e90fd013d097c69c2684eb0cd2e1b7f /src
parent9ff64743f0347952903287b9074803607e5855e8 (diff)
downloaddexon-tests-2a458bcacd7692d1d5bf4b94b303ec548dd351d5.tar
dexon-tests-2a458bcacd7692d1d5bf4b94b303ec548dd351d5.tar.gz
dexon-tests-2a458bcacd7692d1d5bf4b94b303ec548dd351d5.tar.bz2
dexon-tests-2a458bcacd7692d1d5bf4b94b303ec548dd351d5.tar.lz
dexon-tests-2a458bcacd7692d1d5bf4b94b303ec548dd351d5.tar.xz
dexon-tests-2a458bcacd7692d1d5bf4b94b303ec548dd351d5.tar.zst
dexon-tests-2a458bcacd7692d1d5bf4b94b303ec548dd351d5.zip
fill as blockchain tests
Diffstat (limited to 'src')
-rw-r--r--src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/SstoreCallToSelfSubRefundBelowZero_d0g0v0Filler.json85
-rw-r--r--src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_0to0_d0g0v0Filler.json97
-rw-r--r--src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_0toXto0toX_d0g0v0Filler.json106
-rw-r--r--src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_Xto0_d0g0v0Filler.json99
-rw-r--r--src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_Xto0toXto0_d0g0v0Filler.json105
-rw-r--r--src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_XtoX_d0g0v0Filler.json111
-rw-r--r--src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_XtoY_d0g0v0Filler.json111
-rw-r--r--src/GeneralStateTestsFiller/stSStoreTest/SstoreCallToSelfSubRefundBelowZeroFiller.json21
-rw-r--r--src/GeneralStateTestsFiller/stSStoreTest/sstore_0toXto0toXFiller.json95
-rw-r--r--src/GeneralStateTestsFiller/stSStoreTest/sstore_Xto0toXto0Filler.json95
10 files changed, 915 insertions, 10 deletions
diff --git a/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/SstoreCallToSelfSubRefundBelowZero_d0g0v0Filler.json b/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/SstoreCallToSelfSubRefundBelowZero_d0g0v0Filler.json
new file mode 100644
index 000000000..b3162180d
--- /dev/null
+++ b/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/SstoreCallToSelfSubRefundBelowZero_d0g0v0Filler.json
@@ -0,0 +1,85 @@
+{
+ "SstoreCallToSelfSubRefundBelowZero_d0g0v0" : {
+ "_info" : {
+ "comment" : "Test where accnt has slot 1 value of '2', is cleared, then calls itself and overwrites with '3', causing a refund-deduction in second call context"
+ },
+ "blocks" : [
+ {
+ "blockHeaderPremine" : {
+ "difficulty" : "0x020000",
+ "gasLimit" : "0x1000000000",
+ "timestamp" : "0x03e8",
+ "updatePoW" : "1"
+ },
+ "transactions" : [
+ {
+ "data" : "0x",
+ "gasLimit" : "0x241eb2",
+ "gasPrice" : "0x01",
+ "nonce" : "0x00",
+ "r" : "0x40f3438db266a7d413ce23bbf53af41f8ebf855945148418ae6da0213d26c8c5",
+ "s" : "0x7aa326d6bf378497d42da537ba6aee21e642d64e734def1ceda80eee7b361f92",
+ "to" : "0xe12d6474ac4964b9f23812bf3375c1fe637ad3b6",
+ "v" : "0x1b",
+ "value" : "0x00"
+ }
+ ],
+ "uncleHeaders" : [
+ ]
+ }
+ ],
+ "expect" : [
+ {
+ "network" : "Constantinople",
+ "result" : {
+ "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xffffffffffff96a3",
+ "nonce" : "0x01"
+ },
+ "0xe12d6474ac4964b9f23812bf3375c1fe637ad3b6" : {
+ "balance" : "0x00",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x01" : "0x03"
+ }
+ }
+ }
+ }
+ ],
+ "genesisBlockHeader" : {
+ "bloom" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
+ "coinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "difficulty" : "131072",
+ "extraData" : "0x42",
+ "gasLimit" : "0x1000000000",
+ "gasUsed" : "0",
+ "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "nonce" : "0x0102030405060708",
+ "number" : "0",
+ "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
+ "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "stateRoot" : "0xf99eb1626cfa6db435c0836235942d7ccaa935f1ae247d3f1c21e495685f903a",
+ "timestamp" : "0x03b6",
+ "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ "pre" : {
+ "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xffffffffffffffff",
+ "code" : "",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xe12d6474ac4964b9f23812bf3375c1fe637ad3b6" : {
+ "balance" : "0x00",
+ "code" : "0x3330146015576000600155600080808080305af1005b600360015500",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x01" : "0x02"
+ }
+ }
+ },
+ "sealEngine" : "NoProof"
+ }
+} \ No newline at end of file
diff --git a/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_0to0_d0g0v0Filler.json b/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_0to0_d0g0v0Filler.json
new file mode 100644
index 000000000..68e6e9cab
--- /dev/null
+++ b/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_0to0_d0g0v0Filler.json
@@ -0,0 +1,97 @@
+{
+ "sstore_0to0_d0g0v0" : {
+ "_info" : {
+ "comment" : "change 0 -> 0"
+ },
+ "blocks" : [
+ {
+ "blockHeaderPremine" : {
+ "difficulty" : "0x020000",
+ "gasLimit" : "0x989680",
+ "timestamp" : "0x03e8",
+ "updatePoW" : "1"
+ },
+ "transactions" : [
+ {
+ "data" : "0x",
+ "gasLimit" : "0x03f7a0",
+ "gasPrice" : "0x01",
+ "nonce" : "0x00",
+ "r" : "0xa629dbbd169657029745389ac295c6054d602ea3329f1cc6544bf4033a13ccd1",
+ "s" : "0x7621280f580073e3ae85a7fa594d394c41d32c6bf1ed60db6a514a67e639d3ce",
+ "to" : "0x3e180b1862f9d158abb5e519a6d8605540c23682",
+ "v" : "0x1c",
+ "value" : "0x01"
+ }
+ ],
+ "uncleHeaders" : [
+ ]
+ }
+ ],
+ "expect" : [
+ {
+ "network" : "Constantinople",
+ "result" : {
+ "0x80cdc4cd8b9517daba0a771f92dcaaa677707eb9" : {
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ },
+ "0xb000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "genesisBlockHeader" : {
+ "bloom" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
+ "coinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "difficulty" : "131072",
+ "extraData" : "0x42",
+ "gasLimit" : "0x989680",
+ "gasUsed" : "0",
+ "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "nonce" : "0x0102030405060708",
+ "number" : "0",
+ "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
+ "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "stateRoot" : "0xf99eb1626cfa6db435c0836235942d7ccaa935f1ae247d3f1c21e495685f903a",
+ "timestamp" : "0x03b6",
+ "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ "pre" : {
+ "0x3e180b1862f9d158abb5e519a6d8605540c23682" : {
+ "balance" : "0x05",
+ "code" : "0x60006000556000600060006000600073b000000000000000000000000000000000000000620186a0f1506000600060006000600073b000000000000000000000000000000000000000620186a0f250600060006000600073b000000000000000000000000000000000000000620186a0f450600060006000600073b000000000000000000000000000000000000000620186a0fa506000600a8060a760003960006000f55000fe60006000556001600155",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xe8d4a51000",
+ "code" : "",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xb000000000000000000000000000000000000000" : {
+ "balance" : "0x00",
+ "code" : "0x60006001556001600255",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xc000000000000000000000000000000000000000" : {
+ "balance" : "0x00",
+ "code" : "0x6000600155",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ }
+ },
+ "sealEngine" : "NoProof"
+ }
+} \ No newline at end of file
diff --git a/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_0toXto0toX_d0g0v0Filler.json b/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_0toXto0toX_d0g0v0Filler.json
new file mode 100644
index 000000000..001e407c6
--- /dev/null
+++ b/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_0toXto0toX_d0g0v0Filler.json
@@ -0,0 +1,106 @@
+{
+ "sstore_0toXto0toX_d0g0v0" : {
+ "_info" : {
+ "comment" : "change 0 -> X -> 0 -> X"
+ },
+ "blocks" : [
+ {
+ "blockHeaderPremine" : {
+ "difficulty" : "0x020000",
+ "gasLimit" : "0x989680",
+ "timestamp" : "0x03e8",
+ "updatePoW" : "1"
+ },
+ "transactions" : [
+ {
+ "data" : "0x",
+ "gasLimit" : "0x0a1220",
+ "gasPrice" : "0x01",
+ "nonce" : "0x00",
+ "r" : "0xb001ebe1f1c2c148e5f967eefec26a5e803992a43df7a3e6d076d48a7ac02051",
+ "s" : "0x0faaf42b274ee6d589564191fb5ef7137d3b17a04c4028228f3a67f79c586c02",
+ "to" : "0x3e180b1862f9d158abb5e519a6d8605540c23682",
+ "v" : "0x1c",
+ "value" : "0x01"
+ }
+ ],
+ "uncleHeaders" : [
+ ]
+ }
+ ],
+ "expect" : [
+ {
+ "network" : "Constantinople",
+ "result" : {
+ "0x3e180b1862f9d158abb5e519a6d8605540c23682" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01",
+ "0x02" : "0x01"
+ }
+ },
+ "0xb000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x01",
+ "0x02" : "0x01"
+ }
+ },
+ "0xed443bcd15fddef7ad2771e49b6cd6e2927e3c6a" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "genesisBlockHeader" : {
+ "bloom" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
+ "coinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "difficulty" : "131072",
+ "extraData" : "0x42",
+ "gasLimit" : "0x989680",
+ "gasUsed" : "0",
+ "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "nonce" : "0x0102030405060708",
+ "number" : "0",
+ "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
+ "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "stateRoot" : "0xf99eb1626cfa6db435c0836235942d7ccaa935f1ae247d3f1c21e495685f903a",
+ "timestamp" : "0x03b6",
+ "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ "pre" : {
+ "0x3e180b1862f9d158abb5e519a6d8605540c23682" : {
+ "balance" : "0x05",
+ "code" : "0x6001600055600060005560016000556000600060006000600073b000000000000000000000000000000000000000620186a0f1506000600060006000600073b000000000000000000000000000000000000000620186a0f250600060006000600073b000000000000000000000000000000000000000620186a0f450600060006000600073b000000000000000000000000000000000000000620186a0fa50600060198060b160003960006000f55000fe60016000556000600155600160015560006001556001600155",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xe8d4a51000",
+ "code" : "",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xb000000000000000000000000000000000000000" : {
+ "balance" : "0x00",
+ "code" : "0x6001600155600060015560016001556001600255",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xc000000000000000000000000000000000000000" : {
+ "balance" : "0x00",
+ "code" : "0x6000600155600060015560006001556000600155",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ }
+ },
+ "sealEngine" : "NoProof"
+ }
+} \ No newline at end of file
diff --git a/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_Xto0_d0g0v0Filler.json b/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_Xto0_d0g0v0Filler.json
new file mode 100644
index 000000000..21d814caa
--- /dev/null
+++ b/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_Xto0_d0g0v0Filler.json
@@ -0,0 +1,99 @@
+{
+ "sstore_Xto0_d0g0v0" : {
+ "_info" : {
+ "comment" : "change X -> 0"
+ },
+ "blocks" : [
+ {
+ "blockHeaderPremine" : {
+ "difficulty" : "0x020000",
+ "gasLimit" : "0x989680",
+ "timestamp" : "0x03e8",
+ "updatePoW" : "1"
+ },
+ "transactions" : [
+ {
+ "data" : "0x",
+ "gasLimit" : "0x03f7a0",
+ "gasPrice" : "0x01",
+ "nonce" : "0x00",
+ "r" : "0xa629dbbd169657029745389ac295c6054d602ea3329f1cc6544bf4033a13ccd1",
+ "s" : "0x7621280f580073e3ae85a7fa594d394c41d32c6bf1ed60db6a514a67e639d3ce",
+ "to" : "0x3e180b1862f9d158abb5e519a6d8605540c23682",
+ "v" : "0x1c",
+ "value" : "0x01"
+ }
+ ],
+ "uncleHeaders" : [
+ ]
+ }
+ ],
+ "expect" : [
+ {
+ "network" : "Constantinople",
+ "result" : {
+ "0xb000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x02" : "0x01"
+ }
+ },
+ "0xf9367adbf6e8547983533b5c1111c729e0aa2179" : {
+ "storage" : {
+ }
+ }
+ }
+ }
+ ],
+ "genesisBlockHeader" : {
+ "bloom" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
+ "coinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "difficulty" : "131072",
+ "extraData" : "0x42",
+ "gasLimit" : "0x989680",
+ "gasUsed" : "0",
+ "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "nonce" : "0x0102030405060708",
+ "number" : "0",
+ "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
+ "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "stateRoot" : "0xf99eb1626cfa6db435c0836235942d7ccaa935f1ae247d3f1c21e495685f903a",
+ "timestamp" : "0x03b6",
+ "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ "pre" : {
+ "0x3e180b1862f9d158abb5e519a6d8605540c23682" : {
+ "balance" : "0x05",
+ "code" : "0x60006000556000600060006000600073b000000000000000000000000000000000000000620186a0f1506000600060006000600073b000000000000000000000000000000000000000620186a0f250600060006000600073b000000000000000000000000000000000000000620186a0f450600060006000600073b000000000000000000000000000000000000000620186a0fa506000600f8060a760003960006000f55000fe600060005560016001556000600155",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x00" : "0x01"
+ }
+ },
+ "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xe8d4a51000",
+ "code" : "",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xb000000000000000000000000000000000000000" : {
+ "balance" : "0x00",
+ "code" : "0x60006001556001600255",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ },
+ "0xc000000000000000000000000000000000000000" : {
+ "balance" : "0x00",
+ "code" : "0x6000600155",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ }
+ },
+ "sealEngine" : "NoProof"
+ }
+} \ No newline at end of file
diff --git a/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_Xto0toXto0_d0g0v0Filler.json b/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_Xto0toXto0_d0g0v0Filler.json
new file mode 100644
index 000000000..2a814a7c3
--- /dev/null
+++ b/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_Xto0toXto0_d0g0v0Filler.json
@@ -0,0 +1,105 @@
+{
+ "sstore_Xto0toXto0_d0g0v0" : {
+ "_info" : {
+ "comment" : "change X -> 0 -> X -> 0"
+ },
+ "blocks" : [
+ {
+ "blockHeaderPremine" : {
+ "difficulty" : "0x020000",
+ "gasLimit" : "0x989680",
+ "timestamp" : "0x03e8",
+ "updatePoW" : "1"
+ },
+ "transactions" : [
+ {
+ "data" : "0x",
+ "gasLimit" : "0x0a1220",
+ "gasPrice" : "0x01",
+ "nonce" : "0x00",
+ "r" : "0xb001ebe1f1c2c148e5f967eefec26a5e803992a43df7a3e6d076d48a7ac02051",
+ "s" : "0x0faaf42b274ee6d589564191fb5ef7137d3b17a04c4028228f3a67f79c586c02",
+ "to" : "0x3e180b1862f9d158abb5e519a6d8605540c23682",
+ "v" : "0x1c",
+ "value" : "0x01"
+ }
+ ],
+ "uncleHeaders" : [
+ ]
+ }
+ ],
+ "expect" : [
+ {
+ "network" : "Constantinople",
+ "result" : {
+ "0x3e180b1862f9d158abb5e519a6d8605540c23682" : {
+ "storage" : {
+ "0x02" : "0x01"
+ }
+ },
+ "0xb000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x02" : "0x01"
+ }
+ },
+ "0xbf97a5dea408a053b51a91d7a8051c0f04652d44" : {
+ "storage" : {
+ "0x00" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "genesisBlockHeader" : {
+ "bloom" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
+ "coinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "difficulty" : "131072",
+ "extraData" : "0x42",
+ "gasLimit" : "0x989680",
+ "gasUsed" : "0",
+ "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "nonce" : "0x0102030405060708",
+ "number" : "0",
+ "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
+ "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "stateRoot" : "0xf99eb1626cfa6db435c0836235942d7ccaa935f1ae247d3f1c21e495685f903a",
+ "timestamp" : "0x03b6",
+ "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ "pre" : {
+ "0x3e180b1862f9d158abb5e519a6d8605540c23682" : {
+ "balance" : "0x05",
+ "code" : "0x6000600055600160005560006000556000600060006000600073b000000000000000000000000000000000000000620186a0f1506000600060006000600073b000000000000000000000000000000000000000620186a0f250600060006000600073b000000000000000000000000000000000000000620186a0f450600060006000600073b000000000000000000000000000000000000000620186a0fa50600060198060b160003960006000f55000fe60016000556001600155600060015560016001556000600155",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x00" : "0x01"
+ }
+ },
+ "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xe8d4a51000",
+ "code" : "",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xb000000000000000000000000000000000000000" : {
+ "balance" : "0x00",
+ "code" : "0x6000600155600160015560006001556001600255",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ },
+ "0xc000000000000000000000000000000000000000" : {
+ "balance" : "0x00",
+ "code" : "0x6001600155600160015560016001556001600155",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ }
+ },
+ "sealEngine" : "NoProof"
+ }
+} \ No newline at end of file
diff --git a/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_XtoX_d0g0v0Filler.json b/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_XtoX_d0g0v0Filler.json
new file mode 100644
index 000000000..4b63914ee
--- /dev/null
+++ b/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_XtoX_d0g0v0Filler.json
@@ -0,0 +1,111 @@
+{
+ "sstore_XtoX_d0g0v0" : {
+ "_info" : {
+ "comment" : "change X -> X"
+ },
+ "blocks" : [
+ {
+ "blockHeaderPremine" : {
+ "difficulty" : "0x020000",
+ "gasLimit" : "0x989680",
+ "timestamp" : "0x03e8",
+ "updatePoW" : "1"
+ },
+ "transactions" : [
+ {
+ "data" : "0x",
+ "gasLimit" : "0x03f7a0",
+ "gasPrice" : "0x01",
+ "nonce" : "0x00",
+ "r" : "0xa629dbbd169657029745389ac295c6054d602ea3329f1cc6544bf4033a13ccd1",
+ "s" : "0x7621280f580073e3ae85a7fa594d394c41d32c6bf1ed60db6a514a67e639d3ce",
+ "to" : "0x3e180b1862f9d158abb5e519a6d8605540c23682",
+ "v" : "0x1c",
+ "value" : "0x01"
+ }
+ ],
+ "uncleHeaders" : [
+ ]
+ }
+ ],
+ "expect" : [
+ {
+ "network" : "Constantinople",
+ "result" : {
+ "0x3e180b1862f9d158abb5e519a6d8605540c23682" : {
+ "storage" : {
+ "0x02" : "0x01",
+ "0x03" : "0x03"
+ }
+ },
+ "0x72cd8e726891a610b7c2103e6f6b173d2affd716" : {
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ },
+ "0xb000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x02" : "0x01"
+ }
+ },
+ "0xc000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x02"
+ }
+ }
+ }
+ }
+ ],
+ "genesisBlockHeader" : {
+ "bloom" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
+ "coinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "difficulty" : "131072",
+ "extraData" : "0x42",
+ "gasLimit" : "0x989680",
+ "gasUsed" : "0",
+ "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "nonce" : "0x0102030405060708",
+ "number" : "0",
+ "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
+ "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "stateRoot" : "0xf99eb1626cfa6db435c0836235942d7ccaa935f1ae247d3f1c21e495685f903a",
+ "timestamp" : "0x03b6",
+ "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ "pre" : {
+ "0x3e180b1862f9d158abb5e519a6d8605540c23682" : {
+ "balance" : "0x05",
+ "code" : "0x600060005560036003556000600060006000600073b000000000000000000000000000000000000000620186a0f1506000600060006000600073b000000000000000000000000000000000000000620186a0f250600060006000600073b000000000000000000000000000000000000000620186a0f450600060006000600073b000000000000000000000000000000000000000620186a0fa506000600f8060ac60003960006000f55000fe600060005560016001556001600155",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x03" : "0x03"
+ }
+ },
+ "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xe8d4a51000",
+ "code" : "",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xb000000000000000000000000000000000000000" : {
+ "balance" : "0x00",
+ "code" : "0x60006001556001600255",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x02" : "0x01"
+ }
+ },
+ "0xc000000000000000000000000000000000000000" : {
+ "balance" : "0x00",
+ "code" : "0x6002600155",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x01" : "0x02"
+ }
+ }
+ },
+ "sealEngine" : "NoProof"
+ }
+} \ No newline at end of file
diff --git a/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_XtoY_d0g0v0Filler.json b/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_XtoY_d0g0v0Filler.json
new file mode 100644
index 000000000..389e7e3fa
--- /dev/null
+++ b/src/BlockchainTestsFiller/GeneralStateTests/stSStoreTest/sstore_XtoY_d0g0v0Filler.json
@@ -0,0 +1,111 @@
+{
+ "sstore_XtoY_d0g0v0" : {
+ "_info" : {
+ "comment" : "change X -> Y"
+ },
+ "blocks" : [
+ {
+ "blockHeaderPremine" : {
+ "difficulty" : "0x020000",
+ "gasLimit" : "0x989680",
+ "timestamp" : "0x03e8",
+ "updatePoW" : "1"
+ },
+ "transactions" : [
+ {
+ "data" : "0x",
+ "gasLimit" : "0x03f7a0",
+ "gasPrice" : "0x01",
+ "nonce" : "0x00",
+ "r" : "0xa629dbbd169657029745389ac295c6054d602ea3329f1cc6544bf4033a13ccd1",
+ "s" : "0x7621280f580073e3ae85a7fa594d394c41d32c6bf1ed60db6a514a67e639d3ce",
+ "to" : "0x3e180b1862f9d158abb5e519a6d8605540c23682",
+ "v" : "0x1c",
+ "value" : "0x01"
+ }
+ ],
+ "uncleHeaders" : [
+ ]
+ }
+ ],
+ "expect" : [
+ {
+ "network" : "Constantinople",
+ "result" : {
+ "0x3e180b1862f9d158abb5e519a6d8605540c23682" : {
+ "storage" : {
+ "0x02" : "0x01",
+ "0x03" : "0x02"
+ }
+ },
+ "0x99abdddfad0c5cc6aa06772e0eb85613ec0abd2d" : {
+ "storage" : {
+ "0x01" : "0x04"
+ }
+ },
+ "0xb000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x02" : "0x01"
+ }
+ },
+ "0xc000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "genesisBlockHeader" : {
+ "bloom" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
+ "coinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "difficulty" : "131072",
+ "extraData" : "0x42",
+ "gasLimit" : "0x989680",
+ "gasUsed" : "0",
+ "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "nonce" : "0x0102030405060708",
+ "number" : "0",
+ "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
+ "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "stateRoot" : "0xf99eb1626cfa6db435c0836235942d7ccaa935f1ae247d3f1c21e495685f903a",
+ "timestamp" : "0x03b6",
+ "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
+ "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
+ },
+ "pre" : {
+ "0x3e180b1862f9d158abb5e519a6d8605540c23682" : {
+ "balance" : "0x05",
+ "code" : "0x600060005560026003556000600060006000600073b000000000000000000000000000000000000000620186a0f1506000600060006000600073b000000000000000000000000000000000000000620186a0f250600060006000600073b000000000000000000000000000000000000000620186a0f450600060006000600073b000000000000000000000000000000000000000620186a0fa506000600f8060ac60003960006000f55000fe600060005560016001556004600155",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x03" : "0x03"
+ }
+ },
+ "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xe8d4a51000",
+ "code" : "",
+ "nonce" : "0x00",
+ "storage" : {
+ }
+ },
+ "0xb000000000000000000000000000000000000000" : {
+ "balance" : "0x00",
+ "code" : "0x60006001556001600255",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x02" : "0x02"
+ }
+ },
+ "0xc000000000000000000000000000000000000000" : {
+ "balance" : "0x00",
+ "code" : "0x6000600155",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ }
+ },
+ "sealEngine" : "NoProof"
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stSStoreTest/SstoreCallToSelfSubRefundBelowZeroFiller.json b/src/GeneralStateTestsFiller/stSStoreTest/SstoreCallToSelfSubRefundBelowZeroFiller.json
index cab1b1461..e2d083f7c 100644
--- a/src/GeneralStateTestsFiller/stSStoreTest/SstoreCallToSelfSubRefundBelowZeroFiller.json
+++ b/src/GeneralStateTestsFiller/stSStoreTest/SstoreCallToSelfSubRefundBelowZeroFiller.json
@@ -20,16 +20,17 @@
},
"network" : [">=Constantinople"],
"result" : {
- "80cdc4cd8b9517daba0a771f92dcaaa677707eb9" : {
- "storage" : {
- "0x01" : "0x01"
- }
- },
- "b000000000000000000000000000000000000000" : {
- "storage" : {
- "0x02" : "0x01"
- }
- }
+ "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xffffffffffff96a3",
+ "nonce" : "0x01"
+ },
+ "0xe12d6474ac4964b9f23812bf3375c1fe637ad3b6" : {
+ "balance" : "0x00",
+ "nonce" : "0x00",
+ "storage" : {
+ "0x01" : "0x03"
+ }
+ }
}
}
],
diff --git a/src/GeneralStateTestsFiller/stSStoreTest/sstore_0toXto0toXFiller.json b/src/GeneralStateTestsFiller/stSStoreTest/sstore_0toXto0toXFiller.json
new file mode 100644
index 000000000..bea507cdd
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stSStoreTest/sstore_0toXto0toXFiller.json
@@ -0,0 +1,95 @@
+{
+ "sstore_0toXto0toX" : {
+ "_info" : {
+ "comment" : "change 0 -> X -> 0 -> X"
+ },
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "0x020000",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "1",
+ "currentTimestamp" : "1000",
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : [">=Constantinople"],
+ "result" : {
+ "ed443bcd15fddef7ad2771e49b6cd6e2927e3c6a" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01"
+ }
+ },
+ "3e180b1862f9d158abb5e519a6d8605540c23682" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01",
+ "0x02" : "0x01"
+ }
+ },
+ "b000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x01",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" :
+ {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "3e180b1862f9d158abb5e519a6d8605540c23682" : {
+ "balance" : "5",
+ "code" : "{ (seq [[0]] 1 [[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 0) (SSTORE 1 1) (SSTORE 1 0) (SSTORE 1 1) ) 0) 0) (STOP) ) }",
+ "nonce" : "0",
+ "storage" : {
+ "0x00" : "0x00"
+ }
+ },
+ "b000000000000000000000000000000000000000" : {
+ "balance" : "",
+ "code" : "{ [[1]] 1 [[1]] 0 [[1]] 1 [[2]] 1 }",
+ "nonce" : "",
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ },
+ "c000000000000000000000000000000000000000" : {
+ "balance" : "",
+ "code" : "{ [[1]] 0 [[1]] 0 [[1]] 0 [[1]] 0 }",
+ "nonce" : "",
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "660000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "3e180b1862f9d158abb5e519a6d8605540c23682",
+ "value" : [
+ "1"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stSStoreTest/sstore_Xto0toXto0Filler.json b/src/GeneralStateTestsFiller/stSStoreTest/sstore_Xto0toXto0Filler.json
new file mode 100644
index 000000000..7d809e393
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stSStoreTest/sstore_Xto0toXto0Filler.json
@@ -0,0 +1,95 @@
+{
+ "sstore_Xto0toXto0" : {
+ "_info" : {
+ "comment" : "change X -> 0 -> X -> 0"
+ },
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "0x020000",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "1",
+ "currentTimestamp" : "1000",
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : [">=Constantinople"],
+ "result" : {
+ "bf97a5dea408a053b51a91d7a8051c0f04652d44" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00"
+ }
+ },
+ "3e180b1862f9d158abb5e519a6d8605540c23682" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x01"
+ }
+ },
+ "b000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" :
+ {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "3e180b1862f9d158abb5e519a6d8605540c23682" : {
+ "balance" : "5",
+ "code" : "{ (seq [[0]] 0 [[0]] 1 [[0]] 0 (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) (SSTORE 1 0) ) 0) 0) (STOP) ) }",
+ "nonce" : "0",
+ "storage" : {
+ "0x00" : "0x01"
+ }
+ },
+ "b000000000000000000000000000000000000000" : {
+ "balance" : "",
+ "code" : "{ [[1]] 0 [[1]] 1 [[1]] 0 [[2]] 1 }",
+ "nonce" : "",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ },
+ "c000000000000000000000000000000000000000" : {
+ "balance" : "",
+ "code" : "{ [[1]] 1 [[1]] 1 [[1]] 1 [[1]] 1 }",
+ "nonce" : "",
+ "storage" : {
+ "0x01" : "0x01"
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "660000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "3e180b1862f9d158abb5e519a6d8605540c23682",
+ "value" : [
+ "1"
+ ]
+ }
+ }
+}