X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=PPI%2FDebugModules.test.cc;h=a5e518389122fb4d8b7b6ec7f0ef4de0ed0ed871;hb=394a298567543441521439ad15f7016cd569c449;hp=fdde4c0922942fcf424996eac4dcba58ce4c5753;hpb=9e64a6d6a4840325f74502ba959ebd56fbb8441c;p=senf.git diff --git a/PPI/DebugModules.test.cc b/PPI/DebugModules.test.cc index fdde4c0..a5e5183 100644 --- a/PPI/DebugModules.test.cc +++ b/PPI/DebugModules.test.cc @@ -26,9 +26,14 @@ //#include "DebubgModules.test.hh" //#include "DebubgModules.test.ih" + // Custom includes #include -#include "Packets/Packets.hh" +#include + +#define SENF_LOG_CONF (( (senf)(log)(Debug), (_), VERBOSE )) + +#include "../Packets/Packets.hh" #include "DebugModules.hh" #include "Setup.hh" @@ -38,14 +43,14 @@ #define prefix_ ///////////////////////////////cc.p//////////////////////////////////////// +namespace debug = senf::ppi::module::debug; +namespace ppi = senf::ppi; + BOOST_AUTO_UNIT_TEST(debugModules) { - namespace debug = senf::ppi::module::debug; - namespace ppi = senf::ppi; - { - debug::ActivePacketSource source; - debug::PassivePacketSink sink; + debug::ActiveSource source; + debug::PassiveSink sink; ppi::connect(source, sink); ppi::init(); @@ -61,7 +66,7 @@ BOOST_AUTO_UNIT_TEST(debugModules) BOOST_CHECK_EQUAL( sink.size(), 1u ); BOOST_CHECK( ! sink.empty() ); BOOST_CHECK_EQUAL( - debug::PassivePacketSink::size_type(std::distance(sink.begin(),sink.end())), + debug::PassiveSink::size_type(std::distance(sink.begin(),sink.end())), sink.size() ); BOOST_CHECK( *sink.begin() == p ); BOOST_CHECK( sink.front() == p ); @@ -73,8 +78,8 @@ BOOST_AUTO_UNIT_TEST(debugModules) } { - debug::PassivePacketSource source; - debug::ActivePacketSink sink; + debug::PassiveSource source; + debug::ActiveSink sink; ppi::connect(source, sink); ppi::init(); @@ -91,6 +96,55 @@ BOOST_AUTO_UNIT_TEST(debugModules) } } +BOOST_AUTO_UNIT_TEST(activeFeederSource) +{ + debug::ActiveFeederSource source; + debug::PassiveSink sink; + + ppi::connect(source,sink); + source.submit(senf::DataPacket::create()); + ppi::run(); + + BOOST_CHECK( source.empty() ); + BOOST_CHECK_EQUAL( source.size(), 0u ); + BOOST_CHECK_EQUAL( sink.size(), 1u ); +} + +BOOST_AUTO_UNIT_TEST(activeFeederSink) +{ + debug::PassiveSource source; + debug::ActiveFeederSink sink; + + ppi::connect(source,sink); + source.submit(senf::DataPacket::create()); + ppi::run(); + + BOOST_CHECK( ! sink.empty() ); + BOOST_CHECK_EQUAL( sink.size(), 1u ); + BOOST_CHECK_EQUAL( debug::ActiveFeederSink::size_type(std::distance(sink.begin(), sink.end())), + sink.size() ); + BOOST_CHECK( sink.front().data().empty() ); + BOOST_CHECK( sink.pop_front().data().empty() ); + BOOST_CHECK( sink.empty() ); + BOOST_CHECK( source.empty() ); +} + +BOOST_AUTO_UNIT_TEST(logSink) +{ + senf::log::StringTarget logTarget; + logTarget.route(); + + debug::ActiveFeederSource source; + debug::LogSink<> sink; + + ppi::connect(source,sink); + senf::PacketData::byte data[] = { 0x13u, 0x24u, 0x35u }; + source.submit( senf::DataPacket::create(data) ); + senf::ppi::run(); + + BOOST_CHECK( ! logTarget.str().empty() ); +} + ///////////////////////////////cc.e//////////////////////////////////////// #undef prefix_