diff --git a/src/shared/tester.c b/src/shared/tester.c
index fb645a0..ffcc2ea 100644
--- a/src/shared/tester.c
+++ b/src/shared/tester.c
return test->user_data;
}
-static void tester_summarize(void)
+static int tester_summarize(void)
{
unsigned int not_run = 0, passed = 0, failed = 0;
gdouble execution_time;
execution_time = g_timer_elapsed(test_timer, NULL);
printf("Overall execution time: %.3g seconds\n", execution_time);
+ return failed;
}
static gboolean teardown_callback(gpointer user_data)
int tester_run(void)
{
guint signal;
+ int ret;
if (!main_loop)
return EXIT_FAILURE;
g_main_loop_unref(main_loop);
- tester_summarize();
+ ret = tester_summarize();
g_list_free_full(test_list, test_destroy);
- return EXIT_SUCCESS;
+ return ret == 0 ? EXIT_SUCCESS : EXIT_FAILURE;
}