Try to make tests more robust by specifying signer/decryption chains.
[dcpomatic.git] / test / 4k_test.cc
index da3fdf0201da913c676dae7eb4e7e2901493f3c6..f3ce0bfcc2b2e8ab03cdb3140bea39f55487d63c 100644 (file)
@@ -18,7 +18,7 @@
 
 */
 
-/** @defgroup completedcp Complete builds of DCPs with various characteristics, testing broad areas of code */
+/** @defgroup completedcp Complete builds of DCPs */
 
 /** @file  test/4k_test.cc
  *  @brief Run a 4K encode from a simple input.
 #include "lib/dcp_content_type.h"
 #include "lib/video_content.h"
 #include "lib/ratio.h"
+#include "lib/dcpomatic_log.h"
 #include "test.h"
 
-using boost::shared_ptr;
+using std::shared_ptr;
+using std::make_shared;
 
 BOOST_AUTO_TEST_CASE (fourk_test)
 {
-       shared_ptr<Film> film = new_test_film ("4k_test");
+       auto film = new_test_film ("4k_test");
+       LogSwitcher ls (film->log());
        film->set_name ("4k_test");
-       shared_ptr<FFmpegContent> c (new FFmpegContent("test/data/test.mp4"));
-       film->set_resolution (RESOLUTION_4K);
+       auto c = make_shared<FFmpegContent>("test/data/test.mp4");
+       film->set_resolution (Resolution::FOUR_K);
        film->set_dcp_content_type (DCPContentType::from_isdcf_name ("FTR"));
        film->set_container (Ratio::from_id ("185"));
        film->examine_and_add_content (c);
-       wait_for_jobs ();
+       BOOST_REQUIRE (!wait_for_jobs());
 
-       c->video->set_scale (VideoContentScale (Ratio::from_id ("185")));
-
-       film->make_dcp ();
-       wait_for_jobs ();
+       make_and_verify_dcp (
+               film,
+               {
+                       dcp::VerificationNote::Code::MISSING_FFMC_IN_FEATURE,
+                       dcp::VerificationNote::Code::MISSING_FFEC_IN_FEATURE
+               });
 
        boost::filesystem::path p (test_film_dir ("4k_test"));
        p /= film->dcp_name ();