mirror of
https://github.com/catchorg/Catch2.git
synced 2024-11-26 15:26:11 +01:00
c4a089c12b
- also added noimpl option to single header script - which only generates the non impl code
60 lines
2.6 KiB
C++
60 lines
2.6 KiB
C++
/*
|
|
* Created by Phil on 6th April 2013.
|
|
* Copyright 2013 Two Blue Cubes Ltd. All rights reserved.
|
|
*
|
|
* 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)
|
|
*/
|
|
#ifndef TWOBLUECUBES_CATCH_LEGACY_REPORTER_ADAPTER_H_INCLUDED
|
|
#define TWOBLUECUBES_CATCH_LEGACY_REPORTER_ADAPTER_H_INCLUDED
|
|
|
|
#include "catch_interfaces_reporter.h"
|
|
|
|
namespace Catch
|
|
{
|
|
// Deprecated
|
|
struct IReporter : IShared {
|
|
virtual ~IReporter();
|
|
|
|
virtual bool shouldRedirectStdout() const = 0;
|
|
|
|
virtual void StartTesting() = 0;
|
|
virtual void EndTesting( Totals const& totals ) = 0;
|
|
virtual void StartGroup( std::string const& groupName ) = 0;
|
|
virtual void EndGroup( std::string const& groupName, Totals const& totals ) = 0;
|
|
virtual void StartTestCase( TestCaseInfo const& testInfo ) = 0;
|
|
virtual void EndTestCase( TestCaseInfo const& testInfo, Totals const& totals, std::string const& stdOut, std::string const& stdErr ) = 0;
|
|
virtual void StartSection( std::string const& sectionName, std::string const& description ) = 0;
|
|
virtual void EndSection( std::string const& sectionName, Counts const& assertions ) = 0;
|
|
virtual void NoAssertionsInSection( std::string const& sectionName ) = 0;
|
|
virtual void NoAssertionsInTestCase( std::string const& testName ) = 0;
|
|
virtual void Aborted() = 0;
|
|
virtual void Result( AssertionResult const& result ) = 0;
|
|
};
|
|
|
|
class LegacyReporterAdapter : public SharedImpl<IStreamingReporter>
|
|
{
|
|
public:
|
|
LegacyReporterAdapter( Ptr<IReporter> const& legacyReporter );
|
|
virtual ~LegacyReporterAdapter();
|
|
|
|
virtual ReporterPreferences getPreferences() const;
|
|
virtual void noMatchingTestCases( std::string const& );
|
|
virtual void testRunStarting( TestRunInfo const& );
|
|
virtual void testGroupStarting( GroupInfo const& groupInfo );
|
|
virtual void testCaseStarting( TestCaseInfo const& testInfo );
|
|
virtual void sectionStarting( SectionInfo const& sectionInfo );
|
|
virtual void assertionStarting( AssertionInfo const& );
|
|
virtual bool assertionEnded( AssertionStats const& assertionStats );
|
|
virtual void sectionEnded( SectionStats const& sectionStats );
|
|
virtual void testCaseEnded( TestCaseStats const& testCaseStats );
|
|
virtual void testGroupEnded( TestGroupStats const& testGroupStats );
|
|
virtual void testRunEnded( TestRunStats const& testRunStats );
|
|
|
|
private:
|
|
Ptr<IReporter> m_legacyReporter;
|
|
};
|
|
}
|
|
|
|
#endif // TWOBLUECUBES_CATCH_LEGACY_REPORTER_ADAPTER_H_INCLUDED
|