Public Member Functions | Private Attributes | List of all members
pilz_testutils::LoggerMock Class Reference

Class to be used in tests with logging checks. More...

#include <logger_mock.h>

Public Member Functions

 LoggerMock (const std::string &logger_name=ROSCONSOLE_ROOT_LOGGER_NAME)
 
MockAppenderoperator* ()
 
 ~LoggerMock ()
 

Private Attributes

MockAppendermock_appender_ { new MockAppender() }
 
log4cxx::LoggerPtr ros_root_logger_
 

Detailed Description

Class to be used in tests with logging checks.

With deletion of this class the internal logging mechanism is detached.

Usage

EXPECT_LOG(*mock_logger, WARN, "Your warning text").Times(1);
function_causing_warning();


Asynchronous usage in combination with testing::AsyncTest

const std::string LOG_MSG_RECEIVED_EVENT{ "logger_called_event" };
EXPECT_LOG(*mock_logger, WARN, "Your warning text")
.WillOnce(ACTION_OPEN_BARRIER_VOID(LOG_MSG_RECEIVED_EVENT));
function_causing_async_warning();
BARRIER(LOG_MSG_RECEIVED_EVENT); // Wait till log message is received

Definition at line 67 of file logger_mock.h.

Constructor & Destructor Documentation

◆ LoggerMock()

pilz_testutils::LoggerMock::LoggerMock ( const std::string &  logger_name = ROSCONSOLE_ROOT_LOGGER_NAME)
inline

Definition at line 86 of file logger_mock.h.

◆ ~LoggerMock()

pilz_testutils::LoggerMock::~LoggerMock ( )
inline

Definition at line 92 of file logger_mock.h.

Member Function Documentation

◆ operator*()

MockAppender & pilz_testutils::LoggerMock::operator* ( )
inline

Definition at line 97 of file logger_mock.h.

Member Data Documentation

◆ mock_appender_

MockAppender* pilz_testutils::LoggerMock::mock_appender_ { new MockAppender() }
private

Definition at line 83 of file logger_mock.h.

◆ ros_root_logger_

log4cxx::LoggerPtr pilz_testutils::LoggerMock::ros_root_logger_
private

Definition at line 77 of file logger_mock.h.


The documentation for this class was generated from the following file:


pilz_testutils
Author(s):
autogenerated on Mon Feb 28 2022 23:13:41