X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=test%2Ffile_naming_test.cc;h=ebc89d6b1130e3aec55abfbb3ad25dc10bfa52b0;hb=8611fc8597605aa51373adb4fc8f0c697b8c7360;hp=f06fdfa42fa211f6fa2f85353e56cecce9b44153;hpb=254b3044d72de6b033d7c584f5abd2b9aa70aad5;p=dcpomatic.git diff --git a/test/file_naming_test.cc b/test/file_naming_test.cc index f06fdfa42..ebc89d6b1 100644 --- a/test/file_naming_test.cc +++ b/test/file_naming_test.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2016 Carl Hetherington + Copyright (C) 2016-2020 Carl Hetherington This file is part of DCP-o-matic. @@ -20,7 +20,7 @@ /** @file test/file_naming_test.cc * @brief Test how files in DCPs are named. - * @ingroup specific + * @ingroup feature */ #include "test.h" @@ -28,6 +28,10 @@ #include "lib/film.h" #include "lib/ffmpeg_content.h" #include "lib/dcp_content_type.h" +#include "lib/video_content.h" +#ifdef DCPOMATIC_WINDOWS +#include +#endif #include #include @@ -58,6 +62,7 @@ BOOST_AUTO_TEST_CASE (file_naming_test) shared_ptr film = new_test_film ("file_naming_test"); film->set_name ("file_naming_test"); + film->set_video_frame_rate (24); film->set_dcp_content_type (DCPContentType::from_isdcf_name ("FTR")); shared_ptr r (new FFmpegContent("test/data/flat_red.png")); film->examine_and_add_content (r); @@ -65,11 +70,22 @@ BOOST_AUTO_TEST_CASE (file_naming_test) film->examine_and_add_content (g); shared_ptr b (new FFmpegContent("test/data/flat_blue.png")); film->examine_and_add_content (b); - wait_for_jobs (); + BOOST_REQUIRE (!wait_for_jobs()); + + r->set_position (film, dcpomatic::DCPTime::from_seconds(0)); + r->set_video_frame_rate (24); + r->video->set_length (24); + g->set_position (film, dcpomatic::DCPTime::from_seconds(1)); + g->set_video_frame_rate (24); + g->video->set_length (24); + b->set_position (film, dcpomatic::DCPTime::from_seconds(2)); + b->set_video_frame_rate (24); + b->video->set_length (24); film->set_reel_type (REELTYPE_BY_VIDEO_CONTENT); + film->write_metadata (); film->make_dcp (); - wait_for_jobs (); + BOOST_REQUIRE (!wait_for_jobs()); int got[3] = { 0, 0, 0 }; for ( @@ -98,17 +114,34 @@ BOOST_AUTO_TEST_CASE (file_naming_test2) shared_ptr film = new_test_film ("file_naming_test2"); film->set_name ("file_naming_test2"); film->set_dcp_content_type (DCPContentType::from_isdcf_name ("FTR")); + +#ifdef DCPOMATIC_WINDOWS + /* This is necessary so that the UTF8 string constant below gets converted properly */ + std::locale::global(boost::locale::generator().generate("")); + boost::filesystem::path::imbue(std::locale()); +#endif + shared_ptr r (new FFmpegContent("test/data/flät_red.png")); film->examine_and_add_content (r); shared_ptr g (new FFmpegContent("test/data/flat_green.png")); film->examine_and_add_content (g); shared_ptr b (new FFmpegContent("test/data/flat_blue.png")); film->examine_and_add_content (b); - wait_for_jobs (); + BOOST_REQUIRE (!wait_for_jobs()); + + r->set_position (film, dcpomatic::DCPTime::from_seconds(0)); + r->set_video_frame_rate (24); + r->video->set_length (24); + g->set_position (film, dcpomatic::DCPTime::from_seconds(1)); + g->set_video_frame_rate (24); + g->video->set_length (24); + b->set_position (film, dcpomatic::DCPTime::from_seconds(2)); + b->set_video_frame_rate (24); + b->video->set_length (24); film->set_reel_type (REELTYPE_BY_VIDEO_CONTENT); film->make_dcp (); - wait_for_jobs (); + BOOST_REQUIRE (!wait_for_jobs()); int got[3] = { 0, 0, 0 }; for (