From f3be4e1ac5d7617869859a4ced500bceb6014535 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada D'Ottone Date: Mon, 26 Jun 2023 14:26:42 -0400 Subject: [PATCH] Fixed 2 test runner issues (#3076) * Fixed 2 test runner issues Thanks to MGriffin for the help - Fixed non-battle tests omitting errors when failing. - Fixed non-battle tests showing false positive memory leak errors due to the test failing for a different cause. * Update test/test_runner.c Co-authored-by: Martin Griffin --- test/test_runner.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/test/test_runner.c b/test/test_runner.c index bfd7b47a56..c0459fbe6e 100644 --- a/test/test_runner.c +++ b/test/test_runner.c @@ -155,7 +155,8 @@ void CB2_TestRunner(void) if (gTestRunnerState.test->runner->tearDown) gTestRunnerState.test->runner->tearDown(gTestRunnerState.test->data); - if (!gTestRunnerState.expectLeaks) + if (gTestRunnerState.result == gTestRunnerState.expectedResult + && !gTestRunnerState.expectLeaks) { const struct MemBlock *head = HeapHead(); const struct MemBlock *block = head; @@ -372,10 +373,10 @@ void Test_ExitWithResult(enum TestResult result, const char *fmt, ...) gTestRunnerState.result = result; ReinitCallbacks(); if (gTestRunnerState.state == STATE_REPORT_RESULT - && gTestRunnerState.test->runner->handleExitWithResult) + && gTestRunnerState.result != gTestRunnerState.expectedResult) { - if (!gTestRunnerState.test->runner->handleExitWithResult(gTestRunnerState.test->data, result) - && gTestRunnerState.result != gTestRunnerState.expectedResult) + if (!gTestRunnerState.test->runner->handleExitWithResult + || !gTestRunnerState.test->runner->handleExitWithResult(gTestRunnerState.test->data, result)) { va_list va; va_start(va, fmt);