Class AssertionHandler

Synopsis

#include <include/internal/catch_assertionhandler.h>

class AssertionHandler

Description

No description yet.

Methods

AssertionHandler
~AssertionHandler
allowThrows
complete
handleExceptionNotThrownAsExpected
handleExceptionThrownAsExpected
handleExpr overload
handleMessage
handleThrowingCallSkipped
handleUnexpectedExceptionNotThrown
handleUnexpectedInflightException
setCompleted

Source

Lines 44-82 in include/internal/catch_assertionhandler.h.

class AssertionHandler {
    AssertionInfo m_assertionInfo;
    AssertionReaction m_reaction;
    bool m_completed = false;
    IResultCapture& m_resultCapture;
public:
    AssertionHandler
        (   StringRef const& macroName,
            SourceLineInfo const& lineInfo,
            StringRef capturedExpression,
            ResultDisposition::Flags resultDisposition );
    ~AssertionHandler() {
        if ( !m_completed ) {
            m_resultCapture.handleIncomplete( m_assertionInfo );
        }
    }
    template<typename T>
    void handleExpr( ExprLhs<T> const& expr ) {
        handleExpr( expr.makeUnaryExpr() );
    }
    void handleExpr( ITransientExpression const& expr );
    void handleMessage(ResultWas::OfType resultType, StringRef const& message);
    void handleExceptionThrownAsExpected();
    void handleUnexpectedExceptionNotThrown();
    void handleExceptionNotThrownAsExpected();
    void handleThrowingCallSkipped();
    void handleUnexpectedInflightException();
    void complete();
    void setCompleted();
    // query
    auto allowThrows() const -> bool;
};





Add Discussion as Guest

Log in