X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=test%2Fdcp_decoder_test.cc;h=66cd402c487e415d1a167532048621b40ab3e8e3;hb=7371f01c57d5f690c4175b1875d339fa5cbd49ae;hp=c1ad90d6f66a015efc0f4b427e26709bcf5241a4;hpb=28111007e2e6fd62f5810be780706ae1618bd33f;p=dcpomatic.git diff --git a/test/dcp_decoder_test.cc b/test/dcp_decoder_test.cc index c1ad90d6f..66cd402c4 100644 --- a/test/dcp_decoder_test.cc +++ b/test/dcp_decoder_test.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2019 Carl Hetherington + Copyright (C) 2019-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,11 +18,13 @@ */ + /** @file test/dcp_decoder_test.cc * @brief Test DCPDecoder class. * @ingroup selfcontained */ + #include "lib/film.h" #include "lib/dcp_content.h" #include "lib/dcp_decoder.h" @@ -32,42 +34,37 @@ #include "lib/job_manager.h" #include "lib/config.h" #include "test.h" +#include #include #include #include + using std::list; using std::string; using std::vector; using std::make_shared; using std::shared_ptr; + /* Check that DCPDecoder reuses old data when it should */ BOOST_AUTO_TEST_CASE (check_reuse_old_data_test) { /* Make some DCPs */ - auto ov = new_test_film2 ("check_reuse_old_data_ov"); - ov->examine_and_add_content (content_factory("test/data/flat_red.png").front()); - BOOST_REQUIRE (!wait_for_jobs()); - ov->make_dcp (); - BOOST_REQUIRE (!wait_for_jobs()); + auto ov = new_test_film2 ("check_reuse_old_data_ov", {content_factory("test/data/flat_red.png").front()}); + make_and_verify_dcp (ov); - auto vf = new_test_film2 ("check_reuse_old_data_vf"); auto ov_content = make_shared(ov->dir(ov->dcp_name(false))); - vf->examine_and_add_content (ov_content); - vf->examine_and_add_content (content_factory("test/data/L.wav").front()); - BOOST_REQUIRE (!wait_for_jobs()); + auto vf = new_test_film2 ("check_reuse_old_data_vf", {ov_content, content_factory("test/data/L.wav").front()}); ov_content->set_reference_video (true); - vf->make_dcp (); - BOOST_REQUIRE (!wait_for_jobs()); + make_and_verify_dcp (vf, {dcp::VerificationNote::Code::EXTERNAL_ASSET}); auto encrypted = new_test_film2 ("check_reuse_old_data_decrypted"); encrypted->examine_and_add_content (content_factory("test/data/flat_red.png").front()); BOOST_REQUIRE (!wait_for_jobs()); encrypted->set_encrypted (true); - encrypted->make_dcp (); - BOOST_REQUIRE (!wait_for_jobs()); + make_and_verify_dcp (encrypted); dcp::DCP encrypted_dcp (encrypted->dir(encrypted->dcp_name())); encrypted_dcp.read (); @@ -90,7 +87,7 @@ BOOST_AUTO_TEST_CASE (check_reuse_old_data_test) ov_content = make_shared(ov->dir(ov->dcp_name(false))); test->examine_and_add_content (ov_content); BOOST_REQUIRE (!wait_for_jobs()); - auto player = make_shared(test); + auto player = make_shared(test, Image::Alignment::COMPACT); auto decoder = std::dynamic_pointer_cast(player->_pieces.front()->decoder); BOOST_REQUIRE (decoder); @@ -108,7 +105,7 @@ BOOST_AUTO_TEST_CASE (check_reuse_old_data_test) auto vf_content = make_shared(vf->dir(vf->dcp_name(false))); test->examine_and_add_content (vf_content); BOOST_REQUIRE (!wait_for_jobs()); - player.reset (new Player(test)); + player = make_shared(test, Image::Alignment::COMPACT); decoder = std::dynamic_pointer_cast(player->_pieces.front()->decoder); BOOST_REQUIRE (decoder); @@ -126,7 +123,7 @@ BOOST_AUTO_TEST_CASE (check_reuse_old_data_test) auto encrypted_content = make_shared(encrypted->dir(encrypted->dcp_name(false))); test->examine_and_add_content (encrypted_content); BOOST_REQUIRE (!wait_for_jobs()); - player = make_shared(test); + player = make_shared(test, Image::Alignment::COMPACT); decoder = std::dynamic_pointer_cast(player->_pieces.front()->decoder); BOOST_REQUIRE (decoder);