X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=test%2Ftest.cc;h=154510738e3200bd4ebc1b15cb52ce58763a42b0;hb=2710d4c7b0a6831bbf4c1fe1a42b195d276f1e67;hp=2334523a1337696f74e271bec138503159343fb1;hpb=d02f1b0f08b3095816767ab7a70254aef50eb355;p=dcpomatic.git diff --git a/test/test.cc b/test/test.cc index 2334523a1..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 (); }