Lines Matching refs:test

259 			version_type: str, test: Test) -> None:
273 test.add_error(f'{version_type} version lower than expected!')
275 test.add_error(f'{version_type} version higer than expected!')
277 def parse_ktap_header(lines: LineStream, test: Test) -> bool:
297 check_version(version_num, KTAP_VERSIONS, 'KTAP', test)
300 check_version(version_num, TAP_VERSIONS, 'TAP', test)
303 test.log.append(lines.pop())
308 def parse_test_header(lines: LineStream, test: Test) -> bool:
326 test.log.append(lines.pop())
327 test.name = match.group(1)
332 def parse_test_plan(lines: LineStream, test: Test) -> bool:
351 test.expected_count = None
353 test.log.append(lines.pop())
355 test.expected_count = expected_count
362 def peek_test_name_match(lines: LineStream, test: Test) -> bool:
385 return name == test.name
387 def parse_test_result(lines: LineStream, test: Test,
417 test.log.append(lines.pop())
421 test.name = skip_match.group(4)
423 test.name = match.group(4)
428 test.add_error(f'Expected test number {expected_num} but found {num}')
433 test.status = TestStatus.SKIPPED
435 test.status = TestStatus.SUCCESS
437 test.status = TestStatus.FAILURE
492 def print_test_header(test: Test) -> None:
503 message = test.name
504 if test.expected_count:
505 if test.expected_count == 1:
516 def format_test_result(test: Test) -> str:
530 if test.status == TestStatus.SUCCESS:
531 return stdout.green('[PASSED] ') + test.name
532 if test.status == TestStatus.SKIPPED:
533 return stdout.yellow('[SKIPPED] ') + test.name
534 if test.status == TestStatus.NO_TESTS:
535 return stdout.yellow('[NO TESTS RUN] ') + test.name
536 if test.status == TestStatus.TEST_CRASHED:
537 print_log(test.log)
538 return stdout.red('[CRASHED] ') + test.name
539 print_log(test.log)
540 return stdout.red('[FAILED] ') + test.name
542 def print_test_result(test: Test) -> None:
552 stdout.print_with_timestamp(format_test_result(test))
554 def print_test_footer(test: Test) -> None:
564 message = format_test_result(test)
568 def print_summary_line(test: Test) -> None:
582 if test.status == TestStatus.SUCCESS:
584 elif test.status in (TestStatus.SKIPPED, TestStatus.NO_TESTS):
592 def bubble_up_test_results(test: Test) -> None:
602 subtests = test.subtests
603 counts = test.counts
604 status = test.status
609 elif test.counts.get_status() == TestStatus.TEST_CRASHED:
610 test.status = TestStatus.TEST_CRASHED
654 test = Test()
655 test.log.extend(log)
657 main = parse_ktap_header(lines, test)
661 test.name = "main"
662 parse_test_plan(lines, test)
668 parent_test = parse_test_header(lines, test)
672 parse_test_plan(lines, test)
673 print_test_header(test)
674 expected_count = test.expected_count
685 if not lines or (peek_test_name_match(lines, test) and
691 test.add_error('missing expected subtest!')
693 test.counts.add_status(
697 test.log.extend(sub_log)
703 test.subtests = subtests
706 test.log.extend(parse_diagnostic(lines))
707 if (parent_test and peek_test_name_match(lines, test)) or \
709 parse_test_result(lines, test, expected_num)
711 test.add_error('missing subtest result line!')
717 if test.status in (TestStatus.TEST_CRASHED, TestStatus.SUCCESS):
718 test.status = TestStatus.NO_TESTS
719 test.add_error('0 tests run!')
722 bubble_up_test_results(test)
726 print_test_footer(test)
728 print_test_result(test)
729 return test
744 test = Test()
746 test.name = '<missing>'
747 test.add_error('could not find any KTAP output!')
748 test.status = TestStatus.FAILURE_TO_PARSE_TESTS
750 test = parse_test(lines, 0, [])
751 if test.status != TestStatus.NO_TESTS:
752 test.status = test.counts.get_status()
754 print_summary_line(test)
755 return test