From b9339333df07c6ff3c13e8df5a8335397397258b Mon Sep 17 00:00:00 2001 From: Neal Coombes Date: Wed, 15 Nov 2017 14:43:43 -0600 Subject: [PATCH] Performance improvement Begin to address #1086 Brings test from 2m51.072s to 1m15.661s --- include/internal/catch_assertionhandler.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/include/internal/catch_assertionhandler.cpp b/include/internal/catch_assertionhandler.cpp index 0eed7cd9..3465269f 100644 --- a/include/internal/catch_assertionhandler.cpp +++ b/include/internal/catch_assertionhandler.cpp @@ -72,6 +72,13 @@ namespace Catch { bool negated = isFalseTest( m_assertionInfo.resultDisposition ); bool result = expr.getResult() != negated; + if(result && !getCurrentContext().getConfig()->includeSuccessfulResults()) + { + getCurrentContext().getResultCapture()->assertionRun(); + getCurrentContext().getResultCapture()->assertionPassed(); + return; + } + handle( result ? ResultWas::Ok : ResultWas::ExpressionFailed, &expr, negated ); } void AssertionHandler::handle( ResultWas::OfType resultType ) {