X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Socket%2FClientSocketHandle.test.cc;h=ce68451b1db7874fba6f551be05b651b793ca447;hb=c13146edc1b57cc60f102bcfd1a7a602ecec261f;hp=816573b534c8b2e086cb96fbb69ba6a906966554;hpb=85ab07d100a382467a42e19d741d403a7a96c951;p=senf.git diff --git a/Socket/ClientSocketHandle.test.cc b/Socket/ClientSocketHandle.test.cc index 816573b..ce68451 100644 --- a/Socket/ClientSocketHandle.test.cc +++ b/Socket/ClientSocketHandle.test.cc @@ -87,13 +87,13 @@ BOOST_AUTO_UNIT_TEST(clientSocketHandle) BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.read(), "TEST-READ" ) ); { std::string buf("FOO-BAR"); - BOOST_CHECK_NO_THROW( myh.read(buf) ); + BOOST_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,10), 9u ) ); + BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.read(buf,buf+10), buf+9 ) ); BOOST_CHECK_EQUAL( buf, "TEST-READ9" ); } @@ -101,22 +101,30 @@ BOOST_AUTO_UNIT_TEST(clientSocketHandle) { std::string buf("FOO-BAR"); unsigned addr; - BOOST_CHECK_NO_THROW( myh.readfrom(buf,addr) ); + BOOST_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,10,addr), 9u ) ); + BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.readfrom(buf,buf+10,addr), buf+9 ) ); BOOST_CHECK_EQUAL( buf, "TEST-READ9" ); } - BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.write("TEST-WRITE"), 10u ) ); - BOOST_CHECK_THROW( myh.write("TEST"),senf::SystemException ); - BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.write("TEST-WRITE9",10), 10u ) ); - BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.writeto(0,"TEST-WRITE"), 10u ) ); - BOOST_CHECK_NO_THROW( BOOST_CHECK_EQUAL( myh.writeto(0,"TEST-WRITE9",10), 10u ) ); + { + std::string s ("TEST-WRITE"); + BOOST_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 ) ); + 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 ) ); + } BOOST_CHECK_NO_THROW( myh.connect(0) ); BOOST_CHECK_NO_THROW( myh.bind(0) );