| 1234567891011121314151617181920212223242526272829 |
- #include "TimeConstraint.h"
- #include "TestResults.h"
- #include "MemoryOutStream.h"
- #include "CurrentTest.h"
- namespace UnitTest {
- TimeConstraint::TimeConstraint(int ms, TestDetails const& details)
- : m_details(details)
- , m_maxMs(ms)
- {
- m_timer.Start();
- }
- TimeConstraint::~TimeConstraint()
- {
- double const totalTimeInMs = m_timer.GetTimeInMs();
- if (totalTimeInMs > m_maxMs)
- {
- MemoryOutStream stream;
- stream << "Time constraint failed. Expected to run test under " << m_maxMs <<
- "ms but took " << totalTimeInMs << "ms.";
- UnitTest::CurrentTest::Results()->OnTestFailure(m_details, stream.GetText());
- }
- }
- }
|