From 21b80c8b0bd7f1c5fc81e9b279aeb524b6a04a42 Mon Sep 17 00:00:00 2001
From: Etienne Kneuss <colder@php.net>
Date: Fri, 11 Apr 2014 20:27:28 +0200
Subject: [PATCH] Making sure all errors are kept

---
 src/test/scala/leon/test/LeonTestSuite.scala      | 2 +-
 src/test/scala/leon/test/TestSilentReporter.scala | 5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/test/scala/leon/test/LeonTestSuite.scala b/src/test/scala/leon/test/LeonTestSuite.scala
index 0da9e68bb..fec6f08f9 100644
--- a/src/test/scala/leon/test/LeonTestSuite.scala
+++ b/src/test/scala/leon/test/LeonTestSuite.scala
@@ -112,7 +112,7 @@ trait LeonTestSuite extends FunSuite with Timeouts with BeforeAndAfterEach {
           case fe: LeonFatalError =>
           testContext.reporter match {
             case sr: TestSilentReporter =>
-              throw new TestFailedException(sr.lastError.getOrElse("Some error"), fe, 5)
+              throw new TestFailedException(sr.lastErrors.mkString("\n"), fe, 5)
           }
         }
       }
diff --git a/src/test/scala/leon/test/TestSilentReporter.scala b/src/test/scala/leon/test/TestSilentReporter.scala
index de20f1085..7f2fb45ae 100644
--- a/src/test/scala/leon/test/TestSilentReporter.scala
+++ b/src/test/scala/leon/test/TestSilentReporter.scala
@@ -4,10 +4,11 @@ package leon
 package test
 
 class TestSilentReporter extends DefaultReporter(Settings()) {
-  var lastError: Option[String] = None
+  var lastErrors: List[String] = Nil
 
   override def emit(msg: Message): Unit = msg match { 
-    case Message(this.ERROR, _, msg) => lastError = Some(msg.toString)
+    case Message(this.ERROR, _, msg) => lastErrors ++= List(msg.toString)
+    case Message(this.FATAL, _, msg) => lastErrors ++= List(msg.toString)
     case _ =>
   }
 }
-- 
GitLab