ultimatepp/bazaar/UnitTest++/TimeConstraint.cpp
mdelfede d2b54f7989 changed svn layout
git-svn-id: svn://ultimatepp.org/upp/trunk@281 f0d560ea-af0d-0410-9eb7-867de7ffcac7
2008-06-07 22:31:27 +00:00

28 lines
661 B
C++

#include "TimeConstraint.h"
#include "TestResults.h"
#include "MemoryOutStream.h"
namespace UnitTest {
TimeConstraint::TimeConstraint(int ms, TestResults& result, TestDetails const& details)
: m_result(result)
, m_details(details)
, m_maxMs(ms)
{
m_timer.Start();
}
TimeConstraint::~TimeConstraint()
{
int 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.";
m_result.OnTestFailure(m_details, stream.GetText());
}
}
}