mirror of
https://github.com/catchorg/Catch2.git
synced 2024-12-22 19:33:29 +01:00
Passthrough stdout/err in multireporter's partial test end
This should provide the same overall stdout/err, but the new output should feel "faster" for test cases that are entered and exited multiple times (e.g. due to generators).
This commit is contained in:
parent
93882f7fab
commit
b5547f2ef6
@ -136,21 +136,22 @@ namespace Catch {
|
||||
|
||||
void ListeningReporter::testCasePartialEnded( TestCaseStats const& testStats,
|
||||
uint64_t partNumber ) {
|
||||
// TODO: Fix handling of stderr/stdout?
|
||||
if ( m_preferences.shouldRedirectStdOut &&
|
||||
m_haveNoncapturingReporters ) {
|
||||
if ( !testStats.stdOut.empty() ) {
|
||||
Catch::cout() << testStats.stdOut << std::flush;
|
||||
}
|
||||
if ( !testStats.stdErr.empty() ) {
|
||||
Catch::cerr() << testStats.stdErr << std::flush;
|
||||
}
|
||||
}
|
||||
|
||||
for ( auto& reporterish : m_reporterLikes ) {
|
||||
reporterish->testCasePartialEnded( testStats, partNumber );
|
||||
}
|
||||
}
|
||||
|
||||
void ListeningReporter::testCaseEnded( TestCaseStats const& testCaseStats ) {
|
||||
if ( m_preferences.shouldRedirectStdOut && m_haveNoncapturingReporters ) {
|
||||
if ( !testCaseStats.stdOut.empty() ) {
|
||||
Catch::cout() << testCaseStats.stdOut << std::flush;
|
||||
}
|
||||
if ( !testCaseStats.stdErr.empty() ) {
|
||||
Catch::cerr() << testCaseStats.stdErr << std::flush;
|
||||
}
|
||||
}
|
||||
for ( auto& reporterish : m_reporterLikes ) {
|
||||
reporterish->testCaseEnded( testCaseStats );
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user