X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=test%2Fssa_subtitle_test.cc;h=5c2e61b7e41d74602209432e0f6e9017d6fdf33b;hb=6a3c03c5eed3cab8fdfdb04fcbaf6cabe8c715e9;hp=63a90b448c3852726437a92230fad95d957c7ac2;hpb=67a68bd971ebe1b35daa3f75873b4ccb53c00ba0;p=dcpomatic.git diff --git a/test/ssa_subtitle_test.cc b/test/ssa_subtitle_test.cc index 63a90b448..5c2e61b7e 100644 --- a/test/ssa_subtitle_test.cc +++ b/test/ssa_subtitle_test.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2016 Carl Hetherington + Copyright (C) 2016-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,63 +18,51 @@ */ + /** @file test/ssa_subtitle_test.cc * @brief Test use of SSA subtitle files. - * @ingroup specific + * @ingroup feature */ + #include "lib/film.h" -#include "lib/text_subtitle_content.h" +#include "lib/string_text_file_content.h" #include "lib/dcp_content_type.h" #include "lib/font.h" #include "lib/ratio.h" -#include "lib/subtitle_content.h" +#include "lib/text_content.h" #include "test.h" #include #include -#include + using std::string; using std::list; -using boost::shared_ptr; +using std::shared_ptr; +using std::make_shared; + /** Make a DCP with subs from a .ssa file */ BOOST_AUTO_TEST_CASE (ssa_subtitle_test1) { - shared_ptr film = new_test_film ("ssa_subtitle_test1"); + Cleanup cl; + + auto film = new_test_film2 ("ssa_subtitle_test1", {}, &cl); film->set_container (Ratio::from_id ("185")); - film->set_dcp_content_type (DCPContentType::from_isdcf_name ("TLR")); film->set_name ("frobozz"); film->set_interop (true); - shared_ptr content (new TextSubtitleContent (film, private_data / "DKH_UT_EN20160601def.ssa")); + auto content = make_shared(TestPaths::private_data() / "DKH_UT_EN20160601def.ssa"); film->examine_and_add_content (content); - wait_for_jobs (); + BOOST_REQUIRE (!wait_for_jobs()); - content->subtitle->set_use (true); - content->subtitle->set_burn (false); + content->only_text()->set_use (true); + content->only_text()->set_burn (false); - film->make_dcp (); - wait_for_jobs (); + make_and_verify_dcp (film, { dcp::VerificationNote::Code::INVALID_STANDARD }); /* Find the subtitle file and check it */ - for ( - boost::filesystem::directory_iterator i = boost::filesystem::directory_iterator (film->directory().get() / film->dcp_name (false)); - i != boost::filesystem::directory_iterator (); - ++i) { - - if (boost::filesystem::is_directory (i->path ())) { - for ( - boost::filesystem::directory_iterator j = boost::filesystem::directory_iterator (i->path ()); - j != boost::filesystem::directory_iterator (); - ++j) { - - if (boost::algorithm::starts_with (j->path().leaf().string(), "sub_")) { - list ignore; - ignore.push_back ("SubtitleID"); - check_xml (*j, private_data / "DKH_UT_EN20160601def.xml", ignore); - } - } - } - } + check_xml (subtitle_file(film), TestPaths::private_data() / "DKH_UT_EN20160601def.xml", {"SubtitleID"}); + + cl.run (); }