diff options
| author | Mosder <xmosder12@gmail.com> | 2026-08-18 18:42:53 +0200 |
|---|---|---|
| committer | Mosder <xmosder12@gmail.com> | 2026-08-18 18:42:53 +0200 |
| commit | 6af63e218750d58ad1a87643890cb49c2352c666 (patch) | |
| tree | 4ea15d8cff27b5831e7d6b574b2f5180f99e1067 | |
| parent | 1cb408c0e4f42c4b11e8e2f80374c26bb905ef22 (diff) | |
feat: added return value to run_tests to determine whether all tests passed
| -rw-r--r-- | include/moslib/tester.h | 7 | ||||
| -rw-r--r-- | src/tester.c | 6 |
2 files changed, 9 insertions, 4 deletions
diff --git a/include/moslib/tester.h b/include/moslib/tester.h index 1d50473..9423684 100644 --- a/include/moslib/tester.h +++ b/include/moslib/tester.h @@ -67,7 +67,7 @@ // // Run tests: // -// run_tests(tester); +// int all_passed = run_tests(tester); // // ---------------------------------------------------------------------------------------------------- // @@ -174,7 +174,10 @@ extern void mos_unsuppress_outputs(void); // Arguments: // tester // tester with tests to run -extern void mos_run_tests(MosTester *tester); +// +// Returns: +// 1 if all tests passed, 0 if not +extern int mos_run_tests(MosTester *tester); // Free the tester // diff --git a/src/tester.c b/src/tester.c index eca4c1a..84c1ca6 100644 --- a/src/tester.c +++ b/src/tester.c @@ -166,9 +166,9 @@ void mos_add_test_fn(MosTestGroup *group, MosTestFn test, const char *name) { group->tests[group->n_tests++] = (TestName){.test = test, .name = name}; } -void mos_run_tests(MosTester *tester) { +int mos_run_tests(MosTester *tester) { if (!tester) - return; + return 0; size_t total_passed = 0; size_t total_failed = 0; @@ -220,6 +220,8 @@ void mos_run_tests(MosTester *tester) { sprintf(buf, "%zu FAILED", total_failed); print_center(buf, RED, ' '); print_center("END", WHITE, '='); + + return total_failed == 0; } void mos_free_tester(MosTester *tester) { |
