- #ifndef UNITTEST_TIMECONSTRAINT_H 
- #define UNITTEST_TIMECONSTRAINT_H 
-   
- #include "TimeHelpers.h" 
- #include "HelperMacros.h" 
- #include "TestDetails.h" 
-   
- namespace UnitTest { 
-   
-    class TestResults; 
-   
-    class UNITTEST_LINKAGE TimeConstraint 
-    { 
-    public: 
-       TimeConstraint(int ms, TestDetails const& details, int lineNumber); 
-       ~TimeConstraint(); 
-   
-    private: 
-       void operator=(TimeConstraint const&); 
-       TimeConstraint(TimeConstraint const&); 
-   
-       Timer m_timer; 
-       TestDetails const m_details; 
-       int const m_maxMs; 
-    }; 
-   
-    #define UNITTEST_TIME_CONSTRAINT(ms) \ 
-       UnitTest::TimeConstraint unitTest__timeConstraint__(ms, m_details, __LINE__) 
-   
-    #define UNITTEST_TIME_CONSTRAINT_EXEMPT() \ 
-       UNITTEST_MULTILINE_MACRO_BEGIN         \ 
-       m_details.timeConstraintExempt = true; \ 
-       UNITTEST_MULTILINE_MACRO_END 
-   
- } 
-   
- #endif 
-