Partial; better tests for subs.
authorCarl Hetherington <cth@carlh.net>
Tue, 21 Aug 2012 14:42:04 +0000 (15:42 +0100)
committerCarl Hetherington <cth@carlh.net>
Tue, 21 Aug 2012 14:42:04 +0000 (15:42 +0100)
test/ref/subs.xml
test/tests.cc

index 6afeefb3e6fcc39aed5886dbcf8c4ba2a70bff18..399c2a5721634ccd126083a4c221a48831868f06 100644 (file)
@@ -9,10 +9,12 @@
     <Subtitle SpotNumber="1" TimeIn="00:00:05:198" TimeOut="00:00:07:115" FadeUpTime="1" FadeDownTime="1">
       <Text VAlign="bottom" VPosition="15.0">My jacket was Idi Amin's</Text>
     </Subtitle>
-    <Subtitle SpotNumber="2" TimeIn="00:00:07:177" TimeOut="00:00:11:031" FadeUpTime="1" FadeDownTime="1">
-      <Text VAlign="bottom" VPosition="21.0">My corset was H.M. The Queen's</Text>
-      <Text VAlign="bottom" VPosition="15.0">My large wonderbra</Text>
-    </Subtitle>
+    <Font Italic="yes">
+      <Subtitle SpotNumber="2" TimeIn="00:00:07:177" TimeOut="00:00:11:031" FadeUpTime="1" FadeDownTime="1">
+        <Text VAlign="bottom" VPosition="21.0">My corset was H.M. The Queen's</Text>
+        <Text VAlign="bottom" VPosition="15.0">My large wonderbra</Text>
+      </Subtitle>
+    </Font>
     <Subtitle SpotNumber="3" TimeIn="00:00:11:094" TimeOut="00:00:13:063" FadeUpTime="1" FadeDownTime="1">
       <Text VAlign="bottom" VPosition="15.0">Once belonged to the Shah</Text>
     </Subtitle>
index 649a96ff4bfa68dc01efc6b05a25c650551a5ceb..3d56c3e7f5302cbb6c62242d7cb8f4cb950efc53 100644 (file)
@@ -115,9 +115,10 @@ BOOST_AUTO_TEST_CASE (subtitles)
        libdcp::SubtitleAsset subs ("test/ref", "subs.xml");
 
        BOOST_CHECK_EQUAL (subs.language(), "French");
-       BOOST_CHECK_EQUAL (subs.font_nodes().size(), 1);
-       BOOST_CHECK_EQUAL (subs.font_nodes().front()->subtitle_nodes.size(), 4);
+//     BOOST_CHECK_EQUAL (subs.font_nodes().size(), 1);
+//     BOOST_CHECK_EQUAL (subs.font_nodes().front()->subtitle_nodes.size(), 4);
 
+#if 0  
        list<shared_ptr<libdcp::SubtitleNode> >::const_iterator i = subs.font_nodes().front()->subtitle_nodes.begin ();
 
        BOOST_CHECK_EQUAL ((*i)->in, libdcp::Time (0, 0, 5, 198));
@@ -148,15 +149,34 @@ BOOST_AUTO_TEST_CASE (subtitles)
        BOOST_CHECK_EQUAL ((*i)->text_nodes.size(), 1);
        BOOST_CHECK_EQUAL ((*i)->text_nodes.front()->v_position, 15);
        BOOST_CHECK_EQUAL ((*i)->text_nodes.front()->text, "And these are Roy Hattersley's jeans");
-
-       BOOST_CHECK_EQUAL (subs.subtitles_at (libdcp::Time (0, 0, 14, 42)).size(), 1);
-       shared_ptr<libdcp::Subtitle> s = subs.subtitles_at (libdcp::Time (0, 0, 14, 42)).front ();
-       BOOST_CHECK_EQUAL (s->text(), "And these are Roy Hattersley's jeans");
-       BOOST_CHECK_EQUAL (s->v_position(), 15);
-       BOOST_CHECK_EQUAL (s->in(), libdcp::Time (0, 0, 13, 104));
-       BOOST_CHECK_EQUAL (s->out(), libdcp::Time (0, 0, 15, 177));
-       BOOST_CHECK_EQUAL (s->font(), "Arial");
-       BOOST_CHECK_EQUAL (s->size_in_pixels(1080), 53);
+#endif 
+
+       list<shared_ptr<libdcp::Subtitle> > s = subs.subtitles_at (libdcp::Time (0, 0, 6, 1));
+       BOOST_CHECK_EQUAL (s.size(), 1);
+       BOOST_CHECK_EQUAL (s.front()->text(), "My jacket was Idi Amin's");
+       BOOST_CHECK_EQUAL (s.front()->v_position(), 15);
+       BOOST_CHECK_EQUAL (s.front()->in(), libdcp::Time (0, 0, 5, 198));
+       BOOST_CHECK_EQUAL (s.front()->out(), libdcp::Time (0, 0, 7, 115));
+       BOOST_CHECK_EQUAL (s.front()->font(), "Arial");
+       BOOST_CHECK_EQUAL (s.front()->size_in_pixels(1080), 53);
+       
+       s = subs.subtitles_at (libdcp::Time (0, 0, 11, 95));
+       BOOST_CHECK_EQUAL (s.size(), 1);
+       BOOST_CHECK_EQUAL (s.front ()->text(), "Once belonged to the Shah");
+       BOOST_CHECK_EQUAL (s.front ()->v_position(), 15);
+       BOOST_CHECK_EQUAL (s.front ()->in(), libdcp::Time (0, 0, 11, 94));
+       BOOST_CHECK_EQUAL (s.front ()->out(), libdcp::Time (0, 0, 13, 63));
+       BOOST_CHECK_EQUAL (s.front ()->font(), "Arial");
+       BOOST_CHECK_EQUAL (s.front ()->size_in_pixels(1080), 53);
+
+       s = subs.subtitles_at (libdcp::Time (0, 0, 14, 42));
+       BOOST_CHECK_EQUAL (s.size(), 1);
+       BOOST_CHECK_EQUAL (s.front ()->text(), "And these are Roy Hattersley's jeans");
+       BOOST_CHECK_EQUAL (s.front ()->v_position(), 15);
+       BOOST_CHECK_EQUAL (s.front ()->in(), libdcp::Time (0, 0, 13, 104));
+       BOOST_CHECK_EQUAL (s.front ()->out(), libdcp::Time (0, 0, 15, 177));
+       BOOST_CHECK_EQUAL (s.front ()->font(), "Arial");
+       BOOST_CHECK_EQUAL (s.front ()->size_in_pixels(1080), 53);
 }
 
 BOOST_AUTO_TEST_CASE (dcp_time)