Commit Graph

191 Commits

Author SHA1 Message Date
protolambda bd8c978965
move merkle tests, output proof.yaml, update format 2021-09-27 18:07:59 +02:00
Etan Kissling e7317e2283
merkle proof test generator
Building merkle proofs is required functionality for implementing light
client sync. Although the spec currently only defines a function to
verify merkle proofs (`is_valid_merkle_branch`) there are still a few
PySpec unit tests that produce merkle proofs. This patch adds a new
generator to extract test vectors from those static unit tests, so that
light client implementations can validate their merkle proof logic.
2021-09-27 17:34:51 +02:00
Dmitrii Shmatko 8ae078a4f5 Merge branch 'dev' into tests/merge 2021-09-23 22:24:33 +03:00
Dmitrii Shmatko b1aa227983 Added `on_merge_block` client tests 2021-09-23 22:22:34 +03:00
Etan Kissling 41c12bfcb2
improve grammar in BLS test comments
The comments for the PRIVKEYS definition in the BLS test generator were
a bit difficult to read. Improved by rewording them slightly.
2021-09-22 14:15:07 +02:00
Dmitrii Shmatko 829c6e7325 Enable genesis client tests for MERGE 2021-09-15 18:27:20 +03:00
Danny Ryan cb7c81eb96
Merge pull request #2576 from ralexstokes/consolidate-like-operations-tests
Allow spec tests author to batch tests under one handler name
2021-09-01 17:54:34 -06:00
Hsiao-Wei Wang 085045a860
Since merge spec was rebased, make `merge_mods` base on `altair_mods` instead of `phase_0_mods` 2021-08-31 18:06:55 +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
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 a890d04a62
Merge branch 'add-broad-spectrum-spec-tests' of https://github.com/ralexstokes/eth2.0-specs into add-broad-spectrum-spec-tests 2021-08-25 17:18:08 -07: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 4b3022a767
Update tests/generators/random/generate.py 2021-08-25 16:19:46 -06:00
Alex Stokes e2dc9f9ec2
update generation of randomized scenarios for more variability 2021-08-25 14:42:41 -07:00
Alex Stokes 14518d4d64
update name of utility module to be more specific 2021-08-25 11:15:59 -07:00
Alex Stokes a6f8870e18
update makefile to use correct python version 2021-08-25 11:15:27 -07:00
Alex Stokes 81971a8957
update readme for pytest 2021-08-25 11:01:26 -07:00
Alex Stokes e575b222be
clarify readme 2021-08-25 10:54:55 -07:00
Alex Stokes 02bc6541d9
extend Makefile 2021-08-24 16:40:16 -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 c27e4d140e
move to code-gen under new test generator 2021-08-24 11:56:15 -07:00
Alex Stokes cc04da8e79
add randomized block tests for altair 2021-08-23 12:30:05 -07:00
Alex Stokes 92aabcd207
add randomized block tests to test generator 2021-08-21 15:48:29 -07: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
Danny Ryan 4c1156d504
rename eth1 and eth2 throughout specs and readme where reasonable 2021-08-18 17:13:24 -06:00
Danny Ryan f6aa54b66f
Merge pull request #2554 from ralexstokes/refactor-sync-committee-tests
Refactor sync committee tests
2021-08-18 16:38:56 -06:00
Alex Stokes 5a17fa65b2
group test files into subdirectory 2021-08-18 10:49:44 -06:00
Hsiao-Wei Wang 3a9dcbadf0
Merge pull request #2487 from ethereum/on-block-tests
Rework + add some `on_block` tests
2021-08-17 21:21:44 +08:00
Hsiao-Wei Wang 93af122b2d
PR feedback from @ralexstokes and add single pubkey aggregate tests 2021-08-05 12:09:30 +08:00
Hsiao-Wei Wang 3b86bd340f
Rename eth2_* to eth_* 2021-08-05 11:20:49 +08:00
Hsiao-Wei Wang a8383be878
Apply suggestions from code review
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2021-08-05 11:12:36 +08:00
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