Bump libdcp.
[libsub.git] / test / stl_binary_writer_test.cc
index fafa14f52f8168c6967bf04c12c01983ccfe1272..94e3b0901c73bdf37f4fd7e0aa26d7e63e077975 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2014 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2014-2021 Carl Hetherington <cth@carlh.net>
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
 #include "subtitle.h"
 #include <boost/test/unit_test.hpp>
 
-using std::list;
+using std::vector;
 
 /** Test writing of a binary STL file */
 BOOST_AUTO_TEST_CASE (stl_binary_writer_test)
 {
-       list<sub::Subtitle> subs;
+       vector<sub::Subtitle> subs;
 
        {
                sub::Subtitle s;
-               s.vertical_position.line = 0;
-               s.from.set_frame (sub::FrameTime (0, 0, 41, 9));
-               s.to.set_frame (sub::FrameTime (0, 0, 42, 21));
+               s.from = sub::Time::from_hmsf (0, 0, 41, 9, sub::Rational (25, 1));
+               s.to = sub::Time::from_hmsf (0, 0, 42, 21, sub::Rational (25, 1));
+
+               {
+                       sub::Block b;
+                       b.text = "This is a subtitle";
+                       b.font = "Arial";
+                       b.font_size.set_points (42);
+                       sub::Line l;
+                       l.vertical_position.line = 0;
+                       l.vertical_position.lines = 32;
+                       l.vertical_position.reference = sub::TOP_OF_SCREEN;
+                       l.blocks.push_back (b);
+                       s.lines.push_back (l);
+               }
+
+               {
+                       sub::Block b;
+                       b.text = "and that's a line break";
+                       b.font = "Arial";
+                       b.font_size.set_points (42);
+                       sub::Line l;
+                       l.vertical_position.line = 1;
+                       l.vertical_position.lines = 32;
+                       l.vertical_position.reference = sub::TOP_OF_SCREEN;
+                       l.blocks.push_back (b);
+                       s.lines.push_back (l);
+               }
 
-               sub::Block b;
-               b.text = "This is a subtitle ";
-               b.font = "Arial";
-               b.font_size.set_points (42);
-               s.blocks.push_back (b);
-       }
-       
-       {
-               sub::Subtitle s;
-               s.vertical_position.line = 1;
-               s.from.set_frame (sub::FrameTime (0, 0, 41, 9));
-               s.to.set_frame (sub::FrameTime (0, 0, 42, 21));
-
-               sub::Block b;
-               b.text = " and that's a line break";
-               b.font = "Arial";
-               b.font_size.set_points (42);
-               s.blocks.push_back (b);
+               subs.push_back (s);
        }
 
        {
                sub::Subtitle s;
-               s.vertical_position.line = 0;
-               s.from.set_frame (sub::FrameTime (0, 1, 1, 1));
-               s.to.set_frame (sub::FrameTime (0, 1, 2, 10));
+               s.from = sub::Time::from_hmsf (0, 1, 1, 1, sub::Rational (25, 1));
+               s.to = sub::Time::from_hmsf (0, 1, 2, 10, sub::Rational (25, 1));
+
+               sub::Line l;
+               l.vertical_position.line = 0;
+               l.vertical_position.lines = 32;
+               l.vertical_position.reference = sub::TOP_OF_SCREEN;
 
                sub::Block b;
                b.text = "This is some ";
                b.font = "Arial";
                b.font_size.set_points (42);
-               s.blocks.push_back (b);
+               l.blocks.push_back (b);
 
-               b.text = "bold";
-               b.bold = true;
-               s.blocks.push_back (b);
+               b.text = "underline";
+               b.underline = true;
+               l.blocks.push_back (b);
 
                b.text = " and some ";
-               b.bold = false;
-               s.blocks.push_back (b);
+               b.underline = false;
+               l.blocks.push_back (b);
 
-               b.text = "bold italic";
-               b.bold = true;
-               b.italic = true;
-               s.blocks.push_back (b);
-
-               b.text = " and some ";
-               b.bold = false;
-               b.italic = false;
+               b.text = "underlined italic";
                b.underline = true;
-               s.blocks.push_back (b);
+               b.italic = true;
+               l.blocks.push_back (b);
 
+               s.lines.push_back (l);
                subs.push_back (s);
        }
 
@@ -107,6 +114,6 @@ BOOST_AUTO_TEST_CASE (stl_binary_writer_test)
                "Editor contact",
                "build/test/test.stl"
                );
-               
+
 }