X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=test%2Fclient_server_test.cc;h=1b40174838b758c2b11e1ecb521e845d3772e0a8;hb=d0a0a4839f0e1e8d37f9f9ad41784c4d18210a6b;hp=e21f41c7998163ec7c5290e1b6aa0b3ba16797aa;hpb=a78b741c43830c84bcb4d18e3147746f13a668e5;p=dcpomatic.git diff --git a/test/client_server_test.cc b/test/client_server_test.cc index e21f41c79..1b4017483 100644 --- a/test/client_server_test.cc +++ b/test/client_server_test.cc @@ -20,6 +20,7 @@ /** @file test/client_server_test.cc * @brief Test the server class. + * @ingroup specific * * Create a test image and then encode it using the standard mechanism * and also using a EncodeServer object running on localhost. Compare the resulting @@ -114,7 +115,7 @@ BOOST_AUTO_TEST_CASE (client_server_test_rgb) EncodeServer* server = new EncodeServer (log, true, 2); - new thread (boost::bind (&EncodeServer::run, server)); + thread* server_thread = new thread (boost::bind (&EncodeServer::run, server)); /* Let the server get itself ready */ dcpomatic_sleep (1); @@ -134,6 +135,9 @@ BOOST_AUTO_TEST_CASE (client_server_test_rgb) delete *i; } + server->stop (); + server_thread->join (); + delete server_thread; delete server; } @@ -193,7 +197,7 @@ BOOST_AUTO_TEST_CASE (client_server_test_yuv) EncodeServer* server = new EncodeServer (log, true, 2); - new thread (boost::bind (&EncodeServer::run, server)); + thread* server_thread = new thread (boost::bind (&EncodeServer::run, server)); /* Let the server get itself ready */ dcpomatic_sleep (1); @@ -213,6 +217,9 @@ BOOST_AUTO_TEST_CASE (client_server_test_yuv) delete *i; } + server->stop (); + server_thread->join (); + delete server_thread; delete server; } @@ -283,7 +290,7 @@ BOOST_AUTO_TEST_CASE (client_server_test_j2k) EncodeServer* server = new EncodeServer (log, true, 2); - new thread (boost::bind (&EncodeServer::run, server)); + thread* server_thread = new thread (boost::bind (&EncodeServer::run, server)); /* Let the server get itself ready */ dcpomatic_sleep (1); @@ -303,5 +310,8 @@ BOOST_AUTO_TEST_CASE (client_server_test_j2k) delete *i; } + server->stop (); + server_thread->join (); + delete server_thread; delete server; }