42 lines
1.5 KiB
Python
42 lines
1.5 KiB
Python
from eth2spec.gen_helpers.gen_from_tests.gen import run_state_test_generators
|
|
from eth2spec.phase0 import spec as spec_phase0
|
|
from eth2spec.lightclient_patch import spec as spec_lightclient_patch
|
|
from eth2spec.phase1 import spec as spec_phase1
|
|
from eth2spec.test.context import PHASE0, PHASE1, LIGHTCLIENT_PATCH
|
|
|
|
|
|
specs = (spec_phase0, spec_lightclient_patch, spec_phase1)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
phase_0_mods = {key: 'eth2spec.test.phase0.block_processing.test_process_' + key for key in [
|
|
'attestation',
|
|
'attester_slashing',
|
|
'block_header',
|
|
'deposit',
|
|
'proposer_slashing',
|
|
'voluntary_exit',
|
|
]}
|
|
lightclient_patch_mods = {
|
|
**{key: 'eth2spec.test.lightclient_patch.block_processing.test_process_' + key for key in [
|
|
'sync_committee',
|
|
]},
|
|
**phase_0_mods,
|
|
} # also run the previous phase 0 tests
|
|
phase_1_mods = {**{key: 'eth2spec.test.phase1.block_processing.test_process_' + key for key in [
|
|
'attestation',
|
|
'chunk_challenge',
|
|
'custody_key_reveal',
|
|
'custody_slashing',
|
|
'early_derived_secret_reveal',
|
|
'shard_transition',
|
|
]}, **phase_0_mods} # also run the previous phase 0 tests (but against phase 1 spec)
|
|
|
|
all_mods = {
|
|
PHASE0: phase_0_mods,
|
|
LIGHTCLIENT_PATCH: lightclient_patch_mods,
|
|
PHASE1: phase_1_mods,
|
|
}
|
|
|
|
run_state_test_generators(runner_name="operations", specs=specs, all_mods=all_mods)
|