Flush tests stdout 18/207218/1
authorKrzysztof Jackiewicz <k.jackiewicz@samsung.com>
Thu, 9 May 2019 12:03:23 +0000 (14:03 +0200)
committerKrzysztof Jackiewicz <k.jackiewicz@samsung.com>
Thu, 30 May 2019 10:18:22 +0000 (12:18 +0200)
Tests output is displayed in batches making it difficult to observe
the progress. This commit introduces flushing the stdout after every
printf to overcome the problem.

Change-Id: I84174a15e7bf797080b4f830fe5adaa3e48f6b26

src/framework/src/test_results_collector_console.cpp

index dab84f8..796fb4e 100644 (file)
@@ -21,6 +21,8 @@
  * @brief       Source file containing ConsoleCollector class definition
  */
 
+#include <cstdio>
+
 #include <fstream>
 #include <sstream>
 
@@ -56,6 +58,7 @@ std::string ConsoleCollector::CollectorSpecificHelp() const
 void ConsoleCollector::CollectCurrentTestGroupName(const std::string& name)
 {
     printf("Starting group %s\n", name.c_str());
+    fflush(stdout);
     m_currentGroup = name;
 }
 
@@ -68,6 +71,7 @@ void ConsoleCollector::Finish()
         PrintStats(group.first, group.second);
     }
     PrintStats("All tests together", m_stats);
+    fflush(stdout);
 }
 
 void ConsoleCollector::CollectResult(const std::string& id, const TestResult &result)
@@ -109,6 +113,7 @@ void ConsoleCollector::CollectResult(const std::string& id, const TestResult &re
     default:
         Assert(false && "Bad status");
     }
+    fflush(stdout);
     m_stats.AddTest(result.GetFailStatus());
     m_groupsStats[m_currentGroup].AddTest(result.GetFailStatus());
 }