Exemplo n.º 1
0
int
main( int argc, char * argv[] )
{
  
  Log log( "App.log", LogLevel::All );
  
  LogIf( log, LogLevel::Info ) << "This is an info entry." << endl;

  log.tee( cerr );

  LogIf( log, LogLevel::Error )
    << "This is an error entry" << endl;
  
  log << "This is more of the same error entry" << endl;
  
  return( 0 );
	    
}
Exemplo n.º 2
0
void TestLogMacro(LogMacroType logType, unsigned long logLevel) {
    std::string inputlog = std::to_string(logLevel)+"logmacrotest"+std::to_string(logLevel);

    switch (logType) {
        case IF: {
            LogIf(false, logLevel, test_log);
            EXPECT_EQ(0, test_count);
            LogIf(true, logLevel, test_log);
            EXPECT_EQ(1, test_count);
            LogIf(false, logLevel, test_log);
            EXPECT_EQ(1, test_count);
            LogIf(true, logLevel, inputlog);
            EXPECT_EQ(2, test_count);
            EXPECT_NE(std::string::npos, test_log.find(inputlog));
            break;
        }
        case EVERY_N: {
            LoglogN(logLevel, inputlog);
            EXPECT_EQ(logLevel, test_level);
            EXPECT_NE(std::string::npos, test_log.find(inputlog));
            LoglogN(logLevel, inputlog);
            EXPECT_EQ(1, test_count);
            LoglogN(logLevel, inputlog);
            EXPECT_EQ(2, test_count);
            break;
        }
        case IF_EVERY_N: {
            LogIflogN(true, logLevel, inputlog);
            EXPECT_EQ(logLevel, test_level);
            EXPECT_NE(std::string::npos, test_log.find(inputlog));
            LogIflogN(true, logLevel, inputlog);
            EXPECT_EQ(1, test_count);
            LogIflogN(true, logLevel, inputlog);
            EXPECT_EQ(2, test_count);
            std::string notexistLog = inputlog+"notexist";
            LogIflogN(false, logLevel, notexistLog);
            EXPECT_EQ(std::string::npos, test_log.find("notexist"));
            EXPECT_EQ(2, test_count);
            break;
        }
        case FIRST_N: {
            LogFirstN(logLevel, inputlog);
            EXPECT_EQ(logLevel, test_level);
            EXPECT_NE(std::string::npos, test_log.find(inputlog));
            LogFirstN(logLevel, inputlog);
            EXPECT_EQ(2, test_count);
            LogFirstN(logLevel, inputlog);
            EXPECT_EQ(2, test_count);
            break;
        }
        case IF_EX: {
            LogIf_EX(false, logLevel, test_log);
            EXPECT_EQ(0, test_count);
            LogIf_EX(true, logLevel, test_log);
            EXPECT_EQ(1, test_count);
            EXPECT_NE(std::string::npos, test_log.find(exModule));
            LogIf_EX(false, logLevel, test_log);
            EXPECT_EQ(1, test_count);
            LogIf_EX(true, logLevel, inputlog);
            EXPECT_EQ(2, test_count);
            EXPECT_NE(std::string::npos, test_log.find(inputlog));
            break;
        }
        case EVERY_N_EX: {
            LoglogN_EX(logLevel, inputlog);
            EXPECT_EQ(logLevel, test_level);
            EXPECT_NE(std::string::npos, test_log.find(inputlog));
            LoglogN_EX(logLevel, inputlog);
            EXPECT_EQ(1, test_count);
            EXPECT_NE(std::string::npos, test_log.find(exModule));
            LoglogN_EX(logLevel, inputlog);
            EXPECT_EQ(2, test_count);
            break;
        }
        case IF_EVERY_N_EX: {
            LogIflogN_EX(true, logLevel, inputlog);
            EXPECT_EQ(logLevel, test_level);
            EXPECT_NE(std::string::npos, test_log.find(inputlog));
            LogIflogN_EX(true, logLevel, inputlog);
            EXPECT_EQ(1, test_count);
            EXPECT_NE(std::string::npos, test_log.find(exModule));
            LogIflogN_EX(true, logLevel, inputlog);
            EXPECT_EQ(2, test_count);
            std::string notexistLog = inputlog+"notexist";
            LogIflogN_EX(false, logLevel, notexistLog);
            EXPECT_EQ(std::string::npos, test_log.find("notexist"));
            EXPECT_EQ(2, test_count);
            break;
        }
        case FIRST_N_EX: {
            LogFirstN_EX(logLevel, inputlog);
            EXPECT_EQ(logLevel, test_level);
            EXPECT_NE(std::string::npos, test_log.find(inputlog));
            EXPECT_NE(std::string::npos, test_log.find(exModule));
            LogFirstN_EX(logLevel, inputlog);
            EXPECT_EQ(2, test_count);
            LogFirstN_EX(logLevel, inputlog);
            EXPECT_EQ(2, test_count);
            break;
        }
    }
}