made limits in HostStatus floats; reduce logging
[pingcheck] / test / test_hoststatus.cpp
index 1b46612..607daa1 100644 (file)
@@ -26,6 +26,8 @@ on this file might be covered by the GNU General Public License.
 #include <boost/asio.hpp>
 #include <boost/test/unit_test.hpp>
 
+#include <logfunc.hpp>
+
 #include "mock_linkstatus.h"
 
 #include "host/hoststatus.h"
@@ -35,12 +37,17 @@ BOOST_AUTO_TEST_SUITE( TestHostStatus )
 
 BOOST_AUTO_TEST_CASE( fail_percentage_10 )
 {
+    I2n::Logger::enable_stderr_log( true );
+    I2n::Logger::set_log_level( I2n::Logger::LogLevel::Debug );
+    I2n::Logger::GlobalLogger.info() << "Logging enabled for testing";
+
     int ping_fail_percentage_limit = 10;
     int ping_congestion_percentage_limit = 75;
     int congest_caused_by_fail_percentage_limit = 90;
     int ping_congestion_duration_thresh = 5;
     int n_parallel_pings = 1;
     int resolved_ip_count = 10;
+    long duration = 1000;   // microseconds
 
     LinkStatusItem link_status( new LinkStatus );
     HostStatus host_status( "localhost",
@@ -52,34 +59,34 @@ BOOST_AUTO_TEST_CASE( fail_percentage_10 )
                             link_status );
     host_status.set_resolved_ip_count( resolved_ip_count );
 
-    host_status.update_ping_statistics( PingStatus_SuccessReply, 1 );
+    host_status.update_ping_statistics( PingStatus_SuccessReply, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_FailureOther, 1 );
+    host_status.update_ping_statistics( PingStatus_FailureOther, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_FailureOther, 1);
+    host_status.update_ping_statistics( PingStatus_FailureOther, duration);
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), true );
 
-    host_status.update_ping_statistics( PingStatus_SuccessReply, 1 );
+    host_status.update_ping_statistics( PingStatus_SuccessReply, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), true );
 
-    host_status.update_ping_statistics( PingStatus_SuccessReply, 1 );
+    host_status.update_ping_statistics( PingStatus_SuccessReply, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), true );
 
-    host_status.update_ping_statistics( PingStatus_SuccessReply, 1 );
+    host_status.update_ping_statistics( PingStatus_SuccessReply, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), true );
 
-    host_status.update_ping_statistics( PingStatus_SuccessReply, 1 );
+    host_status.update_ping_statistics( PingStatus_SuccessReply, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), true );
 
-    host_status.update_ping_statistics( PingStatus_SuccessReply, 1 );
+    host_status.update_ping_statistics( PingStatus_SuccessReply, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), true );
 
-    host_status.update_ping_statistics( PingStatus_SuccessReply, 1 );
+    host_status.update_ping_statistics( PingStatus_SuccessReply, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), true );
 
-    host_status.update_ping_statistics( PingStatus_SuccessReply, 1 );
+    host_status.update_ping_statistics( PingStatus_SuccessReply, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), true );
 }
 
@@ -91,6 +98,7 @@ BOOST_AUTO_TEST_CASE( fail_percentage_50 )
     int ping_congestion_duration_thresh = 5;
     int n_parallel_pings = 1;
     int resolved_ip_count = 10;
+    long duration = 1000;   // microseconds
 
     LinkStatusItem link_status( new LinkStatus );
     HostStatus host_status( "localhost",
@@ -102,34 +110,34 @@ BOOST_AUTO_TEST_CASE( fail_percentage_50 )
                             link_status );
     host_status.set_resolved_ip_count( resolved_ip_count );
 
-    host_status.update_ping_statistics( PingStatus_SuccessReply, 1 );
+    host_status.update_ping_statistics( PingStatus_SuccessReply, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_FailureOther, 1 );
+    host_status.update_ping_statistics( PingStatus_FailureOther, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_FailureOther, 1 );
+    host_status.update_ping_statistics( PingStatus_FailureOther, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_FailureOther, 1 );
+    host_status.update_ping_statistics( PingStatus_FailureOther, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_FailureOther, 1 );
+    host_status.update_ping_statistics( PingStatus_FailureOther, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_SuccessReply, 1 );
+    host_status.update_ping_statistics( PingStatus_SuccessReply, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_FailureOther, 1 );
+    host_status.update_ping_statistics( PingStatus_FailureOther, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_SuccessReply, 1 );
+    host_status.update_ping_statistics( PingStatus_SuccessReply, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_FailureOther, 1 );
+    host_status.update_ping_statistics( PingStatus_FailureOther, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), true );
 
-    host_status.update_ping_statistics( PingStatus_SuccessReply, 1 );
+    host_status.update_ping_statistics( PingStatus_SuccessReply, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), true );
 }
 
@@ -141,6 +149,7 @@ BOOST_AUTO_TEST_CASE( fail_percentage_80 )
     int ping_congestion_duration_thresh = 5;
     int n_parallel_pings = 1;
     int resolved_ip_count = 10;
+    long duration = 1000;   // microseconds
 
     LinkStatusItem link_status( new LinkStatus );
     HostStatus host_status( "localhost",
@@ -152,34 +161,34 @@ BOOST_AUTO_TEST_CASE( fail_percentage_80 )
                             link_status );
     host_status.set_resolved_ip_count( resolved_ip_count );
 
-    host_status.update_ping_statistics( PingStatus_FailureOther, 1 );
+    host_status.update_ping_statistics( PingStatus_FailureOther, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_FailureOther, 1 );
+    host_status.update_ping_statistics( PingStatus_FailureOther, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_FailureOther, 1 );
+    host_status.update_ping_statistics( PingStatus_FailureOther, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_FailureOther, 1 );
+    host_status.update_ping_statistics( PingStatus_FailureOther, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_FailureOther, 1 );
+    host_status.update_ping_statistics( PingStatus_FailureOther, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_FailureOther, 1 );
+    host_status.update_ping_statistics( PingStatus_FailureOther, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_FailureOther, 1 );
+    host_status.update_ping_statistics( PingStatus_FailureOther, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_FailureOther, 1 );
+    host_status.update_ping_statistics( PingStatus_FailureOther, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), false );
 
-    host_status.update_ping_statistics( PingStatus_FailureOther, 1 );
+    host_status.update_ping_statistics( PingStatus_FailureOther, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), true );
 
-    host_status.update_ping_statistics( PingStatus_SuccessReply, 1 );
+    host_status.update_ping_statistics( PingStatus_SuccessReply, duration );
     BOOST_CHECK_EQUAL( host_status.exceeded_ping_failed_limit(), true );
 }