void add_all_tests(const char *test_case_name, int (*test_fn)(int idx), int num,
int subtest);
__owur int run_tests(const char *test_prog_name);
+void set_test_title(const char *title);
/*
* Declarations for user defined functions
ERR_print_errors_cb(openssl_error_cb, NULL);
}
+static const char *test_title = NULL;
+
+void set_test_title(const char *title)
+{
+ test_title = title;
+}
+
int run_tests(const char *test_prog_name)
{
int num_failed = 0;
for (i = 0; i != num_tests; ++i) {
if (all_tests[i].num == -1) {
- int ret = all_tests[i].test_fn();
+ int ret = 0;
+
+ set_test_title(all_tests[i].test_case_name);
+ ret = all_tests[i].test_fn();
test_flush_stdout();
test_flush_stderr();
++num_failed;
}
test_printf_stdout("%*s%s %d - %s\n", level, "", verdict, i + 1,
- all_tests[i].test_case_name);
+ test_title);
test_flush_stdout();
finalize(ret);
} else {
}
for (j = 0; j < all_tests[i].num; j++) {
- int ret = all_tests[i].param_test_fn(j);
+ int ret = 0;
+
+ set_test_title(NULL);
+ ret = all_tests[i].param_test_fn(j);
test_flush_stdout();
test_flush_stderr();
verdict = "not ok";
++num_failed_inner;
}
- test_printf_stdout("%*s%s %d\n", level, "", verdict, j + 1);
+ if (test_title != NULL)
+ test_printf_stdout("%*s%s %d - %s\n", level, "", verdict,
+ j + 1, test_title);
+ else
+ test_printf_stdout("%*s%s %d\n", level, "", verdict,
+ j + 1);
test_flush_stdout();
}
}