X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=test%2Fsmpte_subtitle_test.cc;h=3bf9dc5207a2cec205ca71ab1170fd055529d38b;hb=0a8f2a1a2058f0461a7f978295e31af34a03bb40;hp=f66ca05574dd6c26fae2eaa1539e57b46ed857cd;hpb=7a47f00a7ff3f95ef4013bf453340b94c8535e07;p=libdcp.git diff --git a/test/smpte_subtitle_test.cc b/test/smpte_subtitle_test.cc index f66ca055..3bf9dc52 100644 --- a/test/smpte_subtitle_test.cc +++ b/test/smpte_subtitle_test.cc @@ -72,7 +72,8 @@ BOOST_AUTO_TEST_CASE (smpte_subtitle_id_test) dcp::Colour(), dcp::Time(0, 0, 0, 0, 24), dcp::Time(0, 0, 0, 0, 24), - 0 + 0, + std::vector() ) ); subs.write("build/test/smpte_subtitle_id_test.mxf"); @@ -201,7 +202,8 @@ BOOST_AUTO_TEST_CASE (write_smpte_subtitle_test) dcp::Colour (0, 0, 0), dcp::Time (0, 0, 0, 0, 24), dcp::Time (0, 0, 0, 0, 24), - 0 + 0, + std::vector() ) ); @@ -227,7 +229,8 @@ BOOST_AUTO_TEST_CASE (write_smpte_subtitle_test) dcp::Colour (1, 2, 3), dcp::Time (1, 2, 3, 4, 24), dcp::Time (5, 6, 7, 8, 24), - 0 + 0, + std::vector() ) ); @@ -253,7 +256,8 @@ BOOST_AUTO_TEST_CASE (write_smpte_subtitle_test) dcp::Colour (1, 2, 3), dcp::Time (1, 2, 3, 4, 24), dcp::Time (5, 6, 7, 8, 24), - 4.2 + 4.2, + std::vector() ) ); @@ -320,7 +324,8 @@ BOOST_AUTO_TEST_CASE (write_smpte_subtitle_test2) dcp::Colour (0, 0, 0), dcp::Time (0, 0, 0, 0, 24), dcp::Time (0, 0, 0, 0, 24), - 0 + 0, + std::vector() ) ); @@ -346,7 +351,8 @@ BOOST_AUTO_TEST_CASE (write_smpte_subtitle_test2) dcp::Colour (0, 0, 0), dcp::Time (0, 0, 0, 0, 24), dcp::Time (0, 0, 0, 0, 24), - 0 + 0, + std::vector() ) ); @@ -372,7 +378,8 @@ BOOST_AUTO_TEST_CASE (write_smpte_subtitle_test2) dcp::Colour (0, 0, 0), dcp::Time (0, 0, 0, 0, 24), dcp::Time (0, 0, 0, 0, 24), - 0 + 0, + std::vector() ) ); @@ -398,7 +405,8 @@ BOOST_AUTO_TEST_CASE (write_smpte_subtitle_test2) dcp::Colour (0, 0, 0), dcp::Time (0, 0, 0, 0, 24), dcp::Time (0, 0, 0, 0, 24), - 0 + 0, + std::vector() ) ); @@ -424,7 +432,8 @@ BOOST_AUTO_TEST_CASE (write_smpte_subtitle_test2) dcp::Colour (0, 0, 0), dcp::Time (0, 0, 0, 0, 24), dcp::Time (0, 0, 0, 0, 24), - 0 + 0, + std::vector() ) ); @@ -450,7 +459,8 @@ BOOST_AUTO_TEST_CASE (write_smpte_subtitle_test2) dcp::Colour (0, 0, 0), dcp::Time (0, 0, 0, 0, 24), dcp::Time (0, 0, 0, 0, 24), - 0 + 0, + std::vector() ) ); @@ -564,7 +574,8 @@ BOOST_AUTO_TEST_CASE (write_subtitles_in_vertical_order_with_top_alignment) dcp::Colour (0, 0, 0), dcp::Time (0, 0, 0, 0, 24), dcp::Time (0, 0, 0, 0, 24), - 0 + 0, + std::vector() ) ); @@ -590,7 +601,8 @@ BOOST_AUTO_TEST_CASE (write_subtitles_in_vertical_order_with_top_alignment) dcp::Colour (0, 0, 0), dcp::Time (0, 0, 0, 0, 24), dcp::Time (0, 0, 0, 0, 24), - 0 + 0, + std::vector() ) ); @@ -652,7 +664,8 @@ BOOST_AUTO_TEST_CASE (write_subtitles_in_vertical_order_with_bottom_alignment) dcp::Colour (0, 0, 0), dcp::Time (0, 0, 0, 0, 24), dcp::Time (0, 0, 0, 0, 24), - 0 + 0, + std::vector() ) ); @@ -678,7 +691,8 @@ BOOST_AUTO_TEST_CASE (write_subtitles_in_vertical_order_with_bottom_alignment) dcp::Colour (0, 0, 0), dcp::Time (0, 0, 0, 0, 24), dcp::Time (0, 0, 0, 0, 24), - 0 + 0, + std::vector() ) ); @@ -722,19 +736,17 @@ BOOST_AUTO_TEST_CASE(smpte_subtitle_standard_written_correctly) dcp::SMPTESubtitleAsset test_2014; test_2014.set_issue_date(dcp::LocalTime("2020-01-01T14:00:00")); test_2014.write(out / "2014.mxf"); - std::cout << dcp::SMPTESubtitleAsset(ref / "2014.mxf").raw_xml() << "\n"; - std::cout << dcp::SMPTESubtitleAsset(out / "2014.mxf").raw_xml() << "\n"; - BOOST_CHECK(dcp::SMPTESubtitleAsset(ref / "2014.mxf").raw_xml() == dcp::SMPTESubtitleAsset(out / "2014.mxf").raw_xml()); + BOOST_CHECK_EQUAL(dcp::SMPTESubtitleAsset(ref / "2014.mxf").raw_xml(), dcp::SMPTESubtitleAsset(out / "2014.mxf").raw_xml()); dcp::SMPTESubtitleAsset test_2010(dcp::SubtitleStandard::SMPTE_2010); test_2010.set_issue_date(dcp::LocalTime("2020-01-01T14:00:00")); test_2010.write(out / "2010.mxf"); - BOOST_CHECK(dcp::SMPTESubtitleAsset(ref / "2010.mxf").raw_xml() == dcp::SMPTESubtitleAsset(out / "2010.mxf").raw_xml()); + BOOST_CHECK_EQUAL(dcp::SMPTESubtitleAsset(ref / "2010.mxf").raw_xml(), dcp::SMPTESubtitleAsset(out / "2010.mxf").raw_xml()); dcp::SMPTESubtitleAsset test_2007(dcp::SubtitleStandard::SMPTE_2007); test_2007.set_issue_date(dcp::LocalTime("2020-01-01T14:00:00")); test_2007.write(out / "2007.mxf"); - BOOST_CHECK(dcp::SMPTESubtitleAsset(ref / "2007.mxf").raw_xml() == dcp::SMPTESubtitleAsset(out / "2007.mxf").raw_xml()); + BOOST_CHECK_EQUAL(dcp::SMPTESubtitleAsset(ref / "2007.mxf").raw_xml(), dcp::SMPTESubtitleAsset(out / "2007.mxf").raw_xml()); } @@ -750,3 +762,23 @@ BOOST_AUTO_TEST_CASE(smpte_subtitle_standard_read_correctly) BOOST_CHECK(test_2014.subtitle_standard() == dcp::SubtitleStandard::SMPTE_2014); } + +BOOST_AUTO_TEST_CASE(smpte_subtitle_intrinsic_duration_read_correctly) +{ + dcp::SMPTESubtitleAsset ref("test/data/verify_incorrect_closed_caption_ordering3.xml"); + + dcp::Key key; + ref.set_key(key); + + auto constexpr duration = 480U; + + ref.set_intrinsic_duration(duration); + + auto const path = boost::filesystem::path("build/test/smpte_subtitle_instrinsic_duration_read_correctly.mxf"); + ref.write(path); + + auto check = dcp::SMPTESubtitleAsset(path); + check.set_key(key); + BOOST_CHECK_EQUAL(check.intrinsic_duration(), duration); +} +