OSDN Git Service

テストコードを追加
authoryamada <yamada@1ed66053-1c2d-0410-8867-f7571e6e31d3>
Wed, 16 Dec 2009 10:23:12 +0000 (10:23 +0000)
committeryamada <yamada@1ed66053-1c2d-0410-8867-f7571e6e31d3>
Wed, 16 Dec 2009 10:23:12 +0000 (10:23 +0000)
git-svn-id: http://10.144.169.20/repos/um/branches/l7vsd-3.x-ramiel@9183 1ed66053-1c2d-0410-8867-f7571e6e31d3

l7vsd/unit_tests/l7vs_logger/Makefile_logger_ut [new file with mode: 0644]
l7vsd/unit_tests/l7vs_logger/logger_ut_test.cpp [new file with mode: 0644]

diff --git a/l7vsd/unit_tests/l7vs_logger/Makefile_logger_ut b/l7vsd/unit_tests/l7vs_logger/Makefile_logger_ut
new file mode 100644 (file)
index 0000000..68e1d5d
--- /dev/null
@@ -0,0 +1,41 @@
+TARGET = logger_ut_test
+INCDIR = ../../../l7vsd/include
+SRCDIR = ../../../l7vsd/src
+CC     = g++
+CFLAGS = -O0 -g -Wall -Werror -pthread -DPARAMETER_FILE='"./l7vs.cf"' #-fprofile-arcs -ftest-coverage
+LD     = g++
+LIBS   = -L/usr/lib64 -lrt \
+                               -llog4cxx -ldl \
+                               -lboost_system-gcc41-mt \
+                               -lboost_thread-gcc41-mt \
+                               -lboost_unit_test_framework-gcc41-mt 
+LDFLAGS        = 
+LOGGER_PROCESS = -DLOGGER_PROCESS_VSD
+
+SRCS   =       \
+         $(SRCDIR)/logger.cpp \
+         $(SRCDIR)/logger_impl.cpp \
+         $(SRCDIR)/logger_logrotate_utility.cpp \
+          $(SRCDIR)/parameter.cpp \
+         $(SRCDIR)/parameter_impl.cpp \
+         strict_time_based_rolling_policy_stub.cpp \
+         time_and_size_based_rolling_policy_stub.cpp \
+         logger_ut_test.cpp
+
+.SUFFIXES: .cpp .o
+.cpp.o:
+       $(CC) $(CFLAGS) $(LOGGER_PROCESS) -DLOGGER_CONSOLE=\"./test.log\" -I/usr/include/apr-1/ -I./ -I$(INCDIR) -I$(SRCDIR) $(LIBS) -c $< -o $@
+
+OBJS   = $(SRCS:.cpp=.o)
+
+all:   $(TARGET)
+
+$(TARGET): $(OBJS) 
+       $(LD) $(LDFLAGS) $(LIBS) -o $(TARGET) -I$(INCDIR) -I$(SRCDIR) $(OBJS) /usr/lib64/libboost_unit_test_framework.a
+
+logger_ut_test.o: $(SRCDIR)/logger_logrotate_utility.cpp
+
+clean:
+       rm -f $(TARGET) *.o
+
+
diff --git a/l7vsd/unit_tests/l7vs_logger/logger_ut_test.cpp b/l7vsd/unit_tests/l7vs_logger/logger_ut_test.cpp
new file mode 100644 (file)
index 0000000..76a92f6
--- /dev/null
@@ -0,0 +1,221 @@
+/*
+
+       Logger class Unit Test Program.
+
+
+*/
+
+#include <boost/test/unit_test.hpp>
+
+using namespace boost::unit_test_framework;
+//using namespace l7vs;
+
+//enum LOG_ROTATION_TAG{ LOG_ROT_SIZE, LOG_ROT_DATE, LOG_ROT_DATE_SIZE };
+//enum LOG_ROTATION_TIMING_TAG{ LOG_TIM_YEAR, LOG_TIM_MONTH, LOG_TIM_WEEK, LG_TIM_DATE, LO_TIM_HOUR };
+
+//#include "logger_enum.h"
+//#include "logger.cpp"
+/*
+class  Logger_Test :public l7vs::Logger{
+       public:
+       Logger_Test(){}
+       static void     constractor_test();
+       static void     destractor_test();
+       static void     reloadConf_test();
+       static void     getinstance_test();
+       static void     getLogLevel_test();
+       static void     setLogLevel_test();
+       static void     putLogFatal_test();
+       static void     putLogError_test();
+       static void     putLogWarn_test();
+       static void     putLogInfo_test();
+       static void     putLogDebug_test();
+       static void     getCategoryRangeStart_test();
+       static void     getCategoryRangeEnd_test();
+};
+
+template <typename T> T& operator++( T& value ){
+       value = static_cast<T>( value+1 );
+       return value;
+}
+
+void Logger_Test::constractor_test(){
+//     LoggerImpl      impl = LoggerImpl::getInstance();
+//     bool            flag = true;
+//     impl.init_flag = flag;
+//     Logger_Test     logger;
+//     BOOST_CHECK_EQUAL( flag , LoggerImpl::getInstance().init_flag );
+}
+
+void Logger_Test::destractor_test(){
+       //nothing
+}
+void Logger_Test::getinstance_test(){
+       //複数回のgetInstanceを呼んで同じものがくるか
+       l7vs::Logger logger =l7vs:: Logger::getInstance();
+       void* first = &logger;
+       logger = Logger::getInstance();
+       void* second = &logger;
+       BOOST_CHECK_EQUAL( first, second );
+       //失敗は存在しないのでなし
+}
+void Logger_Test::reloadConf_test(){
+       //rimplのreadが呼ばれて素の結果が返却されているか
+       LoggerImpl impl = LoggerImpl::getInstance();
+       l7vs::Logger    logger = l7vs::Logger::getInstance();
+       //true
+       bool test_flag = true;
+       impl.reloadConf_flag = true;
+       BOOST_CHECK_EQUAL( logger.reloadConf(), test_flag );
+       //false
+       test_flag = false;
+       impl.reloadConf_flag = test_flag;
+       BOOST_CHECK_EQUAL( logger.reloadConf(), test_flag );
+}
+
+void Logger_Test::getLogLevel_test(){
+       LoggerImpl      impl = LoggerImpl::getInstance();
+       l7vs::Logger    logger = l7vs::Logger::getInstance();
+       for( LOG_LEVEL_TAG level = LOG_LV_NONE; level <= LOG_LV_FATAL; ++level ){
+               for( LOG_CATEGORY_TAG cat = LOG_CAT_NONE; cat <= LOG_CAT_SNMPAGENT_L7VSD_SEND; ++cat ){
+                       impl.test_log_level = level;
+                       impl.test_log_cat   = cat;
+                       BOOST_CHECK_EQUAL( static_cast<int>(logger.getLogLevel( cat )) , static_cast<int>( level) );
+               }
+       }
+}
+void Logger_Test::setLogLevel_test(){
+       LoggerImpl impl = LoggerImpl::getInstance();
+       l7vs::Logger logger = l7vs::Logger::getInstance();
+       for( LOG_LEVEL_TAG level = LOG_LV_NONE; level <= LOG_LV_FATAL; ++level ){
+               for( LOG_CATEGORY_TAG cat = LOG_CAT_NONE; cat <= LOG_CAT_SNMPAGENT_L7VSD_SEND; ++cat ){
+                       bool flag = true;
+                       impl.setLogLevel_flag = flag;
+                       BOOST_CHECK_EQUAL( static_cast<int>( logger.setLogLevel( cat, level ) ),static_cast<int>(flag) );
+                       BOOST_CHECK_EQUAL( static_cast<int>( impl.test_log_level ) , static_cast<int>( level ) );
+                       BOOST_CHECK_EQUAL( static_cast<int>( impl.test_log_cat ), static_cast<int>( cat ) );
+                       flag = false;
+                       impl.setLogLevel_flag = flag;
+                       BOOST_CHECK_EQUAL( static_cast<int>( logger.setLogLevel( cat, level) ) ,static_cast<int>( flag ) );
+                       BOOST_CHECK_EQUAL( static_cast<int>( impl.test_log_level ), static_cast<int>( level ) );
+                       BOOST_CHECK_EQUAL( static_cast<int>( impl.test_log_cat ), static_cast<int>( cat ) );
+               }
+       }
+}
+void Logger_Test::putLogFatal_test(){
+       LoggerImpl impl = LoggerImpl::getInstance();
+       l7vs::Logger logger = l7vs::Logger::getInstance();
+       unsigned int mesid = 0;
+       std::string  mes  = "mes";
+       std::string  file = "file";
+       int          line = 0;
+       for( LOG_CATEGORY_TAG cat = LOG_CAT_NONE; cat <= LOG_CAT_SNMPAGENT_L7VSD_SEND; ++cat ){
+               logger.putLogFatal( cat, mesid, mes, file.c_str(), line );
+               BOOST_CHECK_EQUAL( static_cast<int>( impl.test_log_cat ), static_cast<int>( cat ));
+               BOOST_CHECK_EQUAL( impl.test_mesid, mesid );
+               BOOST_CHECK_EQUAL( impl.test_file, file );
+               BOOST_CHECK_EQUAL( impl.test_line, line );
+       }
+}
+void Logger_Test::putLogError_test(){
+       LoggerImpl impl = LoggerImpl::getInstance();
+       l7vs::Logger logger = l7vs::Logger::getInstance();
+       unsigned int mesid = 0;
+       std::string  mes  = "mes";
+       std::string  file = "file";
+       int          line = 0;
+       for( LOG_CATEGORY_TAG cat = LOG_CAT_NONE; cat <= LOG_CAT_SNMPAGENT_L7VSD_SEND; ++cat ){
+               logger.putLogError( cat, mesid, mes, file.c_str(), line );
+               BOOST_CHECK_EQUAL( static_cast<int>( impl.test_log_cat ), static_cast<int>( cat ) );
+               BOOST_CHECK_EQUAL( impl.test_mesid, mesid );
+               BOOST_CHECK_EQUAL( impl.test_file, file );
+               BOOST_CHECK_EQUAL( impl.test_line, line );
+       }
+}
+void Logger_Test::putLogWarn_test(){
+       LoggerImpl impl = LoggerImpl::getInstance();
+       l7vs::Logger logger = l7vs::Logger::getInstance();
+       unsigned int mesid = 0;
+       std::string  mes  = "mes";
+       std::string  file = "file";
+       int          line = 0;
+       for( LOG_CATEGORY_TAG cat = LOG_CAT_NONE; cat <= LOG_CAT_SNMPAGENT_L7VSD_SEND; ++cat ){
+               logger.putLogWarn( cat, mesid, mes, file.c_str(), line );
+               BOOST_CHECK_EQUAL( static_cast<int>( impl.test_log_cat), static_cast<int>(cat) );
+               BOOST_CHECK_EQUAL( impl.test_mesid, mesid );
+               BOOST_CHECK_EQUAL( impl.test_file, file );
+               BOOST_CHECK_EQUAL( impl.test_line, line );
+       }
+}
+void Logger_Test::putLogInfo_test(){
+       LoggerImpl impl = LoggerImpl::getInstance();
+       l7vs::Logger logger = l7vs::Logger::getInstance();
+       unsigned int mesid = 0;
+       std::string  mes  = "mes";
+       std::string  file = "file";
+       int          line = 0;
+       for( LOG_CATEGORY_TAG cat = LOG_CAT_NONE; cat <= LOG_CAT_SNMPAGENT_L7VSD_SEND; ++cat ){
+               logger.putLogInfo( cat, mesid, mes, file.c_str(), line );
+               BOOST_CHECK_EQUAL( static_cast<int>(impl.test_log_cat), static_cast<int>(cat) );
+               BOOST_CHECK_EQUAL( impl.test_mesid, mesid );
+               BOOST_CHECK_EQUAL( impl.test_file, file );
+               BOOST_CHECK_EQUAL( impl.test_line, line );
+       }
+}
+void Logger_Test::putLogDebug_test(){
+       LoggerImpl impl = LoggerImpl::getInstance();
+       l7vs::Logger logger = l7vs::Logger::getInstance();
+       unsigned int mesid = 0;
+       std::string  mes  = "mes";
+       std::string  file = "file";
+       int          line = 0;
+       for( LOG_CATEGORY_TAG cat = LOG_CAT_NONE; cat <= LOG_CAT_SNMPAGENT_L7VSD_SEND; ++cat ){
+               logger.putLogDebug( cat, mesid, mes, file.c_str(), line );
+               BOOST_CHECK_EQUAL( static_cast<int>(impl.test_log_cat), static_cast<int>(cat) );
+               BOOST_CHECK_EQUAL( impl.test_mesid, mesid );
+               BOOST_CHECK_EQUAL( impl.test_file, file );
+               BOOST_CHECK_EQUAL( impl.test_line, line );
+       }
+}
+void Logger_Test::getCategoryRangeStart_test(){
+       LoggerImpl impl = LoggerImpl::getInstance();
+       l7vs::Logger    logger = l7vs::Logger::getInstance();
+       for( LOG_CATEGORY_TAG cat = LOG_CAT_NONE; cat <= LOG_CAT_SNMPAGENT_L7VSD_SEND; ++cat ){
+               for( LOG_MODULE_TAG mod = LOG_MOD_L7VSD; mod <= LOG_MOD_SNMPAGENT; ++mod ){
+                       impl.test_log_cat = cat;
+                       BOOST_CHECK_EQUAL( static_cast<int>(cat), static_cast<int>(logger.getCategoryRangeStart( mod )) );
+                       BOOST_CHECK_EQUAL( mod, impl.test_module );
+               }
+       }
+}
+void Logger_Test::getCategoryRangeEnd_test(){
+       LoggerImpl impl = LoggerImpl::getInstance();
+       l7vs::Logger    logger = l7vs::Logger::getInstance();
+       for( LOG_CATEGORY_TAG cat = LOG_CAT_NONE; cat <= LOG_CAT_SNMPAGENT_L7VSD_SEND; ++cat ){
+               for( LOG_MODULE_TAG mod = LOG_MOD_L7VSD; mod <= LOG_MOD_SNMPAGENT; ++mod ){
+                       impl.test_log_cat = cat;
+                       BOOST_CHECK_EQUAL( static_cast<int>(cat), static_cast<int>(logger.getCategoryRangeEnd( mod ) ));
+                       BOOST_CHECK_EQUAL( mod, impl.test_module );
+               }
+       }
+}
+*/
+
+test_suite*
+init_unit_test_suite( int argc, char* argv[] ){
+       test_suite* test = BOOST_TEST_SUITE( "logger class test" );
+//     test->add( BOOST_TEST_CASE( Logger_Test::constractor_test ) );
+//     test->add( BOOST_TEST_CASE( Logger_Test::getinstance_test ) );
+//     test->add( BOOST_TEST_CASE( Logger_Test::getLogLevel_test ) );
+//     test->add( BOOST_TEST_CASE( Logger_Test::setLogLevel_test ) );
+//     test->add( BOOST_TEST_CASE( Logger_Test::putLogFatal_test ) );
+//     test->add( BOOST_TEST_CASE( Logger_Test::putLogError_test ) );
+//     test->add( BOOST_TEST_CASE( Logger_Test::putLogWarn_test ) );
+//     test->add( BOOST_TEST_CASE( Logger_Test::putLogDebug_test ) );
+//     test->add( BOOST_TEST_CASE( Logger_Test::getCategoryRangeStart_test ) );
+//     test->add( BOOST_TEST_CASE( Logger_Test::getCategoryRangeEnd_test ) );
+
+       return test;
+}
+
+