X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senf%2FScheduler%2FScheduler.test.cc;h=7e6d54345547acdb03e2d828628e8c63f1094eb7;hb=78a6e233083efa63a9cd0684a92abc64202a9ee7;hp=14e01bc0586b459bd3d9fb021e6e00b96b7e2f8a;hpb=601d1f509f5bb24df167a4dd5a20da67a0af9af8;p=senf.git diff --git a/senf/Scheduler/Scheduler.test.cc b/senf/Scheduler/Scheduler.test.cc index 14e01bc..7e6d543 100644 --- a/senf/Scheduler/Scheduler.test.cc +++ b/senf/Scheduler/Scheduler.test.cc @@ -40,7 +40,7 @@ #include "Scheduler.hh" -#include "../Utils/auto_unit_test.hh" +#include #include #define prefix_ @@ -189,7 +189,7 @@ namespace { { return (a= 8u ); - + /////////////////////////////////////////////////////////////////////////// close(sock); @@ -326,13 +334,13 @@ void schedulerTest() BOOST_CHECK (stop_server(pid)); } -BOOST_AUTO_UNIT_TEST(testSchedulerPollTimers) +SENF_AUTO_UNIT_TEST(testSchedulerPollTimers) { BOOST_CHECK( ! senf::scheduler::usingHiresTimers() ); schedulerTest(); } -BOOST_AUTO_UNIT_TEST(testSchedulerHiresTimers) +SENF_AUTO_UNIT_TEST(testSchedulerHiresTimers) { if (senf::scheduler::haveScalableHiresTimers()) BOOST_MESSAGE( "Using timerfd() hires timers" ); @@ -345,7 +353,7 @@ BOOST_AUTO_UNIT_TEST(testSchedulerHiresTimers) BOOST_CHECK( ! senf::scheduler::usingHiresTimers() ); } -BOOST_AUTO_UNIT_TEST(testSchedulerPOSIXTimers) +SENF_AUTO_UNIT_TEST(testSchedulerPOSIXTimers) { if (senf::scheduler::haveScalableHiresTimers()) { SENF_CHECK_NO_THROW( senf::scheduler::detail::TimerDispatcher::instance().timerSource( @@ -357,7 +365,7 @@ BOOST_AUTO_UNIT_TEST(testSchedulerPOSIXTimers) } namespace { - + void sigme() { senf::scheduler::BlockSignals signalBlocker; @@ -373,22 +381,27 @@ namespace { } -BOOST_AUTO_UNIT_TEST(blockSignals) +SENF_AUTO_UNIT_TEST(blockSignals) { + char const * enabled (getenv("SENF_TIMING_CRITICAL_TESTS")); + BOOST_WARN_MESSAGE(enabled, "Set SENF_TIMING_CRITICAL_TESTS to not skip timing critical tests"); + senf::scheduler::TimerEvent signaler ("sigme", &sigme, senf::ClockService::now()); senf::scheduler::TimerEvent timer ( "testWatchdog", &timeout, senf::ClockService::now()+senf::ClockService::milliseconds(400)); senf::scheduler::SignalEvent sig (SIGUSR1, &sigusr); - + senf::ClockService::clock_type t = senf::ClockService::now(); - SENF_CHECK_NO_THROW( senf::scheduler::process() ); + SENF_CHECK_NO_THROW( senf::scheduler::process() ); - BOOST_CHECK_PREDICATE( is_close, - (senf::ClockService::now()) - (t+senf::ClockService::milliseconds(200)) ); - BOOST_CHECK_PREDICATE( is_close, (sigtime) (t+senf::ClockService::milliseconds(200)) ); + if (enabled) { + BOOST_CHECK_PREDICATE( is_close, + (senf::ClockService::now()) + (t+senf::ClockService::milliseconds(200)) ); + BOOST_CHECK_PREDICATE( is_close, (sigtime) (t+senf::ClockService::milliseconds(200)) ); + } - SENF_CHECK_NO_THROW( senf::scheduler::process() ); + SENF_CHECK_NO_THROW( senf::scheduler::process() ); } ///////////////////////////////cc.e////////////////////////////////////////