void SocketTest::testBufferSize() { EchoServer echoServer; StreamSocket ss; ss.connect(SocketAddress("localhost", echoServer.port())); int osz = ss.getSendBufferSize(); int rsz = 32000; ss.setSendBufferSize(rsz); int asz = ss.getSendBufferSize(); std::cout << "original send buffer size: " << osz << std::endl; std::cout << "requested send buffer size: " << rsz << std::endl; std::cout << "actual send buffer size: " << asz << std::endl; osz = ss.getReceiveBufferSize(); ss.setReceiveBufferSize(rsz); asz = ss.getReceiveBufferSize(); std::cout << "original recv buffer size: " << osz << std::endl; std::cout << "requested recv buffer size: " << rsz << std::endl; std::cout << "actual recv buffer size: " << asz << std::endl; }
void SocketStreamTest::testLargeStreamEcho() { const int msgSize = 64000; EchoServer echoServer; StreamSocket ss; ss.connect(SocketAddress("localhost", echoServer.port())); SocketStream str(ss); ss.setSendBufferSize(msgSize); ss.setReceiveBufferSize(msgSize); std::string payload(msgSize, 'x'); str << payload; assert (str.good()); str.flush(); assert (str.good()); ss.shutdownSend(); assert (str.gcount() == 0); char buffer[msgSize]; str.read(buffer, sizeof(buffer)); assert (str.good()); assert (str.gcount() == msgSize); ss.close(); }