X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senf%2FUtils%2FConsole%2FUDPServer.test.cc;h=b663c9dcfa720b344f0e0fe76c7e0cad5dfe8680;hb=3aced0177a1c69c7af338b4e66db8694a71873ae;hp=e35f4d07a51c5822add94afb1a43e9079c52c433;hpb=601d1f509f5bb24df167a4dd5a20da67a0af9af8;p=senf.git diff --git a/senf/Utils/Console/UDPServer.test.cc b/senf/Utils/Console/UDPServer.test.cc index e35f4d0..b663c9d 100644 --- a/senf/Utils/Console/UDPServer.test.cc +++ b/senf/Utils/Console/UDPServer.test.cc @@ -1,6 +1,6 @@ // $Id$ // -// Copyright (C) 2009 +// Copyright (C) 2009 // Fraunhofer Institute for Open Communication Systems (FOKUS) // Competence Center NETwork research (NET), St. Augustin, GERMANY // Stefan Bund @@ -27,13 +27,14 @@ //#include "UDPServer.test.ih" // Custom includes -#include "UDPServer.hh" +#include "Console.hh" +#include -#include "../../Utils/auto_unit_test.hh" +#include #include #define prefix_ -///////////////////////////////cc.p//////////////////////////////////////// +//-///////////////////////////////////////////////////////////////////////////////////////////////// namespace { @@ -42,10 +43,29 @@ namespace { senf::scheduler::terminate(); } + int base_pid = 0; + + unsigned port(unsigned i) + { + if (! base_pid) + base_pid = ::getpid(); + return 23456u + (((base_pid^(base_pid>>8)^(base_pid>>16)^(base_pid>>24))&0xff)<<2) + i; + } + + std::string localhost4str(unsigned i) + { + return (boost::format("localhost:%d") % port(i)).str(); + } + + std::string localhost6str(unsigned i) + { + return (boost::format("[::1]:%d") % port(i)).str(); + } + unsigned nread (0); unsigned flags (0); std::string data; - + void read(senf::ConnectedUDPv4ClientSocketHandle socket, int ev) { flags |= ev; @@ -60,10 +80,10 @@ namespace { } -BOOST_AUTO_UNIT_TEST(udpServer) +SENF_AUTO_UNIT_TEST(udpServer) { - senf::console::UDPServer server (senf::INet4SocketAddress("127.0.0.1:23232")); - senf::ConnectedUDPv4ClientSocketHandle socket (senf::INet4SocketAddress("127.0.0.1:23232")); + senf::console::UDPServer server (senf::INet4SocketAddress(localhost4str(0))); + senf::ConnectedUDPv4ClientSocketHandle socket (senf::INet4SocketAddress(localhost4str(0))); senf::scheduler::TimerEvent timer ("udpServer test timer", &timeout); senf::scheduler::FdEvent fdev ("udpServer test fd", boost::bind(&read, socket, _1), socket, senf::scheduler::FdEvent::EV_READ); @@ -112,7 +132,7 @@ BOOST_AUTO_UNIT_TEST(udpServer) BOOST_CHECK_EQUAL( data, "sys/ \n" ); } -///////////////////////////////cc.e//////////////////////////////////////// +//-///////////////////////////////////////////////////////////////////////////////////////////////// #undef prefix_