summaryrefslogtreecommitdiff
path: root/libs/ode-0.16.1/tests/UnitTest++/src/TimeConstraint.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ode-0.16.1/tests/UnitTest++/src/TimeConstraint.cpp')
-rw-r--r--libs/ode-0.16.1/tests/UnitTest++/src/TimeConstraint.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/libs/ode-0.16.1/tests/UnitTest++/src/TimeConstraint.cpp b/libs/ode-0.16.1/tests/UnitTest++/src/TimeConstraint.cpp
new file mode 100644
index 0000000..451c2b3
--- /dev/null
+++ b/libs/ode-0.16.1/tests/UnitTest++/src/TimeConstraint.cpp
@@ -0,0 +1,28 @@
+#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());
+ }
+}
+
+}