cleanup generator code, use helper pkg to load and generate test cases with

This commit is contained in:
protolambda 2019-05-23 15:16:59 +02:00
parent 754d972108
commit c11f963bc9
No known key found for this signature in database
GPG Key ID: EC89FDBB2B4C7623
2 changed files with 26 additions and 3 deletions

View File

@ -1,3 +1,5 @@
from typing import Callable, Iterable
from eth2spec.test.epoch_processing import ( from eth2spec.test.epoch_processing import (
test_process_crosslinks, test_process_crosslinks,
test_process_registry_updates test_process_registry_updates
@ -5,7 +7,6 @@ from eth2spec.test.epoch_processing import (
from gen_base import gen_runner, gen_suite, gen_typing from gen_base import gen_runner, gen_suite, gen_typing
from gen_from_tests.gen import generate_from_tests from gen_from_tests.gen import generate_from_tests
from typing import Callable, Iterable
from preset_loader import loader from preset_loader import loader
from eth2spec.phase0 import spec from eth2spec.phase0 import spec

View File

@ -1,3 +1,5 @@
from typing import Callable, Iterable
from eth2spec.test.block_processing import ( from eth2spec.test.block_processing import (
test_process_attestation, test_process_attestation,
test_process_attester_slashing, test_process_attester_slashing,
@ -8,9 +10,29 @@ from eth2spec.test.block_processing import (
test_process_voluntary_exit test_process_voluntary_exit
) )
from gen_base import gen_runner from gen_base import gen_runner, gen_suite, gen_typing
from gen_from_tests.gen import generate_from_tests
from preset_loader import loader
from eth2spec.phase0 import spec
def create_suite(operation_name: str, config_name: str, get_cases: Callable[[], Iterable[gen_typing.TestCase]]) \
-> Callable[[str], gen_typing.TestSuiteOutput]:
def suite_definition(configs_path: str) -> gen_typing.TestSuiteOutput:
presets = loader.load_presets(configs_path, config_name)
spec.apply_constants_preset(presets)
return ("%s_%s" % (operation_name, config_name), operation_name, gen_suite.render_suite(
title="%s operation" % operation_name,
summary="Test suite for %s type operation processing" % operation_name,
forks_timeline="testing",
forks=["phase0"],
config=config_name,
runner="operations",
handler=operation_name,
test_cases=get_cases()))
return suite_definition
from suite_creator import generate_from_tests, create_suite
if __name__ == "__main__": if __name__ == "__main__":
gen_runner.run_generator("operations", [ gen_runner.run_generator("operations", [