Use XX as an audio language when there is no specified audio language (#1939).
[dcpomatic.git] / test / isdcf_name_test.cc
index 3465db750336118e3297630d350975f24bde53d8..dad2ba7d971783d781c09b59b3bbedf2264ea10e 100644 (file)
@@ -42,7 +42,7 @@ using std::shared_ptr;
 
 BOOST_AUTO_TEST_CASE (isdcf_name_test)
 {
-       shared_ptr<Film> film = new_test_film ("isdcf_name_test");
+       auto film = new_test_film ("isdcf_name_test");
 
        /* A basic test */
 
@@ -61,6 +61,11 @@ BOOST_AUTO_TEST_CASE (isdcf_name_test)
        film->set_interop (true);
        BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilm_FTR-1_F_EN-XX_UK-PG_MOS_2K_ST_20140704_FA_IOP_OV");
 
+       /* Check that specifying no audio language writes XX */
+       m.audio_language = "";
+       film->set_isdcf_metadata (m);
+       BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilm_FTR-1_F_XX-XX_UK-PG_MOS_2K_ST_20140704_FA_IOP_OV");
+
        /* Test a long name and some different data */
 
        film->set_name ("My Nice Film With A Very Long Name");
@@ -68,7 +73,7 @@ BOOST_AUTO_TEST_CASE (isdcf_name_test)
        film->set_container (Ratio::from_id ("239"));
        film->_isdcf_date = boost::gregorian::date (2014, boost::gregorian::Jul, 4);
        film->set_audio_channels (1);
-       film->set_resolution (RESOLUTION_4K);
+       film->set_resolution (Resolution::FOUR_K);
        film->set_subtitle_language (dcp::LanguageTag("fr-FR"));
        shared_ptr<Content> text = content_factory("test/data/subrip.srt").front();
        BOOST_REQUIRE_EQUAL (text->text.size(), 1U);
@@ -215,3 +220,4 @@ BOOST_AUTO_TEST_CASE (isdcf_name_test)
        sound->audio->set_mapping (mapping);
        BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_71-HI-VI_4K_DI_20140704_PP_SMPTE_OV");
 }
+