From 83abee2adf8e684b4735a1d75a365bc914571ec0 Mon Sep 17 00:00:00 2001
From: Dmitri Naumov <github@naumov.de>
Date: Tue, 19 May 2020 21:11:31 +0200
Subject: [PATCH] [cmake] Run all tests, even after first failure.

---
 scripts/cmake/test/AddTestTester.cmake | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/scripts/cmake/test/AddTestTester.cmake b/scripts/cmake/test/AddTestTester.cmake
index e2560c4b5e1..0ecb5200d4a 100644
--- a/scripts/cmake/test/AddTestTester.cmake
+++ b/scripts/cmake/test/AddTestTester.cmake
@@ -15,6 +15,7 @@ if(WIN32)
 else()
     set(TERMINAL_CMD bash -c)
 endif()
+set(TEST_FAILED FALSE)
 foreach(CMD ${TESTER_COMMAND})
     if(GLOB_MODE)
         separate_arguments(CMD)
@@ -40,7 +41,8 @@ foreach(CMD ${TESTER_COMMAND})
             )
 
             if(NOT EXIT_CODE STREQUAL "0")
-                message(FATAL_ERROR "Error exit code: ${EXIT_CODE}\n${OUTPUT}")
+                message(WARNING "Error exit code: ${EXIT_CODE}\n${OUTPUT}")
+                set(TEST_FAILED TRUE)
             endif()
         endforeach()
     else()
@@ -52,9 +54,13 @@ foreach(CMD ${TESTER_COMMAND})
             ERROR_VARIABLE OUTPUT
         )
         if(NOT EXIT_CODE STREQUAL "0")
-            message(FATAL_ERROR "Error exit code: ${EXIT_CODE}${OUTPUT}")
+            message(WARNING "Error exit code: ${EXIT_CODE}${OUTPUT}")
+            set(TEST_FAILED TRUE)
         endif()
     endif()
 endforeach()
+if (TEST_FAILED)
+    message(FATAL_ERROR "One of the tests failed.")
+endif()
 
 
-- 
GitLab