| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 | /* *  Created by Martin on 19/07/2017. * *  Distributed under the Boost Software License, Version 1.0. (See accompanying *  file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) */#include "catch_interfaces_reporter.h"#include "../reporters/catch_reporter_listening.h"namespace Catch {    ReporterConfig::ReporterConfig( IConfigPtr const& _fullConfig )    :   m_stream( &_fullConfig->stream() ), m_fullConfig( _fullConfig ) {}    ReporterConfig::ReporterConfig( IConfigPtr const& _fullConfig, std::ostream& _stream )    :   m_stream( &_stream ), m_fullConfig( _fullConfig ) {}    std::ostream& ReporterConfig::stream() const { return *m_stream; }    IConfigPtr ReporterConfig::fullConfig() const { return m_fullConfig; }    TestRunInfo::TestRunInfo( std::string const& _name ) : name( _name ) {}    GroupInfo::GroupInfo(  std::string const& _name,                           std::size_t _groupIndex,                           std::size_t _groupsCount )    :   name( _name ),        groupIndex( _groupIndex ),        groupsCounts( _groupsCount )    {}     AssertionStats::AssertionStats( AssertionResult const& _assertionResult,                                     std::vector<MessageInfo> const& _infoMessages,                                     Totals const& _totals )    :   assertionResult( _assertionResult ),        infoMessages( _infoMessages ),        totals( _totals )    {        assertionResult.m_resultData.lazyExpression.m_transientExpression = _assertionResult.m_resultData.lazyExpression.m_transientExpression;        if( assertionResult.hasMessage() ) {            // Copy message into messages list.            // !TBD This should have been done earlier, somewhere            MessageBuilder builder( assertionResult.getTestMacroName(), assertionResult.getSourceInfo(), assertionResult.getResultType() );            builder << assertionResult.getMessage();            builder.m_info.message = builder.m_stream.str();            infoMessages.push_back( builder.m_info );        }    }     AssertionStats::~AssertionStats() = default;    SectionStats::SectionStats(  SectionInfo const& _sectionInfo,                                 Counts const& _assertions,                                 double _durationInSeconds,                                 bool _missingAssertions )    :   sectionInfo( _sectionInfo ),        assertions( _assertions ),        durationInSeconds( _durationInSeconds ),        missingAssertions( _missingAssertions )    {}    SectionStats::~SectionStats() = default;    TestCaseStats::TestCaseStats(  TestCaseInfo const& _testInfo,                                   Totals const& _totals,                                   std::string const& _stdOut,                                   std::string const& _stdErr,                                   bool _aborting )    : testInfo( _testInfo ),        totals( _totals ),        stdOut( _stdOut ),        stdErr( _stdErr ),        aborting( _aborting )    {}    TestCaseStats::~TestCaseStats() = default;    TestGroupStats::TestGroupStats( GroupInfo const& _groupInfo,                                    Totals const& _totals,                                    bool _aborting )    :   groupInfo( _groupInfo ),        totals( _totals ),        aborting( _aborting )    {}    TestGroupStats::TestGroupStats( GroupInfo const& _groupInfo )    :   groupInfo( _groupInfo ),        aborting( false )    {}    TestGroupStats::~TestGroupStats() = default;    TestRunStats::TestRunStats(   TestRunInfo const& _runInfo,                    Totals const& _totals,                    bool _aborting )    :   runInfo( _runInfo ),        totals( _totals ),        aborting( _aborting )    {}    TestRunStats::~TestRunStats() = default;    void IStreamingReporter::fatalErrorEncountered( StringRef ) {}    bool IStreamingReporter::isMulti() const { return false; }    IReporterFactory::~IReporterFactory() = default;    IReporterRegistry::~IReporterRegistry() = default;} // end namespace Catch
 |