Commit Graph

818 Commits

Author SHA1 Message Date
Danny Ryan a47ade3ba6
pr feedback 2021-09-09 15:27:23 -06:00
Alex Stokes c0994e6736
Add sync committee tests with exited and withdrawable members 2021-09-09 13:27:54 -07:00
Alex Stokes 989cd38041
add rewards spec test with exit in current epoch 2021-09-08 20:24:22 -07:00
Hsiao-Wei Wang d23444a2db
Merge pull request #2577 from ethereum/fix-fork-choice-tests
Fix fork choice `on_block` tests and update test format
2021-09-08 21:35:32 +08:00
Danny Ryan 8220f7dd44
ensure new dynamic queue tests don't run for mainnet cofig 2021-09-08 07:31:13 -06:00
Hsiao-Wei Wang 5bc59d8aab
Fix the comments 2021-09-08 21:22:48 +08:00
Danny Ryan 6784025d64
add scaled churn limit tests for voluntary exits 2021-09-07 20:49:54 -06:00
Danny Ryan 43e79a7ee0
add process_registry_updates tests for scaled churn limit 2021-09-07 20:34:28 -06:00
Danny Ryan 4faff4f899
Merge pull request #2580 from ralexstokes/add-rewards-test-case-for-exited-vals
Add test cases to ensure coverage with exited validators
2021-09-07 16:11:53 -06:00
Alex Stokes 14f71ffb4b
Use realistic `withdrawable_epoch` in spec test 2021-09-07 12:53:06 -07:00
Alex Stokes 064b489d18
Use spec function for total active balance 2021-09-07 12:23:57 -07:00
Alex Stokes fb4a4f6694
Update tests/core/pyspec/eth2spec/test/altair/block_processing/sync_aggregate/test_process_sync_aggregate_random.py
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2021-09-07 13:09:23 -06:00
Danny Ryan ccd48d7286
Merge pull request #2579 from ethereum/fix-process_and_sign_block_without_header_validations
Fix testing helper `process_and_sign_block_without_header_validations`
2021-09-07 12:57:26 -06:00
Alex Stokes 25c290474f
fix test filtering on eth1 voting spec test 2021-09-02 15:50:26 -07:00
Alex Stokes 4168943ecf
Update tests/core/pyspec/eth2spec/test/helpers/random.py 2021-09-02 15:38:52 -06:00
Alex Stokes 30596fb8a1
Update tests/core/pyspec/eth2spec/test/altair/block_processing/sync_aggregate/test_process_sync_aggregate_random.py 2021-09-02 15:35:15 -06:00
Alex Stokes d834b6e800
add active/exited balances test for justification 2021-09-02 12:37:11 -07:00
Alex Stokes bd38587a1e
add active/exited balances test for `process_slashings` 2021-09-02 09:50:40 -07:00
Alex Stokes ad076697f4
add test case for active/exited difference for sync rewards processing 2021-09-02 09:50:39 -07:00
Alex Stokes df89763777
ensure balance differential as a sanity check 2021-09-02 08:48:32 -07:00
Alex Stokes 58c0da9059
ensure rewards spec test with exited validators 2021-09-02 08:48:32 -07:00
Alex Stokes 0cc5f9cd59
modify helper for more precision on exited validators 2021-09-02 08:48:32 -07:00
Alex Stokes cf23cd00ab
ensure the test covers exited, unslashed validators 2021-09-02 08:48:32 -07:00
Alex Stokes 7cb5901ee6
add spec test case for rewards with exited validators and _no_ leak 2021-09-02 08:48:31 -07:00
Alex Stokes e341f4e1f8
refactor "leaking patch" helper 2021-09-02 08:48:31 -07:00
Antonio Sanso ae8c0447ef
Update tests/core/pyspec/eth2spec/test/altair/block_processing/sync_aggregate/test_process_sync_aggregate.py
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2021-09-02 14:57:47 +02:00
Antonio Sanso 5f1a444e70
Update test_process_sync_aggregate.py 2021-09-02 11:34:42 +02:00
Antonio Sanso 2206a58335
Update test_process_sync_aggregate.py 2021-09-02 11:33:12 +02:00
Antonio Sanso 2d736139d5
Update test_process_sync_aggregate.py 2021-09-02 11:19:58 +02:00
Antonio Sanso 9bf8ad9130
Update test_process_sync_aggregate.py 2021-09-02 11:00:51 +02:00
Mikhail Kalinin 6ba1f22404 Set ExecutionPayload.random to the previous randao_mix 2021-09-01 18:42:58 +06:00
Hsiao-Wei Wang 4c34518edf
Call Altair and Merge operations in `process_and_sign_block_without_header_validations` 2021-09-01 00:23:42 +08:00
Hsiao-Wei Wang b23ed05eee
[`test_on_block_finalized_skip_slots`] Make target state right after skipped slots 2021-08-31 18:40:26 +08:00
Hsiao-Wei Wang 9b065c7816
To avoid using non-genesis anchor state, rewrite `test_on_block_finalized_skip_slots_not_in_skip_chain` 2021-08-31 17:42:10 +08:00
Hsiao-Wei Wang da8d22c754
Update `checks` Checkpoint fields 2021-08-31 13:16:19 +08:00
Hsiao-Wei Wang 189a9d4ae9
Add the missed on_tick output and remove the useless on_tick call 2021-08-31 12:10:47 +08:00
Alex Stokes 2477deaf13
Allow test driver to batch test cases under one handler name with a list 2021-08-30 13:53:05 -07:00
Alex Stokes 387113b2f4
add "collect only" mode to spec test generator 2021-08-30 13:36:01 -07:00
Danny Ryan 125bf22494
Merge pull request #2570 from ralexstokes/fix-deposits-randomized-tests
Fix randomized deposit testing
2021-08-26 17:47:03 -06:00
Danny Ryan c45e77b0b5
Merge pull request #2571 from ralexstokes/add-timing-info-to-test-gen
add timing information to spec test generation
2021-08-26 17:14:52 -06:00
Alex Stokes 74fcf67cf4
Fix a performance bug with the randomized block tests from #2560 2021-08-26 13:42:12 -07:00
Alex Stokes 9474f0a051
construct and supply scenario-wide state to facilitate deposit processing 2021-08-26 12:02:59 -07:00
Alex Stokes b45601f44c
add timing information to spec test generation
in particular, warn if any particular operation takes longer than
some threshold, e.g. 1.0 second.
2021-08-26 11:50:24 -07:00
Alex Stokes 1f34ef9b56
modularize the random deposit helpers 2021-08-26 10:50:50 -07:00
Danny Ryan 17fece57b6
Merge pull request #2560 from ralexstokes/add-broad-spectrum-spec-tests
Broad-spectrum randomized block tests
2021-08-25 20:34:47 -06:00
Alex Stokes 874ea80cb8
use more precise name for altair block randomizer and re-gen tests 2021-08-25 17:18:02 -07:00
Alex Stokes 5b0d2627c3
apply pr feedback on randrange 2021-08-25 15:13:20 -07:00
Alex Stokes c206a2772a
update docs via PR feedback 2021-08-25 14:46:17 -07:00
Alex Stokes e2dc9f9ec2
update generation of randomized scenarios for more variability 2021-08-25 14:42:41 -07:00
Alex Stokes 047ff5b099
unify visibility on names for doc purposes 2021-08-25 14:16:39 -07:00
Alex Stokes 961953ac15
update parameter name 2021-08-25 13:10:41 -07:00
Alex Stokes 377797fd0d
code layout change 2021-08-25 11:20:17 -07:00
Alex Stokes 14518d4d64
update name of utility module to be more specific 2021-08-25 11:15:59 -07:00
Alex Stokes 0da1fe947d
clarify how the random block generator works 2021-08-25 11:09:35 -07:00
Alex Stokes e72edf07f9
consolidate call to `max` into `randrange` 2021-08-25 10:40:15 -07:00
Alex Stokes 4d4f4e89f4
be specific about which slot we want a sync committee root for 2021-08-25 10:38:01 -07:00
Alex Stokes 7874e8db88
clean up unnecessary comment 2021-08-24 16:40:16 -07:00
Alex Stokes 33c96127da
fix bug with random sync aggregate helper 2021-08-24 16:40:15 -07:00
Alex Stokes f7c0dc36be
skip running heavy randomized tests in CI 2021-08-24 15:05:07 -07:00
Alex Stokes 933c1323dd
lint updates 2021-08-24 14:46:31 -07:00
Alex Stokes 8a32bef58b
update skipped test count when test already exists 2021-08-24 13:19:31 -07:00
Alex Stokes 8e5a34c38a
adjust helper to account for additional slashings 2021-08-24 12:46:03 -07:00
Alex Stokes d1f3ec59af
ensure at least 1 operation when making random block 2021-08-24 11:56:19 -07:00
Alex Stokes c27e4d140e
move to code-gen under new test generator 2021-08-24 11:56:15 -07:00
Alex Stokes 505bdba8f8
fix imports 2021-08-23 12:49:36 -07:00
Alex Stokes d037c6662a
lint fix 2021-08-23 12:40:42 -07:00
Alex Stokes cc04da8e79
add randomized block tests for altair 2021-08-23 12:30:05 -07:00
Alex Stokes 58c6f33e85
ensure at least one proposer slashing 2021-08-23 12:15:22 -07:00
Alex Stokes 7b9d70fcec
allow test customization (for future forks) 2021-08-23 12:15:09 -07:00
Alex Stokes ff6863e689
fix bug with deposit generation code 2021-08-23 12:01:05 -07:00
Alex Stokes 31d46247ce
file re-org to re-use for later forks 2021-08-23 11:48:22 -07:00
Alex Stokes 20e3934fa2
do not exit validators who are already exited 2021-08-23 11:46:20 -07:00
Alex Stokes 16423880aa
add multiple blocks to each test 2021-08-23 11:00:33 -07:00
Alex Stokes 6316c7d364
ensure at least 1 attester slashing 2021-08-23 10:29:39 -07:00
Alex Stokes 361d97c54b
fix bug with proposer search 2021-08-23 10:13:19 -07:00
Hsiao-Wei Wang 15a6c48a46
Merge pull request #2518 from ethereum/fix-store-justified-checkpoint
Fix fork choice store checkpoints inconsistency issue
2021-08-23 23:41:11 +08:00
Hsiao-Wei Wang 838c263c4a
Apply suggestions from code review
Co-authored-by: Aditya Asgaonkar <adiasg@users.noreply.github.com>
2021-08-23 23:21:15 +08:00
Alex Stokes 2db01ba6d0
use fixed seed for block randomization 2021-08-22 13:55:29 -07:00
Alex Stokes 253f927c0a
fix randomness seed across randomized test 2021-08-22 13:55:29 -07:00
Alex Stokes 0c401a3e2a
filter for exit eligibility in helper 2021-08-22 13:55:28 -07:00
Alex Stokes ce471b702e
code org 2021-08-22 10:54:00 -07:00
Alex Stokes f76a29c1f9
patch state to not be leaking at start 2021-08-22 10:52:22 -07:00
Alex Stokes 993997aca5
ensure no leak on "normal" transitions 2021-08-22 10:19:21 -07:00
Alex Stokes 270814e20f
fix bug with `_epochs_until_leak` helper 2021-08-22 09:59:28 -07:00
Alex Stokes 820affd2aa
extend validator set so randomized helpers have more room for operation 2021-08-22 09:58:54 -07:00
Alex Stokes 513f57f74c
formatting 2021-08-22 09:56:03 -07:00
Alex Stokes b17ada2d67
only target phase 0 and altair for now 2021-08-21 18:24:26 -07:00
Alex Stokes 9e6a51ef70
update fn name for test id 2021-08-21 18:10:27 -07:00
Alex Stokes fde71cbe74
add warnings if empty block 2021-08-21 18:10:27 -07:00
Alex Stokes 7bc2f9547a
skip validators when building a random block if they are slashed 2021-08-21 17:52:26 -07:00
Alex Stokes 86643d805a
adjust some helper code for randomized environment
1. randomized block helpers assume most of the validator set is not slashed
2. `randomize_state` helper slashes or exits ~1/2 of the validator set

