X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Scheduler%2FFdDispatcher.test.cc;h=6e20cc830f1d17c30ae5f05c9cccca31eeb5fea3;hb=09010bdcf81888480d4d481a523f9714a89f2625;hp=62a618780b06a62a808ae2be388c6097986248a6;hpb=919e588a2c387c9a910aa8761e65155a0d205bba;p=senf.git diff --git a/Scheduler/FdDispatcher.test.cc b/Scheduler/FdDispatcher.test.cc index 62a6187..6e20cc8 100644 --- a/Scheduler/FdDispatcher.test.cc +++ b/Scheduler/FdDispatcher.test.cc @@ -28,7 +28,6 @@ // Custom includes #include -#include #include #include #include @@ -163,9 +162,8 @@ namespace { BOOST_AUTO_UNIT_TEST(fdDispatcher) { - senf::scheduler::FdManager manager; - senf::scheduler::FIFORunner runner; - senf::scheduler::FdDispatcher dispatcher (manager, runner); + senf::scheduler::FdDispatcher dispatcher (senf::scheduler::FdManager::instance(), senf::scheduler::FIFORunner::instance()); + senf::scheduler::FdManager::instance().timeout(1000); int pid (start_server()); BOOST_REQUIRE( pid ); @@ -185,12 +183,11 @@ BOOST_AUTO_UNIT_TEST(fdDispatcher) BOOST_FAIL("connect"); } - SENF_CHECK_NO_THROW( dispatcher.add(sock, boost::bind(&callback, sock, _1), - senf::scheduler::FdDispatcher::EV_READ) ); - manager.timeout(1000); + BOOST_CHECK( dispatcher.add("testHandler", sock, boost::bind(&callback, sock, _1), + senf::scheduler::FdDispatcher::EV_READ) ); event = 0; - SENF_CHECK_NO_THROW( manager.processOnce() ); - SENF_CHECK_NO_THROW( runner.run() ); + SENF_CHECK_NO_THROW( senf::scheduler::FdManager::instance().processOnce() ); + SENF_CHECK_NO_THROW( senf::scheduler::FIFORunner::instance().run() ); BOOST_CHECK_EQUAL( event, senf::scheduler::FdDispatcher::EV_READ ); BOOST_CHECK_EQUAL( size, 4 ); buffer[size] = 0; @@ -198,33 +195,33 @@ BOOST_AUTO_UNIT_TEST(fdDispatcher) strcpy(buffer,"WRITE"); size=5; - SENF_CHECK_NO_THROW( dispatcher.add(sock, boost::bind(&callback, sock, _1), - senf::scheduler::FdDispatcher::EV_WRITE) ); + BOOST_CHECK( dispatcher.add("testHandler", sock, boost::bind(&callback, sock, _1), + senf::scheduler::FdDispatcher::EV_WRITE) ); event = 0; sleep(1); - SENF_CHECK_NO_THROW( manager.processOnce() ); - SENF_CHECK_NO_THROW( runner.run() ); + SENF_CHECK_NO_THROW( senf::scheduler::FdManager::instance().processOnce() ); + SENF_CHECK_NO_THROW( senf::scheduler::FIFORunner::instance().run() ); BOOST_CHECK_EQUAL( event, senf::scheduler::FdDispatcher::EV_WRITE ); SENF_CHECK_NO_THROW( dispatcher.remove(sock, senf::scheduler::FdDispatcher::EV_WRITE) ); event = 0; sleep(1); - SENF_CHECK_NO_THROW( manager.processOnce() ); - SENF_CHECK_NO_THROW( runner.run() ); + SENF_CHECK_NO_THROW( senf::scheduler::FdManager::instance().processOnce() ); + SENF_CHECK_NO_THROW( senf::scheduler::FIFORunner::instance().run() ); BOOST_CHECK_EQUAL( event, senf::scheduler::FdDispatcher::EV_HUP | senf::scheduler::FdDispatcher::EV_READ ); BOOST_CHECK_EQUAL( size, 2 ); buffer[size]=0; BOOST_CHECK_EQUAL( buffer, "OK" ); BOOST_CHECK_EQUAL( calls, 3 ); - SENF_CHECK_NO_THROW( runner.run() ); + SENF_CHECK_NO_THROW( senf::scheduler::FIFORunner::instance().run() ); BOOST_CHECK_EQUAL( calls, 3 ); // Ensure, removing an already closed file-descriptor doesn't wreak havoc close(sock); SENF_CHECK_NO_THROW( dispatcher.remove(sock) ); - SENF_CHECK_NO_THROW( runner.run() ); + SENF_CHECK_NO_THROW( senf::scheduler::FIFORunner::instance().run() ); BOOST_CHECK_EQUAL( calls, 3 );