Commit Graph

622 Commits

Author SHA1 Message Date
jangko 0799b4534c
EIP2537 part 2 2020-11-28 23:13:10 +07:00
jangko c1b7ae5b02
EIP2537 part 1 2020-11-27 21:42:17 +07:00
narimiran 73c4837d0d change case of `berlin`
In `vm_forks.nim`, `FkBerlin`'s value is (lowercase) `"berlin"`.

Another example of using lowercase in similar code:
`constantinople` in `test_op_bit.nim`
2020-11-27 09:50:28 +01:00
andri lim 360b74327e
Merge pull request #544 from status-im/precompiles_test_rework
Precompiles test rework
2020-11-26 10:34:26 +07:00
jangko 92fec713db
add EIP2537 test vectors 2020-11-25 20:55:53 +07:00
jangko 971e00e580
precompile contracts test rework 2020-11-25 20:42:15 +07:00
jangko a263e6b1a6
implement EIP2315 tests 2020-11-25 18:23:02 +07:00
jangko 5bb6418bcb
implement EIP2565 2020-11-24 16:19:02 +07:00
jangko 97f73fd03d
implement EIP 2046 2020-11-19 14:23:07 +07:00
jangko f987e86562
implement more eth rpc 2020-07-30 14:21:11 +07:00
jangko 9c38266ba7
implement eth_estimateGas 2020-07-29 12:42:32 +07:00
jangko c9802edfce
setup block and state env for more complex eth rpc tests 2020-07-28 23:48:45 +07:00
jangko d089a61539
add compiletime evm bytecode generator to macro_assembler 2020-07-24 19:54:27 +07:00
jangko bb89a296dd
implement eth_signTransaction, eth_sendTransaction, eth_sendRawTransaction, eth_call 2020-07-24 19:44:36 +07:00
jangko 7819dae7ce
implement eth_signTransaction 2020-07-23 22:30:42 +07:00
jangko f82dff64fa
implement more eth rpc and keystore management 2020-07-23 14:54:32 +07:00
jangko 336efdb0c3
implement web3, net, and some eth namespace rpc 2020-07-22 23:57:55 +07:00
jangko 165f9fea2e
reduce warnings 2020-07-21 13:15:06 +07:00
jangko 91eb5db346
save some CI time by combining tools build 2020-07-21 11:28:03 +07:00
jangko 845671bf0a
fix compilation error following breaking changes in nim-eth 2020-07-20 13:50:05 +07:00
jangko e37cacd8f1
implement forkid calculation and tests for each supported network 2020-07-04 13:23:09 +07:00
jangko 12ddfee675
fix compilation error related to lib-secp256k1 changes 2020-06-24 17:07:33 +07:00
jangko 49460b6b1e
move buildWitness from test_blockchain_json to vm_state 2020-06-18 13:16:38 +07:00
jangko 3947e9a853
piggyback generate block witness test on test_blockchain_json 2020-06-06 10:26:36 +07:00
jangko 8efcfd32d8
fix test_rpc: switch state_db to accounts_cache 2020-06-01 20:37:00 +07:00
jangko 8ee0ab4e89
fix macro_assembler -> add call to acounts_cache.persist 2020-06-01 13:58:14 +07:00
jangko 844071033a
fix at various places related to missing accounts_cache.persist call 2020-06-01 13:45:32 +07:00
jangko 079579c1cb
fix test_blockchain_json -> add a call to accounts_cache.persist 2020-06-01 12:00:36 +07:00
jangko 46e9c11d3f
fix test_generalstate_json -> add a call to accounts_cache.persist 2020-06-01 11:49:56 +07:00
jangko 9cce8d695b
fix test_helpers -> add a call to accounts_cache.persist 2020-06-01 11:28:27 +07:00
jangko 71514a0a66
replace state_db with accounts_cache 2020-05-30 10:14:59 +07:00
jangko 7c0d24a648
add instruction comment for test_fuzz 2020-05-20 12:41:05 +07:00
jangko 9d101948ab
use 'const' instead of 'let' for module names in all_tests 2020-05-20 11:43:46 +07:00
jangko 048c8a41f1
all_tests now print the name of failed module instead of only index number 2020-05-20 11:35:27 +07:00
andri lim 7a0215608e
Merge pull request #496 from status-im/stateless_client_experiment
[WIP] Stateless client experiment: The Block Witness
2020-05-08 19:58:50 +07:00
andri lim 758ebabd87
working test_witness_json prototype 2020-05-08 12:16:24 +07:00
andri lim 9c999ffa9c
enable block witness test 2020-05-05 20:46:17 +07:00
andri lim c9e49bf68a
fix accounts cache init API 2020-04-29 12:00:44 +07:00
andri lim 8747fe1ecd add optional outputName to jsonTest macro 2020-04-21 12:05:46 +03:00
Jacek Sieka 4ade5797ee
rlp: don't use ranges / experimental features (#495) 2020-04-20 20:12:44 +02:00
andri lim af02a3b1b2
reduce unused import warnings 2020-04-15 19:05:57 +07:00
andri lim 5e694c6874
fix test_blockchain_json 2020-04-12 19:02:03 +07:00
andri lim d2b0ca62b2
fix GlacierMuir to MuirGlacier typo 2020-04-12 18:13:22 +07:00
andri lim 5ca7370407
add ropsten difficulty test 2020-04-12 18:09:18 +07:00
andri lim 87bae2bb78
switch to new toFork 2020-04-12 18:02:59 +07:00
andri lim d69ede6060 add goerli testnet genesis data[skip ci] 2020-04-09 19:13:17 +03:00
Jacek Sieka 1d472cf090
Eth keys (#482)
* bump nim-eth, fix deprecated calls
2020-04-05 15:12:48 +02:00
andri lim 266e0ddb1e
room for EIP-1283 2020-03-24 17:21:13 +07:00
Zed fff29f7a6a Replace markdown report code with testutils 2020-03-10 14:03:04 +02:00
andri lim 0a35cce48a add accounts cache read only operations tests 2020-02-27 14:38:42 +02:00
andri lim 08168ef121 Update BCT json fixtures 2020-02-21 13:01:35 +02:00
andri lim e12fdec7c7 update GST json fixtures 2020-02-21 13:01:21 +02:00
andri lim 6b6584c4d0 Glacier Muir update 2020-02-20 09:21:35 +02:00
andri lim a6cde0928e [skip ci] remove test_generalstate_failing.nim 2020-02-20 09:16:29 +02:00
andri lim 32574fcebe allow user to turn pruning on/off when run test 2020-02-20 09:16:29 +02:00
andri lim ed5710fa17 allow user to select legacy or new test suite for GST and BCT 2020-02-20 09:16:29 +02:00
andri lim 2fbabd25a4 implement aleth/geth/parity compatibility mode -- 100% pass test 2020-02-20 09:08:44 +02:00
andri lim 4a786d8cf7 update tx tests json fixtures 2020-02-20 09:02:20 +02:00
andri lim 15c9fa54ec fixes modexp gasFee bug 2020-02-18 20:11:36 +02:00
andri lim ad1b27d2a4 fixes failed tx test 2020-02-12 17:55:14 +02:00
andri lim 85c36647d1 make tests green 2020-02-12 17:53:26 +02:00
andri lim 1e447ee2db
make tests green 2020-02-05 23:08:26 +07:00
Ștefan Talpalaru ea38893416
fix test dir name 2020-01-31 22:53:28 +01:00
andri lim 55494f06e5
move 'validateTransaction' from GST into 'processTransaction' 2020-01-24 19:52:55 +07:00
andri lim 349d033d05 add whenIsMainModule to test_tracer_json 2020-01-23 18:07:44 +02:00
andri lim d656f7f701 rename 'txContext' to 'setupTxContext' 2020-01-23 18:07:44 +02:00
andri lim 933b2dad78 remove code from EVM Message and load code in 'Computation' 2020-01-23 18:07:44 +02:00
kdeme d56655d278 Move WhisperKeys to KeyStorage 2020-01-23 12:39:36 +02:00
andri lim c1ef8632b2 move fork and gasCosts from Computation to vmState 2020-01-20 18:36:58 +02:00
andri lim bab359cabf move origin and gasPrice from Message to vmState 2020-01-20 18:36:58 +02:00
andri lim 16a938d3fa fixes clearStorage bug 2020-01-20 18:36:58 +02:00
andri lim 52fffa6e25 fixes long standing bug create2nocash 2020-01-20 18:36:58 +02:00
andri lim 2535219830 reenable previously OOM tests 2020-01-20 18:36:58 +02:00
andri lim 63e886655b fixes coinbase suicide bugs 2020-01-20 18:36:58 +02:00
andri lim 0b99b76cd1 change 'BaseComputation' to 'Computation' 2020-01-20 18:36:58 +02:00
andri lim 79df931234 simplifies computation.getFork 2020-01-20 18:36:58 +02:00
andri lim 8f7597e23b [skip ci] add evmc CallKind to EVM Message 2020-01-19 19:17:37 +02:00
andri lim dfa2f0099f [skip ci] fixes macro_assembler 2020-01-19 19:17:37 +02:00
andri lim 836e087984 [skip ci] change storageAddress to contractAddres 2020-01-19 19:17:37 +02:00
andri lim 727b477fca [skip ci] add accounts cache test 2020-01-19 19:17:37 +02:00
andri lim f9c2f40021 uncomment general state tests 2019-12-10 12:34:48 +02:00
andri lim 7bdbf85a7a update tests log 2019-12-10 12:34:48 +02:00
andri lim 69072b8cf7 disable slow bc tests 2019-12-10 12:34:48 +02:00
andri lim 0f2be7c964 disable problematic tests 2019-12-10 12:34:48 +02:00
andri lim df21dd44cb fixes typo 2019-12-10 12:34:48 +02:00
andri lim 9596dbc267 activates blockchain test 2019-12-10 12:34:48 +02:00
andri lim 1ffb992674 multi root state trie implementation 2019-12-10 12:34:48 +02:00
andri lim 5c96cf8e87 enable EVM sha3_bigsize test on 32 bits 2019-12-10 12:34:14 +02:00
andri lim 3683ce2cbc
disable tests with huge memory consumption 2019-12-06 15:01:49 +07:00
andri lim d2b5e1a26d
use 'skipNothing' as default param to 'jsonTest' 2019-12-06 15:01:49 +07:00
andri lim 2057f88dba
fixes #421, each tests have their own skip table 2019-12-06 15:01:49 +07:00
kdeme 10f9f2c3bb Disable test randomStatetest159 2019-12-05 13:02:21 +01:00
andri lim 358c27c862
make test green, skip mysterious raising exception failed test 2019-12-05 07:30:11 +07:00
andri lim d944138e63
fixes indentation 2019-11-19 21:26:58 +07:00
andri lim 0d743dc468
fixes 'collectTouchedAccounts' for Istanbul 2019-11-19 16:14:36 +07:00
andri lim 6b053d8a89
skip failed tests 2019-11-19 13:12:13 +07:00
andri lim 19803bd685
skip incorrect and slow tests 2019-11-18 20:49:24 +07:00
andri lim dda26611c2
fixes bc and gst tester [skip ci] 2019-11-14 22:37:58 +07:00
andri lim f66f49168a
fix bc/gst tester for istanbul [skip ci] 2019-11-14 21:20:34 +07:00
andri lim d01edfdcac add istanbul tests fixtures 2019-11-14 10:21:04 +00:00
andri lim c4dcf5da30
reduce compiler warnings 2019-11-13 21:49:39 +07:00
andri lim b3cbf620d6 implement EIP-152 2019-11-12 15:51:48 +00:00
Ștefan Talpalaru d84e4810d5
unittest2 (parallelism disabled)
This is https://github.com/status-im/nimbus/pull/332 with parallelism
disabled, while some threadpool deadlock is being debugged.
2019-10-31 06:17:01 +01:00
andri lim 8a09e97d4d
add diagnostic message to test_difficulty.nim 2019-10-28 22:21:41 +07:00
andri lim a45792cede
add diagnostic message to all_tests.nim 2019-10-28 22:21:40 +07:00
andri lim b3a7adcedd
fixes #404 2019-10-17 15:30:15 +07:00
andri lim a65ab2763e fixes generateHeaderFromParentHeader 2019-09-26 12:33:43 +03:00
andri lim 12960c27ce fixes coinBase suicide 2019-09-26 12:33:43 +03:00
andri lim e63a43ee9f fixes getAncestorHash 2019-09-26 12:33:43 +03:00
andri lim 4c48244cbb fixes debugger 2019-09-26 12:33:43 +03:00
andri lim b189e1604f fixes gasLimitBounds 2019-09-26 12:33:43 +03:00
andri lim ed01201233 fixes fork choice 2019-09-26 12:33:43 +03:00
andri lim 10fb81b781 fixes verifyStateDB nonce conversion 2019-09-26 12:33:43 +03:00
andri lim a2a8e81265 fixes difficulty validation 2019-09-26 12:33:43 +03:00
andri lim 58a7d5af83 fixes checkPOW of validateSeal 2019-09-26 12:33:43 +03:00
andri lim 7a07737855 implement bc_test debugger 2019-09-26 12:33:43 +03:00
andri lim bf23bd8d84 fixes wrongNumber bug 2019-09-26 12:33:43 +03:00
andri lim 5c7adaae3b implement pow validation 2019-09-26 12:33:43 +03:00
andri lim b5266a7412 fix wrong gasUsed 2019-09-26 12:33:43 +03:00
andri lim 85b21721b0 pass more tests 2019-09-26 12:33:43 +03:00
andri lim 9cba2c9cc0 fix validateGasLimit 2019-09-26 12:33:43 +03:00
andri lim f2b5f9b77f skip more failing test 2019-09-26 12:33:43 +03:00
andri lim 3ad465d169 implement block validation and friends 2019-09-26 12:33:43 +03:00
andri lim af49151bc6 deals with invalid blocks 2019-09-26 12:33:43 +03:00
andri lim 49a6f84ac9 activates verifyStateDB 2019-09-26 12:33:43 +03:00
andri lim 7c65b8a2b2 implement validate block unchanged 2019-09-26 12:33:43 +03:00
andri lim 594c3b8d08 some cleanup 2019-09-26 12:33:43 +03:00
andri lim e61e530b9f skip failing test 2019-09-26 12:33:43 +03:00
andri lim 890c6a9802 add command line config 2019-09-26 12:33:43 +03:00
andri lim 12ea5247d6 execute transactions 2019-09-26 12:33:43 +03:00
andri lim 9485db920d prepare vmstate for block validation 2019-09-26 12:33:43 +03:00
andri lim 33c2848fd5 implement vmconfig for bc test 2019-09-26 12:33:43 +03:00
andri lim 578c2bd857
improve cliBuilder macro readability 2019-09-24 10:29:41 +07:00
andri lim d2d5661e11
fix comment 2019-09-22 16:57:19 +07:00
andri lim 321f13dc19
attempt to add simple cli to all_tests 2019-09-21 12:45:23 +07:00
andri lim 081baa6da7 parsing complete 2019-09-04 19:05:21 +02:00
andri lim c5d07fc07f implement bc test fixtures parser 2019-09-04 19:05:21 +02:00
andri lim e2c01f46ab
skip failing test 2019-09-03 10:45:48 +07:00
andri lim 31ed8fcf83
refine transaction validation 2019-08-29 20:44:54 +07:00
andri lim 230fb4b06d
activates test 2019-08-29 19:57:01 +07:00
andri lim 7c094a2a3e
initial implementation of transaction test 2019-08-29 19:54:38 +07:00
andri lim 1d9760eb66
activates difficulty_test 2019-08-26 21:40:27 +07:00
andri lim 0bad132387
add diffficulty test 2019-08-26 21:26:57 +07:00
Ștefan Talpalaru 2fc238f35f
Merge branch 'add_trace_switch' of github.com:jangko/nimbus into jangko-add_trace_switch 2019-08-26 16:22:45 +02:00
Ștefan Talpalaru 4cfff44748
Merge branch 'simplify_calldataload' of github.com:jangko/nimbus into jangko-simplify_calldataload 2019-08-26 16:20:38 +02:00
andri lim bcb7e78a77
add more tests fixtures 2019-08-25 08:38:10 +07:00
andri lim e6187aa5f3
uncomment commented test case in test_op_custom.nim 2019-08-20 18:08:09 +07:00
andri lim ccd8835b4d
fixes and activates test for 'calldataload' 2019-08-20 17:11:17 +07:00
andri lim e05108b7e4
add 'trace' switch to tester configuration 2019-08-20 14:17:22 +07:00
andri lim 7d9aa54b2c add 1 OOM 32bit GST to skip list 2019-08-19 20:41:27 +03:00
andri lim fe45235d76 add 4 failed 32bit GST to skip list 2019-08-19 20:41:27 +03:00
andri lim 1ed6322c2f remove 55 32bit GST from skip list 2019-08-19 20:41:27 +03:00
andri lim e675182506 fixes 32 bit problem in test_helpers.nim and transaction_tracer.nim 2019-08-19 20:41:27 +03:00
andri lim 742f53f5e9 reactivates GST 2019-08-19 20:41:27 +03:00
andri lim fc6dcfcfa5
Merge pull request #375 from status-im/addBlockTest
Add PersistBlockTest for block 1352922, fixes #363
2019-08-15 07:52:00 +07:00
kdeme b4b096ef5e Add PersistBlockTest for block 1352922, fixes #363 2019-08-14 20:56:57 +02:00
andri lim b1febeabb7
fixes #64 test_vm_json now support all forks 2019-08-14 23:31:30 +07:00
andri lim b2bf979c57 remove tests/test_opcode.nim 2019-08-13 17:48:56 +03:00
andri lim 74d68ea425 fixes #72, simplify SDIV implementation 2019-08-13 17:48:25 +03:00
Jacek Sieka 2763bd0dd5
std_shims -> stew 2019-07-07 12:12:01 +02:00
kdeme f34d8d71db
Use await instead of waitFor in RPC tests 2019-05-16 22:20:17 +02:00
andri lim a0126a7458 add byzantium block validation test 2019-05-15 17:03:36 +03:00
andri lim 58c4e16365 add some comments 2019-05-13 10:26:28 +03:00
andri lim 077fbe6b73 modexp cleanup 2019-05-13 10:26:28 +03:00
andri lim a86979eaa3 fix create2 gasCost 2019-05-13 10:26:28 +03:00
andri lim e51725d13b fix extCodeHash 2019-05-13 10:26:28 +03:00
andri lim f08eedbce3 fix create2 nonce increment 2019-05-13 10:26:28 +03:00
andri lim 51edbe6390 fix shr and shl gasCost 2019-05-13 10:26:28 +03:00
andri lim 956a51c2ed activates constantinople general state test 2019-05-13 10:26:28 +03:00
andri lim 480a3d2cab implement constantinople bitwise opcode test 2019-05-13 10:26:28 +03:00
andri lim 2f08a6bc0e fix byzantium contract creation OOG 2019-05-13 10:26:28 +03:00
andri lim fd8a649df3 fix RevertInCreateInInit problem 2019-05-13 10:26:28 +03:00
andri lim 86d5653a4c make test green 2019-05-13 10:26:28 +03:00
andri lim b34ad8b507 fix collectTouchedAccounts 2019-05-13 10:26:28 +03:00
andri lim f809a864b1 fix calcMemSize bug 2019-05-13 10:26:28 +03:00
andri lim 213fb3b971 constantinople's skeletal implementation 2019-05-13 10:26:28 +03:00
Bruno Škvorc 023b90fde8
Merge pull request #286 from kdeme/feature/whisper-rpc
[WIP] Initial implementation of Whisper RPC
2019-05-01 23:00:54 +02:00
andri lim 8bc263a91f
update GST with Constantinople fixtures 2019-04-29 13:23:44 +07:00
kdeme 9de9741e3c
Fix more return values + minor improvements 2019-04-26 13:40:28 +02:00
kdeme 7ab84641d6 Fix, improve and activate rpc test 2019-04-26 13:38:50 +02:00
kdeme e8a997cf11 Fix return values (raise errors) for most of the calls + some minor TODOs 2019-04-26 13:38:50 +02:00
kdeme ce523550c0 Use directly the Whisper types instead of distinct strings, we test for string in fromJson anyhow 2019-04-26 13:38:50 +02:00
kdeme 1df3c7202b Fix & add Whisper RPC tests + add isValidHexData with length check 2019-04-26 13:38:50 +02:00
kdeme 65908d5359 Add shh_generateSymKeyFromPassword implementation 2019-04-26 13:38:50 +02:00
kdeme d43f20c65a Initial implementation of Whisper RPC 2019-04-26 13:38:50 +02:00
andri lim cee0a38278
add some comment 2019-04-26 07:31:18 +07:00
andri lim 3ccd1b1ee9
fix rangeToPadded, GST +5 2019-04-26 07:31:17 +07:00
andri lim fd7c447f18
fix modexp output, GST +53 2019-04-26 07:31:16 +07:00
andri lim 89402af114
fix modexp gasCost, GST +6 2019-04-26 07:31:16 +07:00
andri lim 8ecbce6d0c
fix gst state clearing, GST +5 2019-04-26 07:31:15 +07:00
andri lim 03ea1c5a85
fix ecRecover precompiles, GST +1 2019-04-26 07:31:15 +07:00
andri lim ba47d3c997
fix returnDataCopy gasCost, GST +11 2019-04-26 07:31:14 +07:00
andri lim 7b47cb6b24
various fixes, GST +6 2019-04-26 07:31:14 +07:00
andri lim 90e3a4320a
fix revert opcode at first level computation 2019-04-26 07:31:13 +07:00
andri lim c57295da0b
fix precompiles error handling, GST +262 2019-04-26 07:31:13 +07:00
andri lim ceb159f5fe
fix static context check in Call and Create, GST +52 2019-04-26 07:31:12 +07:00
andri lim 605618d9ee
add static context check, GST +94 -28 2019-04-26 07:31:12 +07:00
andri lim 6295e6a7e4
fix touched miner problem, GST +25 2019-04-26 07:31:11 +07:00
andri lim be5cce6c71
fix static call addr, GST +93 -16 2019-04-26 07:31:11 +07:00
andri lim fd8f774386
activates byzantium gst test, GST +153 2019-04-26 07:31:11 +07:00