Hsiao-Wei Wang
494cefcda6
Fix sanity block tests
2022-11-03 16:27:24 -05:00
Hsiao-Wei Wang
0b1f32ec25
Fix capella/block_processing tests
2022-11-03 16:08:05 -05:00
Potuz
a09d617737
right ret
2022-11-03 15:07:03 -03:00
Hsiao-Wei Wang
ad36548480
Fix auto-rebase errors
2022-11-03 11:46:07 -05:00
Potuz
f506087af5
rebase on top of develop
2022-11-03 11:42:30 -05:00
Hsiao-Wei Wang
7c016f3236
Add testing KZG trusted setups generator tool and load the file during building pyspec
2022-11-03 10:17:42 -05:00
George Kadianakis
86e15764ad
EIP4844: Update cryptography API ( #3038 )
...
This commit changes the public API of the KZG library to the following high-level API:
```
- verify_kzg_proof()
- compute_aggregate_kzg_proof()
- verify_aggregate_kzg_proof()
- blob_to_kzg_commitment()
```
compared to the previous much more low-level API:
```
- compute_powers()
- matrix_lincomb()
- lincomb()
- bytes_to_bls_field()
- evaluate_polynomial_in_evaluation_form()
- verify_kzg_proof()
- compute_kzg_proof()
```
This means that all the cryptographic logic (including Fiat-Shamir) is now isolated and hidden in the KZG library and the `validator.md` file ends up being significantly simplified, only calling high-level KZG functions.
Some additional things that this commit does:
- Moves all EIP4844 cryptography into polynomial-commitments.md
- Improves the Fiat-Shamir stack by removing the need for SSZ and by introducing simple domain separators
Co-authored-by: Kevaundray Wedderburn <kevtheappdev@gmail.com>
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
Co-authored-by: Dankrad Feist <mail@dankradfeist.de>
2022-11-03 17:01:32 +02:00
Etan Kissling
332ad4cb57
Move `is_post_xxx` functions to new module
...
Moving the `is_post_xxx` functions to a separate module allows `genesis`
to also use them (cyclic import from `context` prevented this before).
This allows removing `FORKS_BEFORE_ALTAIR` and `FORKS_BEFORE_BELLATRIX`
constants and adding a more general `is_post_fork` function that needs
less maintenance. This then allows definition of `with_all_phases_from`
to streamline the implementation of the `with_xxx_and_later` decorators.
2022-10-30 12:50:56 +01:00
Etan Kissling
5c66300171
Use `suite_name` instead of `meta.yaml` for SSZ type
2022-10-28 20:32:33 +02:00
Alex Stokes
bab01d6e99
Merge pull request #3067 from etan-status/lc-synctestroot
...
Rename LC test check from `root` to `beacon_root`
2022-10-28 08:55:27 -06:00
Alex Stokes
72b6abd545
Merge pull request #3064 from etan-status/lc-periodatepoch
...
Consistently use `compute_sync_committee_period_at_slot`
2022-10-28 08:49:58 -06:00
Etan Kissling
4fc80765ad
Also update test logic accordingly
2022-10-27 22:08:24 +02:00
Etan Kissling
990866dd9f
Rename LC test check from `root` to `beacon_root`
...
Future light client tests will also incorporate execution payload data.
To avoid confusion, rename the current `root` check to `beacon_root`.
Doing this now, as #3066 already requires LC test runners to update.
2022-10-27 22:06:11 +02:00
Etan Kissling
cdaf7e84dd
Allow extending LC merkle proof tests
...
Currently, `test_single_merkle_proof` only supports `BeaconState` tests.
For future tests, different object classes are desirable. Update format
to allow testing other objects as well.
2022-10-27 21:59:48 +02:00
Etan Kissling
14b3463f2c
Consistent variable name in LC test
...
In light client tests, a variable is named `finality_header` but
everywhere else it is called `finalized_header`. Rename for consistency.
2022-10-27 00:01:22 +02:00
Hsiao-Wei Wang
60187e5dc4
Add `test_process_withdrawals` no-op test
2022-10-26 15:19:15 -05:00
Hsiao-Wei Wang
e460005aff
Add tests for no-op functions
2022-10-26 15:12:05 -05:00
Hsiao-Wei Wang
317209591d
Make pyspec disable withdrawal-functions in EIP4844
2022-10-26 15:06:39 -05:00
Hsiao-Wei Wang
6c7922df67
Fix bls test case file name
2022-10-26 11:03:16 -05:00
Hsiao-Wei Wang
af8c5bf532
Merge pull request #3046 from terencechain/couple-block-sidecar
...
EIP4844: couple beacon block and blob sidecar for p2p
2022-10-26 23:51:23 +08:00
Hsiao-Wei Wang
3c7c3a9c97
bump VERSION.txt to 1.3.0-alpha.0 ( #3056 )
2022-10-25 11:45:04 +08:00
inphi
6d270cdc52
Add CAPELLA_FORK_EPOCH overrides
2022-10-24 17:21:36 -04:00
inphi
459310f744
Fix test_process_execution_payload
2022-10-24 16:25:50 -04:00
Hsiao-Wei Wang
9844ea1f30
Merge pull request #3040 from ethereum/capella-test-vectors
...
Capella test vectors
2022-10-23 06:44:03 +08:00
terence tsao
e2d0a4fa9a
Fix ToC and test
2022-10-22 08:36:46 -07:00
Hsiao-Wei Wang
f48d6b324d
Update test formats
2022-10-20 22:27:49 -05:00
Hsiao-Wei Wang
0e2c3d89e0
Fill `bls_to_execution_changes` field in Capella random tests
2022-10-20 22:22:11 -05:00
Hsiao-Wei Wang
d013379628
Ensure `validator_index` is in validator set
2022-10-19 10:27:01 -05:00
Hsiao-Wei Wang
53b63cedc5
Merge branch 'dev' into pr3050
2022-10-19 10:21:32 -05:00
Jim McDonald
0345b2284a
Add validator_index to Withdrawal.
2022-10-18 15:35:06 +01:00
Hsiao-Wei Wang
940fc20758
Apply suggestions from code review
...
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2022-10-17 23:21:15 +08:00
Hsiao-Wei Wang
b90436c988
Fix capella random & fork
2022-10-14 23:42:42 -05:00
Hsiao-Wei Wang
03ced9c263
Add Capella tests
2022-10-14 23:40:45 -05:00
Hsiao-Wei Wang
6181035d5d
Fix typo ( #3039 )
2022-10-15 12:40:17 +08:00
Hsiao-Wei Wang
9717daa325
Merge branch 'dev' into more-withdrawals-tests
2022-10-10 10:07:38 -05:00
protolambda
2d08dc51c5
eip-4844: test tx_peek_blob_versioned_hashes
2022-10-06 18:13:35 +02:00
protolambda
c7d88b7ce5
eip4844: update test type definition
2022-10-06 18:13:35 +02:00
Danny Ryan
491f14c76f
some capella sanity tests
2022-10-05 10:40:58 -06:00
Hsiao-Wei Wang
44424c4080
Bump dep packages version and fix lint issues
2022-09-28 12:38:21 +08:00
Danny Ryan
0fdab6130e
Merge pull request #3010 from jtraglia/partial-withdrawal-balance-tests
...
Add partial withdrawal balance tests
2022-09-26 14:35:28 -06:00
Danny Ryan
eeebd42a95
Merge pull request #2998 from ethereum/remove-withdrawn-epoch
...
remove withdrawn_epoch
2022-09-26 14:30:25 -06:00
Justin Traglia
fdb5c7dcf3
Add partial withdrawal balance tests
2022-09-22 15:19:22 -05:00
Hsiao-Wei Wang
73c96b238a
Merge pull request #3001 from ethereum/bls-output-null
...
Update BLS test format: output `null` for invalid case
2022-09-22 14:36:31 +08:00
Danny Ryan
bfca7f9a96
Apply suggestions from code review
...
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2022-09-21 07:50:31 -06:00
Hsiao-Wei Wang
93b7ae299d
Update BLS test format: output `null` for invalid case
2022-09-21 01:24:22 +08:00
Danny Ryan
91ea9e6959
review suggestion from @hwwhww
...
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2022-09-20 08:22:26 -06:00
Hsiao-Wei Wang
0f8e12e929
Add a redirection README.md for the sync tests
2022-09-20 18:13:15 +08:00
Danny Ryan
70f90c5296
rmove withdrawn_epoch
2022-09-19 11:39:46 -06:00
Danny Ryan
63d284a85c
bump version to v1.2.0
2022-09-16 09:55:36 -06:00
Danny Ryan
770a603af9
Merge pull request #2989 from ethereum/deposit-zero-pk
...
Add `test_process_deposit::test_key_validate_invalid`
2022-09-13 14:05:13 -06:00
Hsiao-Wei Wang
4d2cfff2d6
Add `test_key_validate_invalid_decompression`
2022-09-12 22:59:29 +08:00
Hsiao-Wei Wang
e4407c64e3
Add `test_process_deposit::test_key_validate_invalid`
2022-09-12 22:31:49 +08:00
Hsiao-Wei Wang
f2c26560d5
Merge pull request #2982 from ethereum/optimistic-sync-tests
...
Add optimistic sync tests
2022-09-12 18:06:40 +08:00
Hsiao-Wei Wang
e639a3b4f9
Merge branch 'dev' into pr2965
2022-09-08 22:54:07 +08:00
Hsiao-Wei Wang
2e73091258
Add `get_valid_flag_value` helper to determine the `valid` flag value
2022-09-08 22:42:39 +08:00
Hsiao-Wei Wang
0f8b5ae6bd
Apply PR feedback from @michaelsproul
2022-09-02 20:45:51 +08:00
Hsiao-Wei Wang
ac717b106a
Address PR feedback from @mkalinin
2022-08-31 22:02:47 +08:00
Mikhail Kalinin
b67fb5b049
Update tests/formats/fork_choice/README.md
...
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2022-08-24 23:29:59 +06:00
Hsiao-Wei Wang
f8d92c3bd8
Add basic test case
2022-08-24 23:20:31 +08:00
Hsiao-Wei Wang
5db5b87e5e
Add bellatrix deposit and voluntary_exit tests
2022-08-19 01:52:34 +08:00
Danny Ryan
efc4d45bbc
bump VERSION.txt
2022-08-18 11:35:39 -06:00
Hsiao-Wei Wang
bafb5870c1
Update tests/core/pyspec/eth2spec/test/bellatrix/block_processing/test_process_deposit.py
...
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2022-08-19 01:20:53 +08:00
Hsiao-Wei Wang
6c00b48dca
PR feedback from @djrtwo: add `is_before_fork_epoch` and more param combinations
2022-08-19 00:29:56 +08:00
Hsiao-Wei Wang
806a6ad414
Apply suggestions from code review
...
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2022-08-19 00:03:58 +08:00
Hsiao-Wei Wang
b3ef9b2b3e
Add invalid fork version tests
2022-08-18 22:49:02 +08:00
Hsiao-Wei Wang
d133dae471
Fix codespell errors ( #2975 )
2022-08-18 22:08:44 +08:00
Danny Ryan
ff6181f8f5
Merge branch 'master' into dev
2022-08-16 09:04:43 -06:00
Hsiao-Wei Wang
d95c45523f
Fix path: the bellatrix-new tests have been moved to altair file
2022-08-16 14:29:56 +08:00
Danny Ryan
91b584eb21
bump VERSION.txt ( #2971 )
2022-08-15 09:11:41 -06:00
Danny Ryan
ccc40e1982
a few more bellatrix tests ( #2962 )
...
* Do not overload index with WithdrawalIndex and ValidatorIndex
* a few more bellatrix tests
* use function from other PR
* fix tests
* Update tests/core/pyspec/eth2spec/test/bellatrix/transition/test_transition.py
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
* refactor to reuse bellatrix transitio ntests for all transitions
Co-authored-by: Potuz <potuz@prysmaticlabs.com>
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2022-08-15 07:49:53 -06:00
Danny Ryan
3d785dad7a
pr feedback from @hwwhww
2022-08-03 08:24:32 -06:00
Mikhail Kalinin
14d4f44c11
Extend fork_choice test format with on_payload_info
2022-08-03 18:19:39 +06:00
Danny Ryan
7e360240f9
more execution payload tests and cleanup old ones
2022-08-01 11:42:38 -06:00
Danny Ryan
981b05afb0
Merge pull request #2950 from ethereum/mv-merkle-tests
...
Move `merkle/single_proof` tests to `light_client/single_merkle_proof`
2022-07-26 12:46:51 -04:00
Alex Stokes
7e54cd09b0
Update README.md
2022-07-22 13:15:46 -06:00
Hsiao-Wei Wang
176a5d227a
Move `merkle/single_proof` tests to `light_client/single_merkle_proof`
2022-07-22 21:34:09 +08:00
Etan Kissling
8643e28f12
`try_...` --> `process_...`
2022-07-22 11:49:07 +02:00
Etan Kissling
f9d866eb28
Manually trigger `LightClientStore` force updates
...
Replaces `process_slot_for_light_client_store` which force updates the
`LightClientStore` automatically based on `finalized_header` age with
`try_light_client_store_force_update` which may be manually called based
on use case dependent heuristics if light client sync appears stuck.
Not all use cases share the same risk profile.
2022-07-21 16:06:46 +02:00
Hsiao-Wei Wang
1d2ef9f8cb
Merge pull request #2938 from etan-status/lc-testsuite
...
Add functions for deriving light client data
2022-07-20 14:47:05 +08:00
Hsiao-Wei Wang
0f31fcdee4
[Refactor] remove useless `spec` param from `compute_committee_indices`
2022-07-19 22:17:35 +08:00
Etan Kissling
0941114acf
Merge branch 'dev' into lc-testsuite
2022-07-18 18:19:07 +02:00
Hsiao-Wei Wang
a1546fdf4f
Merge branch 'dev' into fix-capella-genesis
2022-07-18 14:48:02 +08:00
Etan Kissling
c9f0927d8b
Merge branch 'dev' into lc-testsuite
2022-07-17 06:34:52 +02:00
Etan Kissling
261c5317e1
Remove genesis check now that Capella is fixed
...
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2022-07-15 21:40:13 +02:00
Etan Kissling
63816debcc
Merge commit '9c798806355f67a32704a8cd5a98d90deccb8f69' into lc-testsuite
2022-07-15 21:38:18 +02:00
Etan Kissling
9d41c2306f
Align format of override `config.yaml` with base cfg
2022-07-15 21:37:18 +02:00
Etan Kissling
30d635259b
Move test files to `light_client` subdir
2022-07-15 21:36:26 +02:00
Hsiao-Wei Wang
ec7c7c8589
Remove leftover print
2022-07-16 01:41:56 +08:00
Hsiao-Wei Wang
185f51ec0e
Merge branch 'dev' into pr2937
2022-07-16 01:40:39 +08:00
Hsiao-Wei Wang
5356fee282
Fix `test_override_config_fork_epoch`
2022-07-16 01:28:19 +08:00
Hsiao-Wei Wang
400e1e54c1
Fix EIP4844 `create_genesis_state`, `EIP4844_FORK_VERSION`, and `config_fork_epoch_overrides`
...
`config_fork_epoch_overrides`: since Capella and EIP4844 are in parallel, need to check if the field exists
Update `compute_fork_version`
2022-07-16 01:13:25 +08:00
Hsiao-Wei Wang
808f9c7f7f
Use `validate_*` for the valdiation functions that return `None`
2022-07-16 00:54:01 +08:00
Danny Ryan
d49c98c7aa
Merge pull request #2926 from ralexstokes/spec-diagnostis
...
Add summary diagnostics to spec test gen
2022-07-15 09:01:32 -06:00
Hsiao-Wei Wang
9c79880635
Fix genesis testing tool and add Capella version `initialize_beacon_state_from_eth1` helper
2022-07-15 22:22:19 +08:00
Etan Kissling
de15971ae8
Cleanups
2022-07-15 13:45:34 +02:00
Etan Kissling
3c5d347cdc
Emit checks after each individual test step
...
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2022-07-15 13:13:33 +02:00
Etan Kissling
73279f8382
Explain why the tests check for Altair twice
2022-07-15 12:24:40 +02:00
Etan Kissling
88a69512b2
`finalize_test` --> `finish_test`
2022-07-15 12:04:56 +02:00
Etan Kissling
95c07575b1
Hide `build_proof` and `get_backing` from spec
2022-07-15 11:54:47 +02:00
Etan Kissling
86fe93ca96
Add functions for deriving light client data
...
Adds `create_light_client_bootstrap` and `create_light_client_update`
functions as a reference implementation for serving light client data.
This also enables a new test harness to verify that light client data
gets applied to a `LightClientStore` as expected.
2022-07-14 09:36:09 +02:00