Esempio n. 1
0
 def cases_fn() -> Iterable[gen_typing.TestCase]:
     return generate_from_tests(
         runner_name='genesis',
         handler_name=handler_name,
         src=tests_src,
         fork_name=PHASE0,
     )
Esempio n. 2
0
 def cases_fn() -> Iterable[gen_typing.TestCase]:
     return generate_from_tests(
         runner_name='sanity',
         handler_name=handler_name,
         src=tests_src,
         fork_name='phase0'
     )
Esempio n. 3
0
 def cases_fn() -> Iterable[gen_typing.TestCase]:
     tests_src = import_module(tests_src_mod_name)
     return generate_from_tests(
         runner_name='sanity',
         handler_name=handler_name,
         src=tests_src,
         fork_name=fork_name,
     )
Esempio n. 4
0
                    transition_name,
                    forks_timeline="testing",
                    forks=["phase0"],
                    config=config_name,
                    runner="epoch_processing",
                    handler=transition_name,
                    test_cases=get_cases()))

    return suite_definition


if __name__ == "__main__":
    gen_runner.run_generator("epoch_processing", [
        create_suite(
            'crosslinks', 'minimal',
            lambda: generate_from_tests(test_process_crosslinks, 'phase0')),
        create_suite(
            'crosslinks', 'mainnet',
            lambda: generate_from_tests(test_process_crosslinks, 'phase0')),
        create_suite(
            'final_updates', 'minimal',
            lambda: generate_from_tests(test_process_final_updates, 'phase0')),
        create_suite(
            'final_updates', 'mainnet',
            lambda: generate_from_tests(test_process_final_updates, 'phase0')),
        create_suite(
            'justification_and_finalization', 'minimal',
            lambda: generate_from_tests(
                test_process_justification_and_finalization, 'phase0')),
        create_suite(
            'justification_and_finalization', 'mainnet',
Esempio n. 5
0
def create_suite(handler_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 (
            "genesis_%s_%s" % (handler_name, config_name), handler_name,
            gen_suite.render_suite(
                title="genesis testing",
                summary="Genesis test suite, %s type, generated from pytests" %
                handler_name,
                forks_timeline="testing",
                forks=["phase0"],
                config=config_name,
                runner="genesis",
                handler=handler_name,
                test_cases=get_cases()))

    return suite_definition


if __name__ == "__main__":
    gen_runner.run_generator("genesis", [
        create_suite(
            'initialization', 'minimal',
            lambda: generate_from_tests(test_initialization, 'phase0')),
        create_suite('validity', 'minimal',
                     lambda: generate_from_tests(test_validity, 'phase0')),
    ])
Esempio n. 6
0
        return ("%s_%s" % (transition_name, config_name), transition_name,
                gen_suite.render_suite(
                    title="%s epoch processing" % transition_name,
                    summary="Test suite for %s type epoch processing" %
                    transition_name,
                    forks_timeline="testing",
                    forks=["phase0"],
                    config=config_name,
                    runner="epoch_processing",
                    handler=transition_name,
                    test_cases=get_cases()))

    return suite_definition


if __name__ == "__main__":
    gen_runner.run_generator("epoch_processing", [
        create_suite(
            'crosslinks', 'minimal',
            lambda: generate_from_tests(test_process_crosslinks, 'phase0')),
        create_suite(
            'crosslinks', 'mainnet',
            lambda: generate_from_tests(test_process_crosslinks, 'phase0')),
        create_suite(
            'registry_updates', 'minimal', lambda: generate_from_tests(
                test_process_registry_updates, 'phase0')),
        create_suite(
            'registry_updates', 'mainnet', lambda: generate_from_tests(
                test_process_registry_updates, 'phase0')),
    ])
Esempio n. 7
0
        presets = loader.load_presets(configs_path, config_name)
        spec.apply_constants_preset(presets)

        return (
            "%sanity_s_%s" % (handler_name, config_name), handler_name,
            gen_suite.render_suite(
                title="sanity testing",
                summary="Sanity test suite, %s type, generated from pytests" %
                handler_name,
                forks_timeline="testing",
                forks=["phase0"],
                config=config_name,
                runner="sanity",
                handler=handler_name,
                test_cases=get_cases()))

    return suite_definition


if __name__ == "__main__":
    gen_runner.run_generator("sanity", [
        create_suite('blocks', 'minimal',
                     lambda: generate_from_tests(test_blocks)),
        create_suite('blocks', 'mainnet',
                     lambda: generate_from_tests(test_blocks)),
        create_suite('slots', 'minimal',
                     lambda: generate_from_tests(test_slots)),
        create_suite('slots', 'mainnet',
                     lambda: generate_from_tests(test_slots)),
    ])
Esempio n. 8
0
                    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


if __name__ == "__main__":
    gen_runner.run_generator("operations", [
        create_suite('attestation', 'minimal',
                     lambda: generate_from_tests(test_process_attestation)),
        create_suite('attestation', 'mainnet',
                     lambda: generate_from_tests(test_process_attestation)),
        create_suite(
            'attester_slashing', 'minimal',
            lambda: generate_from_tests(test_process_attester_slashing)),
        create_suite(
            'attester_slashing', 'mainnet',
            lambda: generate_from_tests(test_process_attester_slashing)),
        create_suite('block_header', 'minimal',
                     lambda: generate_from_tests(test_process_block_header)),
        create_suite('block_header', 'mainnet',
                     lambda: generate_from_tests(test_process_block_header)),
        create_suite('deposit', 'minimal',
                     lambda: generate_from_tests(test_process_deposit)),
        create_suite('deposit', 'mainnet',
Esempio n. 9
0
from gen_from_tests.gen import generate_from_tests
from preset_loader import loader


def create_suite(transition_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" % (transition_name, config_name), transition_name, gen_suite.render_suite(
            title="%s epoch processing" % transition_name,
            summary="Test suite for %s type epoch processing" % transition_name,
            forks_timeline="testing",
            forks=["phase0"],
            config=config_name,
            runner="epoch_processing",
            handler=transition_name,
            test_cases=get_cases()))

    return suite_definition


if __name__ == "__main__":
    gen_runner.run_generator("epoch_processing", [
        create_suite('crosslinks', 'minimal', lambda: generate_from_tests(test_process_crosslinks)),
        create_suite('crosslinks', 'mainnet', lambda: generate_from_tests(test_process_crosslinks)),
        create_suite('registry_updates', 'minimal', lambda: generate_from_tests(test_process_registry_updates)),
        create_suite('registry_updates', 'mainnet', lambda: generate_from_tests(test_process_registry_updates)),
    ])
Esempio n. 10
0
                    operation_name,
                    forks_timeline="testing",
                    forks=["phase0"],
                    config=config_name,
                    runner="operations",
                    handler=operation_name,
                    test_cases=get_cases()))

    return suite_definition


if __name__ == "__main__":
    gen_runner.run_generator("operations", [
        create_suite(
            'attestation', 'minimal',
            lambda: generate_from_tests(test_process_attestation, 'phase0')),
        create_suite(
            'attestation', 'mainnet',
            lambda: generate_from_tests(test_process_attestation, 'phase0')),
        create_suite(
            'attester_slashing', 'minimal', lambda: generate_from_tests(
                test_process_attester_slashing, 'phase0')),
        create_suite(
            'attester_slashing', 'mainnet', lambda: generate_from_tests(
                test_process_attester_slashing, 'phase0')),
        create_suite(
            'block_header', 'minimal',
            lambda: generate_from_tests(test_process_block_header, 'phase0')),
        create_suite(
            'block_header', 'mainnet',
            lambda: generate_from_tests(test_process_block_header, 'phase0')),
Esempio n. 11
0
from eth2spec.phase0 import spec as spec_phase0
from eth2spec.phase1 import spec as spec_phase1


def create_suite(handler_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_phase0.apply_constants_preset(presets)
        spec_phase1.apply_constants_preset(presets)

        return ("sanity_%s_%s" % (handler_name, config_name), handler_name, gen_suite.render_suite(
            title="sanity testing",
            summary="Sanity test suite, %s type, generated from pytests" % handler_name,
            forks_timeline="testing",
            forks=["phase0"],
            config=config_name,
            runner="sanity",
            handler=handler_name,
            test_cases=get_cases()))
    return suite_definition


if __name__ == "__main__":
    gen_runner.run_generator("sanity", [
        create_suite('blocks', 'minimal', lambda: generate_from_tests(test_blocks, 'phase0')),
        create_suite('blocks', 'mainnet', lambda: generate_from_tests(test_blocks, 'phase0')),
        create_suite('slots', 'minimal', lambda: generate_from_tests(test_slots, 'phase0')),
        create_suite('slots', 'mainnet', lambda: generate_from_tests(test_slots, 'phase0')),
    ])