G+Smo  24.08.0
Geometry + Simulation Modules
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CompositeTestReporter.h
1 #ifndef UNITTEST_COMPOSITETESTREPORTER_H
2 #define UNITTEST_COMPOSITETESTREPORTER_H
3 
4 #include "TestReporter.h"
5 
6 namespace UnitTest {
7 
8 class UNITTEST_LINKAGE CompositeTestReporter : public TestReporter
9 {
10 public:
11  CompositeTestReporter();
12 
13  int GetReporterCount() const;
14  bool AddReporter(TestReporter* reporter);
15  bool RemoveReporter(TestReporter* reporter);
16 
17  virtual void ReportTestStart(TestDetails const& test);
18  virtual void ReportFailure(TestDetails const& test, char const* failure);
19  virtual void ReportTestFinish(TestDetails const& test, float secondsElapsed);
20  virtual void ReportSummary(int totalTestCount, int failedTestCount, int failureCount, float secondsElapsed);
21 
22 private:
23  enum { kMaxReporters = 16 };
24  TestReporter* m_reporters[kMaxReporters];
25  int m_reporterCount;
26 
27  // revoked
28  CompositeTestReporter(const CompositeTestReporter&);
29  CompositeTestReporter& operator =(const CompositeTestReporter&);
30 };
31 
32 }
33 
34 #endif