1 #ifndef TRACKEDTESTCASE_H
2 #define TRACKEDTESTCASE_H
3 
4 #include <cppunit/TestCase.h>
5 
6 
7 class Tracker
8 {
9 public:
~Tracker()10   virtual ~Tracker() {}
11 
onConstructor()12   virtual void onConstructor() {}
onDestructor()13   virtual void onDestructor() {}
onSetUp()14   virtual void onSetUp() {}
onTearDown()15   virtual void onTearDown() {}
onTest()16   virtual void onTest() {};
17 };
18 
19 
20 class TrackedTestCase : public CPPUNIT_NS::TestCase
21 {
22 public:
23   TrackedTestCase();
24 
25   virtual ~TrackedTestCase();
26 
27   virtual void setUp();
28   virtual void tearDown();
29 
30   void test();
31 
32   static void setTracker( Tracker *tracker );
33   static void removeTracker();
34 
35 private:
36   TrackedTestCase( const TrackedTestCase &copy );
37 
38   void operator =( const TrackedTestCase &copy );
39 
40 private:
41   static Tracker *ms_tracker;
42 };
43 
44 
45 #endif  // TRACKEDTESTCASE_H
46