diff --git a/glib/gtester.c b/glib/gtester.c
index 38a7f9610..9451aea56 100644
--- a/glib/gtester.c
+++ b/glib/gtester.c
@@ -102,21 +102,37 @@ testcase_close (long double duration,
gint exit_status,
guint n_forks)
{
+ gboolean success;
+
g_return_if_fail (testcase_open > 0);
test_log_printfe ("%s%.6Lf\n", sindent (log_indent), duration);
+ success = exit_status == G_TEST_RUN_SUCCESS || exit_status == G_TEST_RUN_SKIPPED;
test_log_printfe ("%s\n",
sindent (log_indent), exit_status, n_forks,
- exit_status ? "failed" : "success");
+ success ? "failed" : "success");
log_indent -= 2;
test_log_printfe ("%s\n", sindent (log_indent));
testcase_open--;
if (gtester_verbose)
- g_print ("%s\n", exit_status ? "FAIL" : "OK");
- if (exit_status && subtest_last_seed)
+ {
+ switch (exit_status)
+ {
+ case G_TEST_RUN_SUCCESS:
+ g_print ("OK\n");
+ break;
+ case G_TEST_RUN_SKIPPED:
+ g_print ("SKIP\n");
+ break;
+ default:
+ g_print ("FAIL\n");
+ break;
+ }
+ }
+ if (!success && subtest_last_seed)
g_print ("GTester: last random seed: %s\n", subtest_last_seed);
- if (exit_status)
+ if (!success)
testcase_fail_count += 1;
- if (subtest_mode_fatal && exit_status)
+ if (subtest_mode_fatal && !success)
terminate();
}
diff --git a/glib/gtestutils.c b/glib/gtestutils.c
index 52a216f05..a9c7a424b 100644
--- a/glib/gtestutils.c
+++ b/glib/gtestutils.c
@@ -663,12 +663,6 @@ static void gtest_default_log_handler (const gchar *log_domain,
gpointer unused_data);
-typedef enum {
- G_TEST_RUN_SUCCESS,
- G_TEST_RUN_SKIPPED,
- G_TEST_RUN_FAILURE,
- G_TEST_RUN_INCOMPLETE
-} GTestResult;
static const char * const g_test_result_names[] = {
"OK",
"SKIP",
diff --git a/glib/gtestutils.h b/glib/gtestutils.h
index 2a9cd22ca..ae74aba1d 100644
--- a/glib/gtestutils.h
+++ b/glib/gtestutils.h
@@ -353,6 +353,13 @@ typedef struct {
GLIB_VAR const GTestConfig * const g_test_config_vars;
/* internal logging API */
+typedef enum {
+ G_TEST_RUN_SUCCESS,
+ G_TEST_RUN_SKIPPED,
+ G_TEST_RUN_FAILURE,
+ G_TEST_RUN_INCOMPLETE
+} GTestResult;
+
typedef enum {
G_TEST_LOG_NONE,
G_TEST_LOG_ERROR, /* s:msg */