Output hints on stderr.
[dcpomatic.git] / test / ssa_subtitle_test.cc
index 5c2e61b7e41d74602209432e0f6e9017d6fdf33b..8132ba3a0db3aab1283030eaac3c9b3b4034ca2d 100644 (file)
  */
 
 
-#include "lib/film.h"
-#include "lib/string_text_file_content.h"
 #include "lib/dcp_content_type.h"
+#include "lib/film.h"
 #include "lib/font.h"
 #include "lib/ratio.h"
+#include "lib/string_text_file_content.h"
 #include "lib/text_content.h"
 #include "test.h"
+#include <dcp/interop_subtitle_asset.h>
 #include <boost/test/unit_test.hpp>
 #include <boost/algorithm/string.hpp>
 
 
-using std::string;
 using std::list;
-using std::shared_ptr;
 using std::make_shared;
+using std::string;
 
 
 /** Make a DCP with subs from a .ssa file */
@@ -61,8 +61,16 @@ BOOST_AUTO_TEST_CASE (ssa_subtitle_test1)
 
        make_and_verify_dcp (film, { dcp::VerificationNote::Code::INVALID_STANDARD });
 
-       /* Find the subtitle file and check it */
-       check_xml (subtitle_file(film), TestPaths::private_data() / "DKH_UT_EN20160601def.xml", {"SubtitleID"});
+       auto ref = make_shared<dcp::InteropSubtitleAsset>(TestPaths::private_data() / "DKH_UT_EN20160601def.xml");
+       auto check = make_shared<dcp::InteropSubtitleAsset>(subtitle_file(film));
+
+       dcp::EqualityOptions options;
+       options.max_subtitle_vertical_position_error = 0.1;
+       BOOST_CHECK(ref->equals(check, options, [](dcp::NoteType t, string n) {
+               if (t == dcp::NoteType::ERROR) {
+                       std::cerr << n << "\n";
+               }
+       }));
 
        cl.run ();
 }