diff --git a/SLS_C/tests/tests.c b/SLS_C/tests/tests.c new file mode 100644 index 0000000..ed2a92c --- /dev/null +++ b/SLS_C/tests/tests.c @@ -0,0 +1,34 @@ +// Kyler Olsen +// YREA SLS +// SLS Tests +// November 2025 + +#include + +#include "tests/tests.h" + +int main(void) { + TestsReport lexer_reports = run_lexer_tests(); + + for (int i = 0; i < lexer_reports.count; i++) { + switch (lexer_reports.tests[i].status) { + case TEST_ERROR: + printf("\x1b[91mTest errored: %s\n\t%s\n", lexer_reports.tests[i].name, lexer_reports.tests[i].error.message); + break; + case TEST_ERROR_FAIL: + printf("\x1b[35mTest failed (errored): %s\n\t%s\n", lexer_reports.tests[i].name, lexer_reports.tests[i].error.message); + break; + case TEST_LOGIC_FAIL: + printf("\x1b[31mTest failed: %s\n\t%s\n", lexer_reports.tests[i].name, lexer_reports.tests[i].message); + break; + case TEST_PASS: + printf("\x1b[32mTest passed: %s\n", lexer_reports.tests[i].name); + break; + case TEST_NOT_IMPLEMENTED: + printf("\x1b[34mTest not implemented: %s\n", lexer_reports.tests[i].name); + break; + } + } + + return 0; +}