def bls_type(request): bls_type = request.config.getoption("--bls-type") if bls_type == "py_ecc": bls_utils.use_py_ecc() elif bls_type == "milagro": bls_utils.use_milagro() else: raise Exception(f"unrecognized bls type: {bls_type}")
def prepare_fn(configs_path: str) -> str: # Nothing to load / change in spec. Maybe in future forks. # Put the tests into the general config category, to not require any particular configuration. return 'general' def cases_fn() -> Iterable[gen_typing.TestCase]: for data in test_case_fn(): print(data) (case_name, case_content) = data yield gen_typing.TestCase( fork_name=PHASE0, runner_name='bls', handler_name=handler_name, suite_name='small', case_name=case_name, case_fn=lambda: [('data', 'data', case_content)]) return gen_typing.TestProvider(prepare=prepare_fn, make_cases=cases_fn) if __name__ == "__main__": bls.use_py_ecc( ) # Py-ecc is chosen instead of Milagro, since the code is better understood to be correct. gen_runner.run_generator("bls", [ create_provider('sign', case01_sign), create_provider('verify', case02_verify), create_provider('aggregate', case03_aggregate), create_provider('fast_aggregate_verify', case04_fast_aggregate_verify), create_provider('aggregate_verify', case05_aggregate_verify), ])