- #ifndef UNITTEST_SCOPEDCURRENTTEST_H 
- #define UNITTEST_SCOPEDCURRENTTEST_H 
-   
- #include "UnitTest++/CurrentTest.h" 
- #include <cstddef> 
-   
- class ScopedCurrentTest 
- { 
- public: 
-    ScopedCurrentTest() 
-       : m_oldTestResults(UnitTest::CurrentTest::Results()) 
-       , m_oldTestDetails(UnitTest::CurrentTest::Details()) 
-    {} 
-   
-    explicit ScopedCurrentTest(UnitTest::TestResults& newResults, const UnitTest::TestDetails* newDetails = NULL) 
-       : m_oldTestResults(UnitTest::CurrentTest::Results()) 
-       , m_oldTestDetails(UnitTest::CurrentTest::Details()) 
-    { 
-       UnitTest::CurrentTest::Results() = &newResults; 
-   
-       if (newDetails != NULL) 
-       { 
-          UnitTest::CurrentTest::Details() = newDetails; 
-       } 
-    } 
-   
-    ~ScopedCurrentTest() 
-    { 
-       UnitTest::CurrentTest::Results() = m_oldTestResults; 
-       UnitTest::CurrentTest::Details() = m_oldTestDetails; 
-    } 
-   
- private: 
-    UnitTest::TestResults* m_oldTestResults; 
-    const UnitTest::TestDetails* m_oldTestDetails; 
- }; 
-   
- #endif 
-