#include <boost/asio.hpp>
#include <boost/test/unit_test.hpp>
+#include <logfunc.hpp>
+
#include "mock_linkstatus.h"
#include "host/hoststatus.h"
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",
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 );
}
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",
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 );
}
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",
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 );
}