From 06efd83faef0e01f4bfb29d7f4226f8371ce1ec6 Mon Sep 17 00:00:00 2001
From: Elias Pipping <elias.pipping@fu-berlin.de>
Date: Thu, 7 Jul 2016 21:56:20 +0200
Subject: [PATCH] Tests: Do not short-circuit on test failures

Highlight errors, too. Previously, they were hard to spot.
---
 dune/solvers/test/gssteptest.cc | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/dune/solvers/test/gssteptest.cc b/dune/solvers/test/gssteptest.cc
index c6131e6d..0f735687 100644
--- a/dune/solvers/test/gssteptest.cc
+++ b/dune/solvers/test/gssteptest.cc
@@ -71,7 +71,7 @@ struct GSTestSuite {
       std::cout << "error for solver \"" << s << "\": " << normDiff
                 << std::endl;
       if (normDiff > tolerance) {
-        std::cerr << "Error too large for solver \"" << testCase << "\"."
+        std::cerr << "### Error too large for solver \"" << testCase << "\"."
                   << std::endl;
         return false;
       }
@@ -80,7 +80,7 @@ struct GSTestSuite {
 
     auto test = [&](Step* step, std::string name) {
       auto result = solve(step, 1e-12, 2000);
-      passed = passed and analyse(result, name, 1e-7);
+      passed &= analyse(result, name, 1e-7);
     };
 
     auto diffTest = [&](Step* step1, std::string name1, Step* step2,
@@ -100,7 +100,6 @@ struct GSTestSuite {
                 << ((maxDiff > 0.0)
                         ? " up to " + Dune::formatString("%e", maxDiff)
                         : ".") << std::endl;
-      passed = passed and true;
     };
 
     {
@@ -180,12 +179,12 @@ int main(int argc, char** argv) {
   bool passed(true);
 
   GSTestSuite<1> testsuite1;
-  passed = passed and checkWithStandardGrids(testsuite1);
+  passed &= checkWithStandardGrids(testsuite1);
 
   std::cout << std::endl;
 
   GSTestSuite<2> testsuite2;
-  passed = passed and checkWithStandardGrids(testsuite2);
+  passed &= checkWithStandardGrids(testsuite2);
 
   return passed ? 0 : 1;
 }
-- 
GitLab