| #ifndef UNITTEST_COMPOSITETESTREPORTER_H |
| #define UNITTEST_COMPOSITETESTREPORTER_H |
| |
| #include "TestReporter.h" |
| |
| namespace UnitTest { |
| |
| class UNITTEST_LINKAGE CompositeTestReporter : public TestReporter |
| { |
| public: |
| CompositeTestReporter(); |
| |
| int GetReporterCount() const; |
| bool AddReporter(TestReporter* reporter); |
| bool RemoveReporter(TestReporter* reporter); |
| |
| virtual void ReportTestStart(TestDetails const& test); |
| virtual void ReportFailure(TestDetails const& test, char const* failure); |
| virtual void ReportTestFinish(TestDetails const& test, float secondsElapsed); |
| virtual void ReportSummary(int totalTestCount, int failedTestCount, int failureCount, float secondsElapsed); |
| |
| private: |
| enum { kMaxReporters = 16 }; |
| TestReporter* m_reporters[kMaxReporters]; |
| int m_reporterCount; |
| |
| // revoked |
| CompositeTestReporter(const CompositeTestReporter&); |
| CompositeTestReporter& operator =(const CompositeTestReporter&); |
| }; |
| |
| } |
| |
| #endif |