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

summaryrefslogtreecommitdiffhomepage
path: root/benchmarks/assertion_listener.cpp
blob: 1b7d0cad60e6eea686cc51a4f89b7373bb1476a9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

//              Copyright Catch2 Authors
// Distributed under the Boost Software License, Version 1.0.
//   (See accompanying file LICENSE.txt or copy at
//        https://www.boost.org/LICENSE_1_0.txt)

// SPDX-License-Identifier: BSL-1.0

#include <Progmasoft/Catch3/Reporters/EventListener.hpp>
#include <Progmasoft/Catch3/Reporters/Registrars.hpp>

/**
 * Event listener that listens to all assertions, forcing assertion slow path
 */
namespace {
class AssertionSlowPathListener : public Catch::EventListenerBase {
public:
    static std::string getDescription() {
        return "Validates ordering of Catch2's listener events";
    }

    AssertionSlowPathListener(Catch::IConfig const* config) :
        EventListenerBase(config) {
        m_preferences.shouldReportAllAssertions = true;
        m_preferences.shouldReportAllAssertionStarts = true;
    }
};

CATCH_REGISTER_LISTENER( AssertionSlowPathListener )
}