Note and indicate servers with bad link version (#982).
[dcpomatic.git] / test / recover_test.cc
index f9ef8793e8129fb6a1f0ee373fa3e016e83ac0ce..4222426c3ce9341d6e92bf58e363bedf3705b68c 100644 (file)
@@ -20,6 +20,7 @@
 
 /** @file  test/recover_test.cc
  *  @brief Test recovery of a DCP transcode after a crash.
+ *  @ingroup specific
  */
 
 #include "test.h"
@@ -49,6 +50,7 @@ note (dcp::NoteType t, string n)
 BOOST_AUTO_TEST_CASE (recover_test_2d)
 {
        shared_ptr<Film> film = new_test_film ("recover_test_2d");
+       film->set_interop (false);
        film->set_dcp_content_type (DCPContentType::from_isdcf_name ("FTR"));
        film->set_container (Ratio::from_id ("185"));
        film->set_name ("recover_test");
@@ -60,7 +62,7 @@ BOOST_AUTO_TEST_CASE (recover_test_2d)
        film->make_dcp ();
        wait_for_jobs ();
 
-       boost::filesystem::path const video = "build/test/recover_test_2d/video/185_2K_bf7d9a3ad543b4f048be97e8df309918_24_100000000_P_S_0_1200000.mxf";
+       boost::filesystem::path const video = "build/test/recover_test_2d/video/185_2K_84d36460538435d5d511ee533c8528df_24_100000000_P_S_0_1200000.mxf";
        boost::filesystem::copy_file (
                video,
                "build/test/recover_test_2d/original.mxf"
@@ -81,6 +83,7 @@ BOOST_AUTO_TEST_CASE (recover_test_2d)
 BOOST_AUTO_TEST_CASE (recover_test_3d)
 {
        shared_ptr<Film> film = new_test_film ("recover_test_3d");
+       film->set_interop (false);
        film->set_dcp_content_type (DCPContentType::from_isdcf_name ("FTR"));
        film->set_container (Ratio::from_id ("185"));
        film->set_name ("recover_test");
@@ -112,3 +115,42 @@ BOOST_AUTO_TEST_CASE (recover_test_3d)
        dcp::EqualityOptions eq;
        BOOST_CHECK (A->equals (B, eq, boost::bind (&note, _1, _2)));
 }
+
+
+BOOST_AUTO_TEST_CASE (recover_test_2d_encrypted)
+{
+       shared_ptr<Film> film = new_test_film ("recover_test_2d_encrypted");
+       film->set_interop (false);
+       film->set_dcp_content_type (DCPContentType::from_isdcf_name ("FTR"));
+       film->set_container (Ratio::from_id ("185"));
+       film->set_name ("recover_test");
+       film->set_encrypted (true);
+
+       shared_ptr<FFmpegContent> content (new FFmpegContent (film, "test/data/count300bd24.m2ts"));
+       film->examine_and_add_content (content);
+       wait_for_jobs ();
+
+       film->make_dcp ();
+       wait_for_jobs ();
+
+       boost::filesystem::path const video =
+               "build/test/recover_test_2d_encrypted/video/185_2K_84d36460538435d5d511ee533c8528df_24_100000000_E_S_0_1200000.mxf";
+
+       boost::filesystem::copy_file (
+               video,
+               "build/test/recover_test_2d_encrypted/original.mxf"
+               );
+
+       boost::filesystem::resize_file (video, 2 * 1024 * 1024);
+
+       film->make_dcp ();
+       wait_for_jobs ();
+
+       shared_ptr<dcp::MonoPictureAsset> A (new dcp::MonoPictureAsset ("build/test/recover_test_2d_encrypted/original.mxf"));
+       A->set_key (film->key ());
+       shared_ptr<dcp::MonoPictureAsset> B (new dcp::MonoPictureAsset (video));
+       B->set_key (film->key ());
+
+       dcp::EqualityOptions eq;
+       BOOST_CHECK (A->equals (B, eq, boost::bind (&note, _1, _2)));
+}