So, adjust helpers to be less aggresive with exits and slashings and
to skip elements as needed if we happen to make something by
a validator who has been slashed.
2021-08-21 17:36:50 -07:00
Alex Stokes 6da2c7a916
ensure all validators in randomized test are active 2021-08-21 16:59:54 -07:00
Alex Stokes 5094193f9a
formatting 2021-08-21 16:59:02 -07:00
Alex Stokes 619e828898
Progress on block test gen 2021-08-21 15:48:29 -07:00
Alex Stokes 4420d13816
add helper to check existence of many validator types 2021-08-21 15:48:29 -07:00
Alex Stokes 00df808f59
expose functionality to make random block 2021-08-21 15:48:28 -07:00
Danny Ryan 29c7184b7b
bump VERSION.txt to 1.1.0-beta.3 2021-08-20 08:42:22 -06:00
Danny Ryan f30e7c8ef3
Merge pull request #2559 from ralexstokes/update-full-random-tests-to-all-phases
Extend randomized block tests to all phases
2021-08-20 08:20:55 -06:00
Danny Ryan 2c632c0087
Merge pull request #2555 from ethereum/great-renaming
modify docs for great renaming
2021-08-20 08:14:49 -06:00
Alex Stokes eadefa274d
WIP: broad-spectrum randomized block tests 2021-08-19 12:54:21 -06:00