Refactored duplicated code between acceptExpression() and acceptResult()

This commit is contained in:
Phil Nash 2011-03-15 18:01:44 +00:00
parent 4890a1d80a
commit 3eb41eed6d

View File

@ -406,17 +406,7 @@ namespace Catch
) )
{ {
m_currentResult.setResultType( result ); m_currentResult.setResultType( result );
testEnded( m_currentResult ); return actOnCurrentResult();
bool ok = m_currentResult.ok();
m_currentResult = MutableResultInfo();
if( ok )
return ResultAction::None;
else if( shouldDebugBreak() )
return ResultAction::DebugFailed;
else
return ResultAction::Failed;
} }
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
@ -426,16 +416,7 @@ namespace Catch
) )
{ {
m_currentResult = resultInfo; m_currentResult = resultInfo;
testEnded( m_currentResult ); return actOnCurrentResult();
bool ok = m_currentResult.ok();
m_currentResult = MutableResultInfo();
if( ok )
return ResultAction::None;
else if( shouldDebugBreak() )
return ResultAction::DebugFailed;
else
return ResultAction::Failed;
} }
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
@ -544,6 +525,22 @@ namespace Catch
private: private:
///////////////////////////////////////////////////////////////////////////
ResultAction::Value actOnCurrentResult
()
{
testEnded( m_currentResult );
bool ok = m_currentResult.ok();
m_currentResult = MutableResultInfo();
if( ok )
return ResultAction::None;
else if( shouldDebugBreak() )
return ResultAction::DebugFailed;
else
return ResultAction::Failed;
}
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
void runCurrentTest void runCurrentTest
( (