Commit Graph

259 Commits

Author SHA1 Message Date
Hsiao-Wei Wang 43a1617ffa
Ensure that the given PKs are valid PKs + fix typos 2021-08-04 21:25:37 +08:00
Hsiao-Wei Wang d8d0686400
Add tests for the Altair BLS helpers 2021-08-04 02:07:57 +08:00
Hsiao-Wei Wang fb2465db45
Rework `on_block` unit tests 2021-06-19 02:03:33 +08:00
Hsiao-Wei Wang 42eae81013
WIP. Rework on_block tests 2021-06-15 21:52:25 +08:00
Danny Ryan 09b6fb0e64
ensure consistency about sync committees vs aggregates in naming throughout 2021-06-07 16:17:46 -06:00
protolambda 4c02dbadd0
enable inactivity updates test generator output, implement new participation flag updates testing 2021-05-22 18:43:29 +02:00
protolambda e50d8d4391
Merge branch 'dev' into config-rework 2021-05-20 23:31:49 +02:00
Alex Stokes a7346ae384
Add Altair fork tests to test generators 2021-05-18 18:05:07 -07:00
protolambda 90c4a7599b
fix lint 2021-05-18 20:53:04 +02:00
protolambda 925f0508ce
test generator fixes 2021-05-18 20:13:19 +02:00
protolambda fb82472b46
update test generators 2021-05-18 18:48:58 +02:00
Alex Stokes b71aa3fb56
add `transition` spec test format 2021-05-11 10:14:23 -07:00
protolambda 8ac59b7317
fix old ssz-static todo comment 2021-05-05 22:38:16 +02:00
protolambda f37f9a367d
include merge in generators 2021-05-05 00:15:15 +02:00
protolambda 5e8304b4c6
Merge SSZ-static tests 2021-04-20 17:26:11 +02:00
Hsiao-Wei Wang cd43d64809
Move constants to `eth2spec.test.helpers.constants` 2021-04-12 22:34:00 +08:00
protolambda d28cac0e8f
clean up test phase 1 testgen references 2021-03-29 15:38:43 +02:00
Hsiao-Wei Wang 5d9f4b072c
Update genesis testgen and format 2021-03-16 00:38:30 +08:00
Hsiao-Wei Wang 9254f1bf8c
Fix conflicts 2021-03-12 00:39:38 +08:00
Hsiao-Wei Wang 216bbb0a46
Merge branch 'dev' into fork-choice-test-vectors 2021-03-12 00:34:23 +08:00
Hsiao-Wei Wang 78a4897418
Add fork choice rule format doc 2021-03-12 00:33:04 +08:00
Hsiao-Wei Wang 8e303b60b9
Fix generator to ssz_snappy mode 2021-03-12 00:06:52 +08:00
Hsiao-Wei Wang 96e29841a7
Merge branch 'dev' into fork-choice-test-vectors 2021-03-11 23:45:54 +08:00
Hsiao-Wei Wang b44e576e95
LIGHTCLIENT_PATCH/HF1 -> ALTAIR 2021-03-11 21:32:00 +08:00
Danny Ryan 4569ddea5d
add missing sanity requirements.txt for generators 2021-03-10 18:49:50 -07:00
Danny Ryan c36106e630
put snappy in 'generator' extra dep build and use for generator builds 2021-03-10 17:18:11 -07:00
Danny Ryan e792c27c91
@hwwhww review
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2021-03-10 12:27:50 -07:00
Danny Ryan 338be1f636
clean up fork gens 2021-03-09 16:27:06 -07:00
Hsiao-Wei Wang f71a3c6b22
Generate with mainnet config 2021-03-09 21:34:45 +08:00
Hsiao-Wei Wang 5e864af67a
Reload Altair spec 2021-03-09 21:32:37 +08:00
Hsiao-Wei Wang f97ea9e172
Generate basic tests. Still having problem with generating `with_custom_state` tests 2021-03-09 20:55:39 +08:00
Danny Ryan 6c406753f1
working through test gens 2021-03-08 19:11:31 -07:00
Hsiao-Wei Wang 63d3dae7a9
Merge pull request #2210 from mpetrunic/mpetrunic/lc-ssz-static
Disable phase1/enable lightclient ssz static types tests generators
2021-02-23 22:26:13 +08:00
Marin Petrunić d28ec2fc75
fix lint 2021-02-23 14:46:53 +01:00
Hsiao-Wei Wang 993bcdf082
Use constants 2021-02-23 14:25:13 +01:00
Marin Petrunić 1d4f467516
disable phase1/enable lightclient ssz static types test 2021-02-23 13:30:26 +01:00
Marin Petrunić e63754e629
change how generator targets are invoked 2021-02-23 13:23:32 +01:00
Marin Petrunić 9f634dc6f6
Update test generation docs 2021-02-23 09:56:38 +01:00
Hsiao-Wei Wang f6b8171350
Update shuffling generator requirements.txt 2021-02-22 19:45:10 +08:00
Hsiao-Wei Wang de4cad5d35
Update docs 2021-02-22 18:40:04 +08:00
Hsiao-Wei Wang 27507fb3e2
Add `get_head` test vectors 2021-02-19 13:08:35 +08:00
Hsiao-Wei Wang 9cc8567d68
Move `gen_helpers` into a module of `eth2spec` package 2021-02-18 15:17:47 +08:00
Hsiao-Wei Wang c7d975981c
Refactor state tests generators 2021-02-15 22:48:34 +08:00
Hsiao-Wei Wang 600a4daddf
Turn off phase1 testgen and turn on lightclient_patch testgen 2021-02-15 22:29:27 +08:00
Hsiao-Wei Wang 1b00c10ed3
Apply @michaelsproul's feedback 2021-01-27 14:47:52 +08:00
Hsiao-Wei Wang 15e48f712b
Fix Phase 1 epoch_processing and fix epoch_processing testgen 2021-01-27 03:02:12 +08:00
Hsiao-Wei Wang 844c879f1c
Bump `py_ecc` and `milagro_bls_binding` (#2169)
* Bump py_ecc to v5.1.0 and milagro_bls_binding to v1.6.2

* python3.8 -> python3 for py39 compatibility

* fix

* Try python:3.9

* Revert: using Python3.8 in CI now
2021-01-05 21:00:52 +08:00
Danny Ryan 17829836f6
Merge pull request #2099 from ethereum/fix_bls_testgen_typo
Fix BLS testgen typo
2020-10-13 08:08:20 -06:00
Hsiao-Wei Wang d6ccbd515d
Fix typo, `messages` -> `message` 2020-10-13 11:39:10 +08:00
Hsiao-Wei Wang 00a19e583e
Bump milagro_bls_binding to 1.5.0 2020-10-06 16:17:29 +08:00
Hsiao-Wei Wang 4d3ac72473
Bump milagro_bls_binding to `1.4.0`, handle the exception cases 2020-10-05 21:55:49 +08:00
Hsiao-Wei Wang 4613c6b333
Bump py_ecc to 5.0.0 2020-10-01 00:44:47 +08:00
Hsiao-Wei Wang b43f62de0e
Fix encoding 2020-09-25 15:05:10 +08:00
Hsiao-Wei Wang ad4ad2d8b4
Bump IETF BLS spec version draft 03 -> draft 04 2020-09-25 15:01:41 +08:00
Hsiao-Wei Wang bdbd2aae37
Aggregate G2 point at infinity 2020-09-25 15:01:41 +08:00
Hsiao-Wei Wang 19d6c8336a
Add IETF BLS draft 04 edge cases test vectors 2020-09-25 15:01:38 +08:00
Danny Ryan 4c9f5eee71
re-enable mainnet ssz_static tests 2020-09-21 13:40:14 -06:00
Hsiao-Wei Wang 20bd00cef0
Add `make lint_generators` linter check for test generators 2020-09-15 11:19:50 +08:00
Hsiao-Wei Wang c0c2461d2f
Remove redundant keys and use Dict for `phase_0_mods`, `phase_1_mods` instead of List 2020-09-15 11:13:33 +08:00
Hsiao-Wei Wang 916ae9e309
Enable more rewards and finality tests 2020-09-04 21:50:27 +08:00
Hsiao-Wei Wang 74a2a1c0d4
Enable all tests 2020-09-04 02:40:36 +08:00
Hsiao-Wei Wang 6289664260
Update testing context
1. Add `with_configs` decorator to assign available configs
2. Add `only_full_crosslink` decorator to detect if the configuation can
do full crosslinking
3. Add `context.is_pytest` flag: True if calling via pytest. False if
calling from test generator.
2020-08-12 21:50:14 +08:00
Hsiao-Wei Wang 3e5cada5de
Merge branch 'dev' into testgenphase1 2020-08-11 15:24:43 +08:00
protolambda e9d887be4d
Enable BLS in finality tests, use Milagro 2020-07-24 01:19:14 +02:00
Hsiao-Wei Wang de15960185
Add finality tests to test vectors 2020-07-24 04:23:26 +08:00
Hsiao-Wei Wang bdde2e5889
Reorg test dir 2020-07-24 03:54:45 +08:00
Hsiao-Wei Wang 302607eac5
Rename `aggregate_na_pubkeys` to `aggregate_na_signatures` and add comments 2020-07-21 21:10:27 +08:00
protolambda 3c374b1e16
Update test gen to output phase 1 test vectors. Mainnet disabled for now. 2020-07-07 21:26:35 +02:00
protolambda 6b1d4839d8
update block operations generator 2020-07-07 20:17:36 +02:00
Hsiao-Wei Wang ec25f78632
Update path 2020-06-18 14:55:50 +08:00
Hsiao-Wei Wang cceeab2657
Combine `process_crosslinks` and `verify_empty_shard_transition` into `process_shard_transitions` 2020-05-30 03:13:20 +08:00
Hsiao-Wei Wang f72d14a747
Bump `milagro_bls_binding` to 1.2.0
Also verify it in BLS test generator
2020-05-21 01:37:12 +08:00
Danny Ryan 5c564f4d7c
clean up reards generator 2020-05-18 20:06:36 -06:00
Danny Ryan 8060505743
refactor rewards/penalties tests to use a single structure 2020-05-18 16:00:59 -06:00
Danny Ryan 4a86c39712
Merge pull request #1799 from ethereum/bls_v2
Update to IETF BLS draft-irtf-cfrg-bls-signature-02 + draft-irtf-cfrg-hash-to-curve-07
2020-05-18 07:35:49 -06:00
Hsiao-Wei Wang fd3cce0d2c
Update README 2020-05-15 23:38:25 +08:00
Hsiao-Wei Wang d07e594f92
Add `Aggregate()` case 2020-05-15 23:27:35 +08:00
Hsiao-Wei Wang 82073a4a83
Fix typo 2020-05-15 03:05:23 +08:00
Hsiao-Wei Wang ea99f0ab10
Fix typo
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2020-05-15 03:03:47 +08:00
Hsiao-Wei Wang 9a2559857c
Fix typo and remove unused variable 2020-05-15 01:18:48 +08:00
Hsiao-Wei Wang d27f2350a2
Update BLS test suite to BLS standard draft v2 format
1. Make sure that BLS -Verify APIs would only return `True` or `False` , no exceptions.
2. Use `eth2spec.utils.bls` instead of py_ecc for test generator
3. Add assertions in test generator
4. Add some special test cases for the -Verify APIs
5. Clean up the test format documents
2020-05-15 00:55:06 +08:00
Hsiao-Wei Wang ed194de26b
Bump py_ecc to v4.0.0 (IETF BLS v2 + H2C v7) 2020-05-13 02:27:51 +08:00
Hsiao-Wei Wang 78d83b6c7d
Bump py_ecc to v3.0.0 (IETF BLS v2 + H2C v6) 2020-05-12 12:21:35 +08:00
Hsiao-Wei Wang cdd0ed0f7b
Update to IETF BLS draft-irtf-cfrg-bls-signature-02 2020-05-09 11:48:48 +08:00
Danny Ryan 8f569a8ddc
add inactivity penalty deltas tests 2020-05-04 20:58:42 -06:00
Danny Ryan eda249957e
basic generators work 2020-05-04 13:20:32 -06:00
Hsiao-Wei Wang fa66475da4
Move `sanity` to under `phase_0` 2020-04-29 00:04:44 +08:00
Danny Ryan 2129f8a281
fix requirements.txt for bls gens 2020-04-24 16:00:06 -06:00
Hsiao-Wei Wang 523315bf4f
Use phase name constants for the fork names in test generators 2020-04-02 15:23:20 +08:00
Martin Lundfall 68cc4c4847 Fix test doc links 2020-03-27 14:02:56 +01:00
protolambda 22620bfe5d
Fix generic SSZ tests, update remerkleable with small bugfix 2020-03-11 23:18:06 +01:00
Danny Ryan 331502919f Merge pull request #1610 from ethereum/bls-nitpicks
Bls nitpicks
2020-02-08 18:15:15 -06:00
Danny Ryan 0a429a479b
'full_name' -> 'indentifier' for bls generators 2020-02-08 17:04:19 -07:00
Danny Ryan b57b4f5e0d
move desription to human readable name 2020-02-06 13:02:16 -06:00
Chih Cheng Liang f5723cdd93
fix confusing directory name 2020-02-06 12:53:07 -06:00
protolambda cd4e99f10e
Merge branch 'dev' into pkg-the-pyspec 2020-01-31 12:04:20 +01:00
Ben Edgington b67aeee855
Fix fast_aggregate_verify BLS tests 2020-01-27 17:39:50 -07:00
protolambda 7848500ea9
spec packaging; implement review suggestions from hww 2020-01-25 22:10:03 +01:00
protolambda 675d404c38
Package eth2spec for tooling and experimentation
See tests/core/pyspec/README.md for usage description.

This commit:
- refactors config loading to be part of the pyspec package
- updates requirements and main files to use new config loading
- cleans up the build script
- converts the build script to a distutil command
- runs pyspec build as part of build package command
- provides pyspecdev command to get editable spec python files
2020-01-25 01:57:11 +01:00
Danny Ryan 161c0a8bc1
remove unused code from bls generator file 2020-01-23 11:35:59 -07:00
Danny Ryan ec00f6d9ea
Merge pull request #1575 from ethereum/broken-gens
Fix broken test generators
2020-01-23 10:36:53 -07:00
Danny Ryan 67763ae0e0
PR feedback 2020-01-23 10:32:12 -07:00
Danny Ryan 3b80e12fc3
only expose BLS tests for the used APIs 2020-01-22 17:56:50 -07:00
Danny Ryan dd9325d9fa
G2Basic to G2ProofOfPossession for private_to_public_key bls test generator
Co-Authored-By: Carl Beekhuizen <carl@ethereum.org>
2020-01-22 11:32:25 -07:00
Kirk Baird 601701241c
Update link
Signed-off-by: Kirk Baird <baird.k@outlook.com>
2020-01-22 11:04:45 +11:00
Danny Ryan f012844493
Add additional bls tests for IETF standards to bls gens 2020-01-21 11:19:31 -07:00
Danny Ryan 2a0f680769
fix ssz_generic test generator 2020-01-16 11:15:44 -07:00
Danny Ryan 6e73df0692
fix broken bls generators 2020-01-16 11:09:58 -07:00
Danny Ryan 676e216beb
reorg specs by fork and move ssz out to own folder. make all of the build and link changes to support move 2020-01-10 11:55:13 -07:00