1 #ifndef UNITTEST_TEST_H
2 #define UNITTEST_TEST_H
3 
4 #include "TestDetails.h"
5 
6 namespace UnitTest {
7 
8 class TestResults;
9 class TestList;
10 
11 class UNITTEST_LINKAGE Test
12 {
13 public:
14     explicit Test(char const* testName, char const* suiteName = "DefaultSuite", char const* filename = "", int lineNumber = 0);
15     virtual ~Test();
16     void Run();
17 
18     TestDetails const m_details;
19     Test* m_nextTest;
20 
21 	mutable bool m_isMockTest;
22 
23     static TestList& GetTestList();
24 
25     virtual void RunImpl() const;
26 
27 private:
28 	Test(Test const&);
29     Test& operator =(Test const&);
30 };
31 
32 
33 }
34 
35 #endif
36