X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=test%2Ftest.cc;h=154510738e3200bd4ebc1b15cb52ce58763a42b0;hb=2710d4c7b0a6831bbf4c1fe1a42b195d276f1e67;hp=21cf18c76e82678e8495c22d8849670344a06a7c;hpb=74a8d26a8907c6e00e29f054178a3425f44e38ed;p=dcpomatic.git diff --git a/test/test.cc b/test/test.cc index 21cf18c76..154510738 100644 --- a/test/test.cc +++ b/test/test.cc @@ -39,6 +39,16 @@ using std::cerr; using std::list; using boost::shared_ptr; +class TestUISignaller : public UISignaller +{ +public: + /* No wakes in tests: we call ui_idle ourselves */ + void wake_ui () + { + + } +}; + struct TestConfig { TestConfig() @@ -46,13 +56,13 @@ struct TestConfig dcpomatic_setup(); Config::instance()->set_num_local_encoding_threads (1); - Config::instance()->set_servers (vector > ()); + Config::instance()->set_servers (vector ()); Config::instance()->set_server_port (61920); Config::instance()->set_default_dci_metadata (DCIMetadata ()); Config::instance()->set_default_container (static_cast (0)); Config::instance()->set_default_dcp_content_type (static_cast (0)); - ui_signaller = new UISignaller (); + ui_signaller = new TestUISignaller (); } }; @@ -141,7 +151,9 @@ void wait_for_jobs () { JobManager* jm = JobManager::instance (); - while (jm->work_to_do ()) {} + while (jm->work_to_do ()) { + ui_signaller->ui_idle (); + } if (jm->errors ()) { for (list >::iterator i = jm->_jobs.begin(); i != jm->_jobs.end(); ++i) { if ((*i)->finished_in_error ()) { @@ -153,6 +165,5 @@ wait_for_jobs () BOOST_CHECK (!jm->errors()); - /* Hack: wait for ui_signaller signals to fire */ - dcpomatic_sleep (1); + ui_signaller->ui_idle (); }