45 lines
1.0 KiB
C++
45 lines
1.0 KiB
C++
#define CODE_ERROR_LOCATIONS
|
|
|
|
#include "Errors.hpp"
|
|
#include <gtest/gtest.h>
|
|
#include <iostream>
|
|
#include "Logger.hpp"
|
|
|
|
using namespace nb;
|
|
|
|
class TestError : public ErrorBase<TestError> {
|
|
public:
|
|
using ErrorBase<TestError>::ErrorBase;
|
|
|
|
enum ErrorCodes : unsigned int {
|
|
A, B, C, D
|
|
};
|
|
static const std::string type;
|
|
static const ErrorCodeMap ErrorMessages;
|
|
};
|
|
|
|
const std::string TestError::type="TestError";
|
|
const ErrorCodeMap TestError::ErrorMessages{
|
|
{TestError::ErrorCodes::A, "Hey!"},
|
|
{TestError::ErrorCodes::B, "How"},
|
|
{TestError::ErrorCodes::C, "You"},
|
|
{TestError::ErrorCodes::D, "Doin"}
|
|
};
|
|
|
|
class TestLogger : public nb::LoggerBase<TestLogger> {
|
|
public:
|
|
using Base = LoggerBase<TestLogger>;
|
|
using Base::Base;
|
|
|
|
virtual void process(const LogEvent& event) {
|
|
*_ostreams[0] << event.pid << " : " << event.msg << std::endl;
|
|
}
|
|
};
|
|
|
|
TEST(ErrorTest, Test) {
|
|
EXPECT_EQ(1, 1);
|
|
|
|
TestLogger log(std::cout);
|
|
ASSERT_TRUE(log.run());
|
|
log.msg("Hey!");
|
|
} |