X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=test%2Fsocket_test.cc;h=b9aaba9d25d388fed38a80bbf066a9442f92f5ca;hb=0d40a51371f10ae75824c8e901ce340665163493;hp=5024272abce3eb99cb6805b8fcbadc9a92e24d60;hpb=e3c7656f9dc0acbaf518c051b847ee2e4eb7ba23;p=dcpomatic.git diff --git a/test/socket_test.cc b/test/socket_test.cc index 5024272ab..b9aaba9d2 100644 --- a/test/socket_test.cc +++ b/test/socket_test.cc @@ -20,15 +20,18 @@ #include "lib/server.h" #include "lib/dcpomatic_socket.h" +#include #include #include -#include #include #include -using boost::shared_ptr; + +using std::string; +using std::shared_ptr; using boost::bind; + #define TEST_SERVER_PORT 9142 #define TEST_SERVER_BUFFER_LENGTH 1024 @@ -79,7 +82,7 @@ public: } private: - void handle (boost::shared_ptr socket) + void handle (std::shared_ptr socket) { boost::mutex::scoped_lock lm (_mutex); BOOST_REQUIRE (_size); @@ -115,11 +118,18 @@ send (shared_ptr socket, char const* message) /** Basic test to see if Socket can send and receive data */ BOOST_AUTO_TEST_CASE (socket_basic_test) { + using boost::asio::ip::tcp; + TestServer server(false); server.expect (13); + boost::asio::io_service io_service; + tcp::resolver resolver (io_service); + tcp::resolver::query query ("127.0.0.1", dcp::raw_convert(TEST_SERVER_PORT)); + tcp::resolver::iterator endpoint_iterator = resolver.resolve (query); + shared_ptr socket (new Socket); - socket->connect (boost::asio::ip::tcp::endpoint(boost::asio::ip::tcp::v4(), TEST_SERVER_PORT)); + socket->connect (*endpoint_iterator); send (socket, "Hello world!"); server.await (); @@ -130,11 +140,18 @@ BOOST_AUTO_TEST_CASE (socket_basic_test) /** Check that the socket "auto-digest" creation works */ BOOST_AUTO_TEST_CASE (socket_digest_test1) { + using boost::asio::ip::tcp; + TestServer server(false); server.expect (13 + 16); + boost::asio::io_service io_service; + tcp::resolver resolver (io_service); + tcp::resolver::query query ("127.0.0.1", dcp::raw_convert(TEST_SERVER_PORT)); + tcp::resolver::iterator endpoint_iterator = resolver.resolve (query); + shared_ptr socket(new Socket); - socket->connect (boost::asio::ip::tcp::endpoint(boost::asio::ip::tcp::v4(), TEST_SERVER_PORT)); + socket->connect (*endpoint_iterator); { Socket::WriteDigestScope ds(socket); send (socket, "Hello world!"); @@ -152,11 +169,18 @@ BOOST_AUTO_TEST_CASE (socket_digest_test1) /** Check that the socket "auto-digest" round-trip works */ BOOST_AUTO_TEST_CASE (socket_digest_test2) { + using boost::asio::ip::tcp; + TestServer server(true); server.expect (13); + boost::asio::io_service io_service; + tcp::resolver resolver (io_service); + tcp::resolver::query query ("127.0.0.1", dcp::raw_convert(TEST_SERVER_PORT)); + tcp::resolver::iterator endpoint_iterator = resolver.resolve (query); + shared_ptr socket(new Socket); - socket->connect (boost::asio::ip::tcp::endpoint(boost::asio::ip::tcp::v4(), TEST_SERVER_PORT)); + socket->connect (*endpoint_iterator); { Socket::WriteDigestScope ds(socket); send (socket, "Hello world!");