#include #include "ICOMETLog.hxx" #include "HEPUnits.hxx" // Test COMET::ICOMETLog and friends. int main (int argc, char **argv) { COMET::ICOMETLog::Configure(); COMETError("An Error Message " << "with a streamed integer " << 42); COMETLog("A Log Message " << "with a streamed integer " << 42); //////////////////////////////////////////////////////// // Test the debugging levels. //////////////////////////////////////////////////////// COMET::ICOMETLog::SetDebugLevel(COMET::ICOMETLog::SilentLevel); COMETError("An error message that should be printed"); COMET::ICOMETLog::SetDebugLevel(COMET::ICOMETLog::ErrorLevel); COMETError("An error message that should be printed"); COMETSevere("A SEVERE MESSAGE THAT SHOULD NOT BE PRINTED"); COMET::ICOMETLog::SetDebugLevel(COMET::ICOMETLog::SevereLevel); COMETSevere("A severe message that should be printed"); COMETWarn("A WARN MESSAGE THAT SHOULD NOT BE PRINTED"); COMET::ICOMETLog::SetDebugLevel(COMET::ICOMETLog::WarnLevel); COMETWarn("A warn message that should be printed"); COMETDebug("A DEBUG MESSAGE THAT SHOULD NOT BE PRINTED"); COMET::ICOMETLog::SetDebugLevel(COMET::ICOMETLog::DebugLevel); COMETDebug("A debug message that should be printed"); COMETTrace("A TRACE MESSAGE THAT SHOULD NOT BE PRINTED"); COMET::ICOMETLog::SetDebugLevel(COMET::ICOMETLog::TraceLevel); COMETTrace("A trace message that should be printed"); //////////////////////////////////////////////////////// // Test the named debugging levels. //////////////////////////////////////////////////////// COMET::ICOMETLog::SetDebugLevel("test",COMET::ICOMETLog::SilentLevel); COMETNamedError("test","AN ERROR MESSAGE THAT SHOULD NOT BE PRINTED"); COMET::ICOMETLog::SetDebugLevel("test",COMET::ICOMETLog::ErrorLevel); COMETNamedError("test","An error message that should be printed"); COMETNamedSevere("test","A SEVERE MESSAGE THAT SHOULD NOT BE PRINTED"); COMET::ICOMETLog::SetDebugLevel("test",COMET::ICOMETLog::SevereLevel); COMETNamedSevere("test","A severe message that should be printed"); COMETNamedWarn("test","A WARN MESSAGE THAT SHOULD NOT BE PRINTED"); COMET::ICOMETLog::SetDebugLevel("test",COMET::ICOMETLog::WarnLevel); COMETNamedWarn("test","A warn message that should be printed"); COMETNamedDebug("test","A DEBUG MESSAGE THAT SHOULD NOT BE PRINTED"); COMET::ICOMETLog::SetDebugLevel("test",COMET::ICOMETLog::DebugLevel); COMETNamedDebug("test","A debug message that should be printed"); COMETNamedTrace("test","A TRACE MESSAGE THAT SHOULD NOT BE PRINTED"); COMET::ICOMETLog::SetDebugLevel("test",COMET::ICOMETLog::TraceLevel); COMETNamedTrace("test","A trace message that should be printed"); ///////////////////////////////////////////////////////// // Test the logging levels ///////////////////////////////////////////////////////// COMET::ICOMETLog::SetLogLevel(COMET::ICOMETLog::QuietLevel); COMETLog("A LOG MESSAGE THAT SHOULD NOT BE PRINTED"); COMET::ICOMETLog::SetLogLevel(COMET::ICOMETLog::LogLevel); COMETLog("A log message that should be printed"); COMETInfo("AN INFO MESSAGE THAT SHOULD NOT BE PRINTED"); COMET::ICOMETLog::SetLogLevel(COMET::ICOMETLog::InfoLevel); COMETInfo("An info message that should be printed"); COMETVerbose("A VERBOSE MESSAGE THAT SHOULD NOT BE PRINTED"); COMET::ICOMETLog::SetLogLevel(COMET::ICOMETLog::VerboseLevel); COMETVerbose("A verbose message that should be printed"); ///////////////////////////////////////////////////////// // Test the named logging levels ///////////////////////////////////////////////////////// COMET::ICOMETLog::SetLogLevel("test",COMET::ICOMETLog::QuietLevel); COMETNamedLog("test","A LOG MESSAGE THAT SHOULD NOT BE PRINTED"); COMET::ICOMETLog::SetLogLevel("test",COMET::ICOMETLog::LogLevel); COMETNamedLog("test","A log message that should be printed"); COMETNamedInfo("test","AN INFO MESSAGE THAT SHOULD NOT BE PRINTED"); COMET::ICOMETLog::SetLogLevel("test",COMET::ICOMETLog::InfoLevel); COMETNamedInfo("test","An info message that should be printed"); COMETNamedVerbose("test","A VERBOSE MESSAGE THAT SHOULD NOT BE PRINTED"); COMET::ICOMETLog::SetLogLevel("test",COMET::ICOMETLog::VerboseLevel); COMETNamedVerbose("test","A verbose message that should be printed"); COMETNamedLog("test","A kilogram is " << unit::kg << " MeV s^2 m^-2 e_si^-1"); ////////////////////////////////////////////////////////// // Check the conditional compilation #ifdef COMET_ERROR_OUTPUT #undef COMET_ERROR_OUTPUT #endif #define COMET_ERROR_OUTPUT false COMET::ICOMETLog::SetDebugLevel(COMET::ICOMETLog::TraceLevel); COMETError("AN ERROR MESSAGE THAT SHOULD NOT BE PRINTED"); COMETSevere("A SEVERE MESSAGE THAT SHOULD NOT BE PRINTED"); COMETWarn("A WARN MESSAGE THAT SHOULD NOT BE PRINTED"); COMETDebug("A DEBUG MESSAGE THAT SHOULD NOT BE PRINTED"); COMETTrace("A TRACE MESSAGE THAT SHOULD NOT BE PRINTED"); COMET::ICOMETLog::SetDebugLevel("test",COMET::ICOMETLog::TraceLevel); COMETNamedError("test","AN ERROR MESSAGE THAT SHOULD NOT BE PRINTED"); COMETNamedSevere("test","A SEVERE MESSAGE THAT SHOULD NOT BE PRINTED"); COMETNamedWarn("test","A WARN MESSAGE THAT SHOULD NOT BE PRINTED"); COMETNamedDebug("test","A DEBUG MESSAGE THAT SHOULD NOT BE PRINTED"); COMETNamedTrace("test","A TRACE MESSAGE THAT SHOULD NOT BE PRINTED"); ///////////////////////////////////////////////////////// // Test the logging levels ///////////////////////////////////////////////////////// #ifdef COMET_LOG_OUTPUT #undef COMET_LOG_OUTPUT #endif #define COMET_LOG_OUTPUT false COMET::ICOMETLog::SetLogLevel(COMET::ICOMETLog::VerboseLevel); COMETLog("A LOG MESSAGE THAT SHOULD NOT BE PRINTED"); COMETInfo("AN INFO MESSAGE THAT SHOULD NOT BE PRINTED"); COMETVerbose("A VERBOSE MESSAGE THAT SHOULD NOT BE PRINTED"); COMET::ICOMETLog::SetLogLevel("test",COMET::ICOMETLog::VerboseLevel); COMETNamedLog("test","A LOG MESSAGE THAT SHOULD NOT BE PRINTED"); COMETNamedInfo("test","AN INFO MESSAGE THAT SHOULD NOT BE PRINTED"); COMETNamedVerbose("test","A VERBOSE MESSAGE THAT SHOULD NOT BE PRINTED"); return 0; }