Mercurial > fife-parpg
comparison ext/UnitTest++/src/tests/RecordingReporter.h @ 37:0d325e9d5953
added unittest++ files into ext. Not hooked into build scripts yet
author | jasoka@33b003aa-7bff-0310-803a-e67f0ece8222 |
---|---|
date | Sat, 12 Jul 2008 12:00:57 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
36:6f1227f4932b | 37:0d325e9d5953 |
---|---|
1 #ifndef UNITTEST_RECORDINGREPORTER_H | |
2 #define UNITTEST_RECORDINGREPORTER_H | |
3 | |
4 #include "../TestReporter.h" | |
5 #include <cstring> | |
6 | |
7 #include "../TestDetails.h" | |
8 | |
9 struct RecordingReporter : public UnitTest::TestReporter | |
10 { | |
11 private: | |
12 enum { kMaxStringLength = 256 }; | |
13 | |
14 public: | |
15 RecordingReporter() | |
16 : testRunCount(0) | |
17 , testFailedCount(0) | |
18 , lastFailedLine(0) | |
19 , testFinishedCount(0) | |
20 , lastFinishedTestTime(0) | |
21 , summaryTotalTestCount(0) | |
22 , summaryFailedTestCount(0) | |
23 , summaryFailureCount(0) | |
24 , summarySecondsElapsed(0) | |
25 { | |
26 lastStartedSuite[0] = '\0'; | |
27 lastStartedTest[0] = '\0'; | |
28 lastFailedFile[0] = '\0'; | |
29 lastFailedSuite[0] = '\0'; | |
30 lastFailedTest[0] = '\0'; | |
31 lastFailedMessage[0] = '\0'; | |
32 lastFinishedSuite[0] = '\0'; | |
33 lastFinishedTest[0] = '\0'; | |
34 } | |
35 | |
36 virtual void ReportTestStart(UnitTest::TestDetails const& test) | |
37 { | |
38 ++testRunCount; | |
39 std::strcpy(lastStartedSuite, test.suiteName); | |
40 std::strcpy(lastStartedTest, test.testName); | |
41 } | |
42 | |
43 virtual void ReportFailure(UnitTest::TestDetails const& test, char const* failure) | |
44 { | |
45 ++testFailedCount; | |
46 std::strcpy(lastFailedFile, test.filename); | |
47 lastFailedLine = test.lineNumber; | |
48 std::strcpy(lastFailedSuite, test.suiteName); | |
49 std::strcpy(lastFailedTest, test.testName); | |
50 std::strcpy(lastFailedMessage, failure); | |
51 } | |
52 | |
53 virtual void ReportTestFinish(UnitTest::TestDetails const& test, float testDuration) | |
54 { | |
55 ++testFinishedCount; | |
56 std::strcpy(lastFinishedSuite, test.suiteName); | |
57 std::strcpy(lastFinishedTest, test.testName); | |
58 lastFinishedTestTime = testDuration; | |
59 } | |
60 | |
61 virtual void ReportSummary(int totalTestCount, int failedTestCount, int failureCount, float secondsElapsed) | |
62 { | |
63 summaryTotalTestCount = totalTestCount; | |
64 summaryFailedTestCount = failedTestCount; | |
65 summaryFailureCount = failureCount; | |
66 summarySecondsElapsed = secondsElapsed; | |
67 } | |
68 | |
69 int testRunCount; | |
70 char lastStartedSuite[kMaxStringLength]; | |
71 char lastStartedTest[kMaxStringLength]; | |
72 | |
73 int testFailedCount; | |
74 char lastFailedFile[kMaxStringLength]; | |
75 int lastFailedLine; | |
76 char lastFailedSuite[kMaxStringLength]; | |
77 char lastFailedTest[kMaxStringLength]; | |
78 char lastFailedMessage[kMaxStringLength]; | |
79 | |
80 int testFinishedCount; | |
81 char lastFinishedSuite[kMaxStringLength]; | |
82 char lastFinishedTest[kMaxStringLength]; | |
83 float lastFinishedTestTime; | |
84 | |
85 int summaryTotalTestCount; | |
86 int summaryFailedTestCount; | |
87 int summaryFailureCount; | |
88 float summarySecondsElapsed; | |
89 }; | |
90 | |
91 | |
92 #endif |