Esempio n. 1
0
// Called after each iteration of tests finishes.
void TersePrinter::OnTestIterationEnd(const UnitTest& unit_test, int /*iteration*/)
{
	g_test_to_run = unit_test.test_to_run_count();
	ColoredPrintf(COLOR_GREEN, "%s", "[==========] ");
	printf("%s from %d test cases ran.",
	       FormatTestCount(unit_test.test_to_run_count()).c_str(),
	       unit_test.test_case_to_run_count());
	float time_in_ms = static_cast<float>(unit_test.elapsed_time());
	printf(" (%1.2f seconds total)\n", time_in_ms / 1000);
	// Print total passed.
	ColoredPrintf(COLOR_GREEN, "%s", "[  PASSED  ] ");
	printf("%s.\n", FormatTestCount(unit_test.successful_test_count()).c_str());
	// Print total failed.
	int num_failures = unit_test.failed_test_count();
	if (num_failures)
	{
		ColoredPrintf(COLOR_RED, "%s", "[  FAILED  ] ");
		printf("%s, listed below:\n", FormatTestCount(num_failures).c_str());
		PrintFailedTestsList(unit_test);
		printf("\n%d FAILED %s\n", num_failures,
		       num_failures == 1 ? "TEST" : "TESTS");
	}
	// Print total disabled.
	int num_disabled = unit_test.disabled_test_count();
	if (num_disabled)
	{
		if (!num_failures)
			printf("\n");  // Add a spacer if no FAILURE banner is displayed.
		ColoredPrintf(COLOR_YELLOW, "  YOU HAVE %d DISABLED TESTS\n", num_disabled);
	}
	// Ensure that Google Test output is printed before, e.g., heapchecker output.
	fflush(stdout);
}
void SDKUnitTestListener::OnTestIterationEnd(const UnitTest& unit_test, int /*iteration*/) {
	// Print stored test results
	PrintTestResults();

	// Print final results
	Msg( "[==========] ");
	Msg("%s from %s ran.",
		FormatTestCount(unit_test.test_to_run_count()).c_str(),
		FormatTestCaseCount(unit_test.test_case_to_run_count()).c_str());
	if (GTEST_FLAG(print_time)) {
		Msg(" (%s ms total)",
			internal::StreamableToString(unit_test.elapsed_time()).c_str());
	}
	Msg("\n");
	Msg( "[  PASSED  ] ");
	Msg("%s.\n", FormatTestCount(unit_test.successful_test_count()).c_str());

	int num_failures = unit_test.failed_test_count();
	if (!unit_test.Passed()) {
		const int failed_test_count = unit_test.failed_test_count();
		Msg( "[  FAILED  ] ");
		Msg("%s, listed below:\n", FormatTestCount(failed_test_count).c_str());
		PrintFailedTests(unit_test);
		Msg("\n%2d FAILED %s\n", num_failures, num_failures == 1 ? "TEST" : "TESTS");
	}

	int num_disabled = unit_test.disabled_test_count();
	if (num_disabled && !GTEST_FLAG(also_run_disabled_tests)) {
		if (!num_failures) {
			Msg("\n");  // Add a spacer if no FAILURE banner is displayed.
		}
		Msg( "  YOU HAVE %d DISABLED %s\n\n",
			num_disabled,
			num_disabled == 1 ? "TEST" : "TESTS");
	}
}