Rename print_test_result and exit on any failing function

This commit is contained in:
Abdelrahman Said 2024-06-09 22:45:27 +01:00
parent 8c153b5321
commit d9cf98da73

View File

@ -6,7 +6,7 @@
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
internal void print_test_result(TerminalColourist *colourist, internal void handle_test_result(TerminalColourist *colourist,
TestFuncResult result); TestFuncResult result);
void run_tests(TestFunc *func1, ...) { void run_tests(TestFunc *func1, ...) {
@ -14,7 +14,7 @@ void run_tests(TestFunc *func1, ...) {
printf("\n"); printf("\n");
print_test_result(&colourist, func1()); handle_test_result(&colourist, func1());
va_list args; va_list args;
va_start(args, func1); va_start(args, func1);
@ -23,11 +23,7 @@ void run_tests(TestFunc *func1, ...) {
while (func) { while (func) {
TestFuncResult result = func(); TestFuncResult result = func();
print_test_result(&colourist, result); handle_test_result(&colourist, result);
if (!result.passed) {
exit(EXIT_FAILURE);
}
func = va_arg(args, TestFunc *); func = va_arg(args, TestFunc *);
} }
@ -37,7 +33,7 @@ void run_tests(TestFunc *func1, ...) {
printf("\n"); printf("\n");
} }
internal void print_test_result(TerminalColourist *colourist, internal void handle_test_result(TerminalColourist *colourist,
TestFuncResult result) { TestFuncResult result) {
TerminalColour colour; TerminalColour colour;
const char *result_text; const char *result_text;
@ -54,4 +50,8 @@ internal void print_test_result(TerminalColourist *colourist,
wapp_termcolour_print_text(colourist, result_text, colour); wapp_termcolour_print_text(colourist, result_text, colour);
wapp_termcolour_clear_colour(colourist); wapp_termcolour_clear_colour(colourist);
printf("] %s\n", result.name); printf("] %s\n", result.name);
if (!result.passed) {
exit(EXIT_FAILURE);
}
} }