Read-only mirrors. Development, issues and pull requests are on GitHub.

summaryrefslogtreecommitdiffhomepage
path: root/include/internal/catch_run_context.cpp
diff options
context:
space:
mode:
authorNeal Coombes2017-06-26 14:30:23 -0500
committerMartin Hořeňovský2017-08-01 22:49:27 +0200
commit2212cdfe26415586c06e379a2400b1ee171382d3 (patch)
tree38b4de9769d8e079b73d1207e93889b723ce6a29 /include/internal/catch_run_context.cpp
parent28741467d51bbe84cc299b2b5de8c6ed80bcdad8 (diff)
downloadcatch3-2212cdfe26415586c06e379a2400b1ee171382d3.tar.gz
Eliminate some work when results won't be reported.
Diffstat (limited to 'include/internal/catch_run_context.cpp')
-rw-r--r--include/internal/catch_run_context.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/include/internal/catch_run_context.cpp b/include/internal/catch_run_context.cpp
index 31d6b8a6..bfde432b 100644
--- a/include/internal/catch_run_context.cpp
+++ b/include/internal/catch_run_context.cpp
@@ -213,6 +213,20 @@ namespace Catch {
m_reporter->testRunEnded(TestRunStats(m_runInfo, m_totals, false));
}
+ bool RunContext::lastAssertionPassed() {
+ return m_totals.assertions.passed == (m_prevPassed + 1);
+ }
+
+ void RunContext::assertionPassed() {
+ ++m_totals.assertions.passed;
+ m_lastAssertionInfo.capturedExpression = "{Unknown expression after the reported line}";
+ m_lastAssertionInfo.macroName = "";
+ }
+
+ void RunContext::assertionRun() {
+ m_prevPassed = m_totals.assertions.passed;
+ }
+
bool RunContext::aborting() const {
return m_totals.assertions.failed == static_cast<std::size_t>(m_config->abortAfter());
}