Bitcoin Core 28.99.0
P2P Digital Currency
logging.h
Go to the documentation of this file.
1// Copyright (c) 2019-2022 The Bitcoin Core developers
2// Distributed under the MIT software license, see the accompanying
3// file COPYING or http://www.opensource.org/licenses/mit-license.php.
4
5#ifndef BITCOIN_TEST_UTIL_LOGGING_H
6#define BITCOIN_TEST_UTIL_LOGGING_H
7
8#include <util/macros.h>
9
10#include <functional>
11#include <list>
12#include <string>
13
15{
16 const std::string m_message;
17 bool m_found{false};
18 std::list<std::function<void(const std::string&)>>::iterator m_print_connection;
19
29 using MatchFn = std::function<bool(const std::string* line)>;
31
32 void check_found();
33
34public:
35 explicit DebugLogHelper(std::string message, MatchFn match = [](const std::string*){ return true; });
37};
38
39#define ASSERT_DEBUG_LOG(message) DebugLogHelper UNIQUE_NAME(debugloghelper)(message)
40
41#endif // BITCOIN_TEST_UTIL_LOGGING_H
std::list< std::function< void(conststd::string &)> >::iterator m_print_connection
Definition: logging.h:18
std::function< bool(const std::string *line)> MatchFn
Custom match checking function.
Definition: logging.h:29
MatchFn m_match
Definition: logging.h:30
~DebugLogHelper()
Definition: logging.h:36
DebugLogHelper(std::string message, MatchFn match=[](const std::string *){ return true;})
Definition: logging.cpp:13
void check_found()
Definition: logging.cpp:24
const std::string m_message
Definition: logging.h:16
bool m_found
Definition: logging.h:17