From a365de2419e41b865460100a8b2fd47983d67fcd Mon Sep 17 00:00:00 2001 From: Andrew Johnson Date: Thu, 17 Dec 2020 18:21:07 -0600 Subject: [PATCH] Fix return value of epicsUnitTest::testDone() Wasn't properly returning a non-zero exit status when HARNESS_ACTIVE was set. --- src/libCom/misc/epicsUnitTest.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/libCom/misc/epicsUnitTest.c b/src/libCom/misc/epicsUnitTest.c index 4ac18ea1c..317aec4af 100644 --- a/src/libCom/misc/epicsUnitTest.c +++ b/src/libCom/misc/epicsUnitTest.c @@ -171,7 +171,12 @@ int testDone(void) { epicsMutexMustLock(testLock); if (perlHarness) { - if (!planned) printf("1..%d\n", tested); + if (!planned) + printf("1..%d\n", tested); + else if (tested != planned) + status = 2; + if (failed) + status |= 1; } else { if (planned && tested > planned) { printf("\nRan %d tests but only planned for %d!\n", tested, planned); @@ -186,7 +191,7 @@ int testDone(void) { if (bonus) testResult("Todo Passes", bonus); if (failed) { testResult("Failed", failed); - status = 1; + status |= 1; } if (skipped) testResult("Skipped", skipped); }