diff options
author | Richard Levitte <levitte@openssl.org> | 2017-04-12 08:55:34 +0200 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2017-04-12 15:00:51 +0200 |
commit | a743b817d28ced8c8a4f2250ae9cbec39af937aa (patch) | |
tree | b90e86101f437ed47a945268df8fb32bdc0d2c7b | |
parent | 4833caed466ce8b7ae1d5fbafc23740885dbd9cc (diff) |
test/testutil.c: Flush stdout when running tests
Because stdout is usually buffered and stderr isn't, error output
might get printed in one bunch and all the lines saying which test
failed all in one bunch, making it difficult to see exactly what error
output belongs to what test. Flushing stdout makes sure the runner
output is displayed together with the corresponding error output.
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3198)
-rw-r--r-- | test/testutil.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/test/testutil.c b/test/testutil.c index 867be178b3..3d2824c1f9 100644 --- a/test/testutil.c +++ b/test/testutil.c @@ -114,6 +114,7 @@ int run_tests(const char *test_prog_name) printf("%s: %d test case%s\n", test_prog_name, num_test_cases, num_test_cases == 1 ? "" : "s"); + fflush(stdout); for (i = 0; i != num_tests; ++i) { if (all_tests[i].num == -1) { @@ -122,6 +123,7 @@ int run_tests(const char *test_prog_name) if (!ret) { printf("** %s failed **\n--------\n", all_tests[i].test_case_name); + fflush(stdout); ++num_failed; } finalize(ret); @@ -132,6 +134,7 @@ int run_tests(const char *test_prog_name) if (!ret) { printf("** %s failed test %d\n--------\n", all_tests[i].test_case_name, j); + fflush(stdout); ++num_failed; } finalize(ret); @@ -142,9 +145,11 @@ int run_tests(const char *test_prog_name) if (num_failed != 0) { printf("%s: %d test%s failed (out of %d)\n", test_prog_name, num_failed, num_failed != 1 ? "s" : "", num_test_cases); + fflush(stdout); return EXIT_FAILURE; } printf(" All tests passed.\n"); + fflush(stdout); return EXIT_SUCCESS; } |