X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=test%2Fffmpeg_dcp_test.cc;h=c1c32294814a4f01576f5fc92fdcfaf80044756e;hb=ce73eaf7875a9a3326afcd839ad85eb95879c160;hp=18decee95a1e15a3441a5aa7bc0006ab64e18794;hpb=a8a0dfd1b21de6c0facf965ab119833ff6f790bf;p=dcpomatic.git diff --git a/test/ffmpeg_dcp_test.cc b/test/ffmpeg_dcp_test.cc index 18decee95..c1c322948 100644 --- a/test/ffmpeg_dcp_test.cc +++ b/test/ffmpeg_dcp_test.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2012-2014 Carl Hetherington + Copyright (C) 2012-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,53 +18,56 @@ */ + /** @file test/ffmpeg_dcp_test.cc * @brief Test creation of a very simple DCP from some FFmpegContent (data/test.mp4). + * @ingroup feature * * Also a quick test of Film::have_dcp (). */ -#include -#include -#include -#include "lib/film.h" + +#include "lib/dcp_content_type.h" #include "lib/ffmpeg_content.h" +#include "lib/film.h" #include "lib/ratio.h" -#include "lib/dcp_content_type.h" #include "lib/video_content.h" #include "test.h" +#include +#include +#include + + +using std::make_shared; -using boost::shared_ptr; BOOST_AUTO_TEST_CASE (ffmpeg_dcp_test) { - shared_ptr film = new_test_film ("ffmpeg_dcp_test"); + auto film = new_test_film ("ffmpeg_dcp_test"); film->set_name ("test_film2"); - shared_ptr c (new FFmpegContent (film, "test/data/test.mp4")); + auto c = make_shared("test/data/test.mp4"); film->examine_and_add_content (c); - wait_for_jobs (); - - c->video->set_scale (VideoContentScale (Ratio::from_id ("185"))); + BOOST_REQUIRE (!wait_for_jobs()); film->set_container (Ratio::from_id ("185")); - film->set_dcp_content_type (DCPContentType::from_pretty_name ("Test")); - film->make_dcp (); - film->write_metadata (); + film->set_dcp_content_type (DCPContentType::from_isdcf_name ("TST")); + make_and_verify_dcp (film); - wait_for_jobs (); + BOOST_REQUIRE (!wait_for_jobs()); } -/** Briefly test Film::cpls(). Requires the output from ffmpeg_dcp_test above */ -BOOST_AUTO_TEST_CASE (ffmpeg_have_dcp_test) + +/** Briefly test Film::cpls() */ +BOOST_AUTO_TEST_CASE (ffmpeg_have_dcp_test, * boost::unit_test::depends_on("ffmpeg_dcp_test")) { - boost::filesystem::path p = test_film_dir ("ffmpeg_dcp_test"); - shared_ptr film (new Film (p.string ())); + auto p = test_film_dir ("ffmpeg_dcp_test"); + auto film = make_shared(p); film->read_metadata (); BOOST_CHECK (!film->cpls().empty()); p /= film->dcp_name(); - boost::filesystem::directory_iterator i = boost::filesystem::directory_iterator (p); + auto i = boost::filesystem::directory_iterator (p); while (i != boost::filesystem::directory_iterator() && !boost::algorithm::starts_with (i->path().leaf().string(), "j2c")) { ++i; }