def _(example=example_test): test_results = [ TestResult(test=example, outcome=TestOutcome.XPASS), TestResult(test=example, outcome=TestOutcome.PASS), ] exit_code = get_exit_code(test_results) assert exit_code == ExitCode.FAILED
def _(example): test_results = [ TestResult(test=example, outcome=TestOutcome.PASS), TestResult(test=example, outcome=TestOutcome.SKIP), TestResult(test=example, outcome=TestOutcome.XFAIL), ] exit_code = get_exit_code(test_results) assert exit_code == ExitCode.SUCCESS
def test( ctx: click.Context, config: str, config_path: Optional[Path], path: Tuple[str], exclude: Tuple[str], search: Optional[str], tags: Optional[Expression], fail_limit: Optional[int], test_output_style: str, order: str, capture_output: bool, show_slowest: int, show_diff_symbols: bool, dry_run: bool, ): """Run tests.""" start_run = default_timer() paths = [Path(p) for p in path] mod_infos = get_info_for_modules(paths, exclude) modules = list(load_modules(mod_infos)) unfiltered_tests = get_tests_in_modules(modules, capture_output) filtered_tests = list( filter_tests( unfiltered_tests, query=search, tag_expr=tags, )) # Rewrite assertions in each test tests = rewrite_assertions_in_tests(filtered_tests) time_to_collect = default_timer() - start_run suite = Suite(tests=tests) test_results = suite.generate_test_runs(order=order, dry_run=dry_run) writer = SimpleTestResultWrite( suite=suite, test_output_style=test_output_style, config_path=config_path, show_diff_symbols=show_diff_symbols, ) writer.output_header(time_to_collect=time_to_collect) results = writer.output_all_test_results(test_results, fail_limit=fail_limit) time_taken = default_timer() - start_run writer.output_test_result_summary(results, time_taken, show_slowest) exit_code = get_exit_code(results) sys.exit(exit_code.value)
def run( ctx: click.Context, path: Tuple[str], exclude: Tuple[str], search: Optional[str], fail_limit: Optional[int], test_output_style: str, order: str, capture_output: bool, config: str, show_slowest: int, dry_run: bool, ): start_run = default_timer() paths = [Path(p) for p in path] mod_infos = get_info_for_modules(paths, exclude) modules = list(load_modules(mod_infos)) unfiltered_tests = get_tests_in_modules(modules, capture_output) tests = list(search_generally(unfiltered_tests, query=search)) # Rewrite assertions in each test tests = rewrite_assertions_in_tests(tests) time_to_collect = default_timer() - start_run suite = Suite(tests=tests) test_results = suite.generate_test_runs(order=order, dry_run=dry_run) writer = SimpleTestResultWrite(suite=suite, test_output_style=test_output_style) results = writer.output_all_test_results(test_results, time_to_collect=time_to_collect, fail_limit=fail_limit) time_taken = default_timer() - start_run writer.output_test_result_summary(results, time_taken, show_slowest) exit_code = get_exit_code(results) sys.exit(exit_code.value)
def _(): exit_code = get_exit_code([]) assert exit_code == ExitCode.NO_TESTS_FOUND
def test( ctx: click.Context, config: str, config_path: Optional[Path], path: Tuple[str], exclude: Tuple[str], search: Optional[str], tags: Optional[Expression], fail_limit: Optional[int], test_output_style: str, progress_style: List[str], order: str, capture_output: bool, show_slowest: int, show_diff_symbols: bool, dry_run: bool, ): """Run tests.""" progress_styles = [TestProgressStyle(ps) for ps in progress_style] if TestProgressStyle.BAR in progress_styles and test_output_style in { "dots-global", "dots-module", }: raise click.BadOptionUsage( "progress_style", f"The '{TestProgressStyle.BAR}' progress style cannot be used with dots-based test output styles (you asked for '{test_output_style}').", ) init_breakpointhooks(pdb, sys) start_run = default_timer() paths = [Path(p) for p in path] mod_infos = get_info_for_modules(paths, exclude) modules = list(load_modules(mod_infos)) unfiltered_tests = get_tests_in_modules(modules, capture_output) filtered_tests = list( filter_tests( unfiltered_tests, query=search, tag_expr=tags, )) tests = rewrite_assertions_in_tests(filtered_tests) time_to_collect = default_timer() - start_run suite = Suite(tests=tests) test_results = suite.generate_test_runs(order=order, dry_run=dry_run) writer = SimpleTestResultWrite( suite=suite, test_output_style=test_output_style, progress_styles=progress_styles, config_path=config_path, show_diff_symbols=show_diff_symbols, ) writer.output_header(time_to_collect=time_to_collect) results = writer.output_all_test_results(test_results, fail_limit=fail_limit) time_taken = default_timer() - start_run writer.output_test_result_summary(results, time_taken, show_slowest) exit_code = get_exit_code(results) sys.exit(exit_code.value)