X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Socket%2FClientSocketHandle.test.cc;h=7ffbc6b9e926b54bba2cfd0a4ca7f3ff094bcff4;hb=b8ca4a544cce3e6023bb56b712a03d6362f2bb79;hp=51ad098bbd282c54a675ce4971a3493cd15da7f5;hpb=f73fa16ed5abdce272ac77f8b8b9ef2b9922c266;p=senf.git diff --git a/Socket/ClientSocketHandle.test.cc b/Socket/ClientSocketHandle.test.cc index 51ad098..7ffbc6b 100644 --- a/Socket/ClientSocketHandle.test.cc +++ b/Socket/ClientSocketHandle.test.cc @@ -1,8 +1,8 @@ // $Id$ // // Copyright (C) 2006 -// Fraunhofer Institute for Open Communication Systems (FOKUS) -// Competence Center NETwork research (NET), St. Augustin, GERMANY +// Fraunhofer Institute for Open Communication Systems (FOKUS) +// Competence Center NETwork research (NET), St. Augustin, GERMANY // Stefan Bund // // This program is free software; you can redistribute it and/or modify @@ -20,7 +20,8 @@ // Free Software Foundation, Inc., // 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -// Unit tests +/** \file + \brief ClientSocketHandle unit tests */ //#include "ClientSocketHandle.test.hh" //#include "ClientSocketHandle.test.ih" @@ -39,17 +40,17 @@ namespace { - namespace sl = senf; - class MySocketHandle - : public sl::ClientSocketHandle + : public senf::ClientSocketHandle { public: MySocketHandle() - : sl::ClientSocketHandle( - std::auto_ptr(new sl::test::SomeProtocol())) + : senf::ClientSocketHandle( + std::auto_ptr( + new senf::ProtocolSocketBody(false))) {} }; + } BOOST_AUTO_UNIT_TEST(clientSocketHandle) @@ -59,82 +60,77 @@ BOOST_AUTO_UNIT_TEST(clientSocketHandle) // conversion to other socket handles { - typedef sl::MakeSocketPolicy< - sl::test::SomeFramingPolicy, - sl::test::SomeReadPolicy, - sl::test::SomeWritePolicy + typedef senf::MakeSocketPolicy< + senf::test::SomeFramingPolicy, + senf::test::SomeReadPolicy, + senf::test::SomeWritePolicy >::policy OtherSocketPolicy; - typedef sl::SocketHandle OtherSocketHandle; + typedef senf::SocketHandle OtherSocketHandle; BOOST_CHECKPOINT("Copy-constructing socket handle"); OtherSocketHandle osh (myh); BOOST_CHECKPOINT("Assigning socket handle"); osh = myh; - typedef sl::ClientSocketHandle SomeSocketHandle; + typedef senf::ClientSocketHandle SomeSocketHandle; BOOST_CHECKPOINT("static_casting socket handle"); SomeSocketHandle ssh = - sl::static_socket_cast(osh); - BOOST_CHECK_NO_THROW( sl::dynamic_socket_cast(osh) ); - typedef sl::ClientSocketHandle(osh); + SENF_CHECK_NO_THROW( senf::dynamic_socket_cast(osh) ); + typedef senf::ClientSocketHandle::policy> SomeOtherSocketHandle; - BOOST_CHECK_THROW( sl::dynamic_socket_cast(osh), + BOOST_CHECK_THROW( senf::dynamic_socket_cast(osh), std::bad_cast ); } // reading and writing - BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.read(), "TEST-READ" ) ); + SENF_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.read(), "TEST-READ" ) ); { std::string buf("FOO-BAR"); - BOOST_CHECK_NO_THROW( myh.read(buf,0) ); + SENF_CHECK_NO_THROW( myh.read(buf,0) ); BOOST_CHECK_EQUAL( buf, "TEST-READ" ); } { char buf[11]; ::strcpy(buf,"0123456789"); - BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.read(buf,buf+10), buf+9 ) ); + SENF_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.read(buf,buf+10), buf+9 ) ); BOOST_CHECK_EQUAL( buf, "TEST-READ9" ); } - BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.readfrom().first, "TEST-READ" ) ); + SENF_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.readfrom().first, "TEST-READ" ) ); { std::string buf("FOO-BAR"); unsigned addr; - BOOST_CHECK_NO_THROW( myh.readfrom(buf,addr,0) ); + SENF_CHECK_NO_THROW( myh.readfrom(buf,addr,0) ); BOOST_CHECK_EQUAL( buf, "TEST-READ" ); } { char buf[11]; unsigned addr; ::strcpy(buf,"0123456789"); - BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.readfrom(buf,buf+10,addr), buf+9 ) ); + SENF_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.readfrom(buf,buf+10,addr), buf+9 ) ); BOOST_CHECK_EQUAL( buf, "TEST-READ9" ); } { std::string s ("TEST-WRITE"); - BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.write(s)-s.begin(), 10 ) ); + SENF_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.write(s)-s.begin(), 10 ) ); s = "TEST"; // This simulates a closed file in this test policy. However, we // have changed the semantics so this will not work anymore. // BOOST_CHECK_THROW( myh.write(s),senf::SystemException ); char const * const s1 = "TEST-WRITE9"; - BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.write(s1,s1+10), s1+10u ) ); + SENF_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.write(s1,s1+10), s1+10u ) ); s = "TEST-WRITE"; - BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.writeto(0,s)-s.begin(), 10 ) ); - BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.writeto(0,s1,s1+10), s1+10 ) ); + SENF_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.writeto(0,s)-s.begin(), 10 ) ); + SENF_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.writeto(0,s1,s1+10), s1+10 ) ); } - BOOST_CHECK_NO_THROW( myh.connect(0) ); - BOOST_CHECK_NO_THROW( myh.bind(0) ); - BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.peer(), 1u ) ); - BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.local(), 2u ) ); - - BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.rcvbuf(), 0u ) ); - BOOST_CHECK_NO_THROW( myh.rcvbuf(1) ); - BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.sndbuf(), 0u ) ); - BOOST_CHECK_NO_THROW( myh.sndbuf(1) ); + SENF_CHECK_NO_THROW( myh.connect(0) ); + SENF_CHECK_NO_THROW( myh.bind(0) ); + SENF_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.peer(), 1u ) ); + SENF_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.local(), 2u ) ); } ///////////////////////////////cc.e////////////////////////////////////////