X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=test%2Fhints_test.cc;h=ff989647359bfe8e6aaa9357e0b6757f42d90f31;hb=6d686ea45f5cd01a0d11f92a903ac77779ad8562;hp=bc858192dc6f33876a82adc61603d81677727c5c;hpb=8a8c977c12fc65f1f50ea05099387e0fc8840e7d;p=dcpomatic.git diff --git a/test/hints_test.cc b/test/hints_test.cc index bc858192d..ff9896473 100644 --- a/test/hints_test.cc +++ b/test/hints_test.cc @@ -63,6 +63,7 @@ get_hints (shared_ptr film) hints.start (); hints.join (); while (signal_manager->ui_idle()) {} + hints.rethrow(); return current_hints; } @@ -172,17 +173,20 @@ BOOST_AUTO_TEST_CASE (hint_subtitle_mxf_too_big) { string const name = "hint_subtitle_mxf_too_big"; + dcp::File fake_font("build/test/hint_subtitle_mxf_too_big.ttf", "w"); + for (int i = 0; i < 4096; ++i) { + std::vector rubbish(65536); + fake_font.write(rubbish.data(), 1, rubbish.size()); + } + fake_font.close(); + auto film = new_test_film2 (name); auto content = content_factory("test/data/" + name + ".srt").front(); content->text.front()->set_type (TextType::OPEN_SUBTITLE); content->text.front()->set_language (dcp::LanguageTag("en-US")); - for (int i = 1; i < 512; ++i) { - auto font = make_shared(String::compose("font_%1", i)); - font->set_file ("test/data/LiberationSans-Regular.ttf"); - content->text.front()->add_font(font); - } film->examine_and_add_content (content); BOOST_REQUIRE (!wait_for_jobs()); + content->text.front()->get_font("")->set_file("build/test/hint_subtitle_mxf_too_big.ttf"); auto hints = get_hints (film); BOOST_REQUIRE_EQUAL (hints.size(), 1U);