summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2021-04-11 20:49:44 +0200
committerCarl Hetherington <cth@carlh.net>2021-04-12 01:22:10 +0200
commit7d66bda50ade8ea618f331b885f1bfa4fa0a2af9 (patch)
tree9846716f11327850e9a6bdd2cb00243be828590f /test
parent3370a67e8a9aeaec45911ba1c714a0d259781fdf (diff)
Split ReelSubtitleAsset into Interop and SMPTE classes.
Diffstat (limited to 'test')
-rw-r--r--test/reel_asset_test.cc8
-rw-r--r--test/verify_test.cc75
-rw-r--r--test/write_subtitle_test.cc6
3 files changed, 45 insertions, 44 deletions
diff --git a/test/reel_asset_test.cc b/test/reel_asset_test.cc
index 8d7a8971..94f9c265 100644
--- a/test/reel_asset_test.cc
+++ b/test/reel_asset_test.cc
@@ -78,10 +78,10 @@ BOOST_AUTO_TEST_CASE (reel_picture_asset_test)
}
-/** Test the XML constructor of ReelSubtitleAsset */
-BOOST_AUTO_TEST_CASE (reel_subtitle_asset_test)
+/** Test the XML constructor of ReelSMPTESubtitleAsset */
+BOOST_AUTO_TEST_CASE (reel_smpte_subtitle_asset_test)
{
- shared_ptr<cxml::Document> doc (new cxml::Document("MainSubtitle"));
+ auto doc = make_shared<cxml::Document>("MainSubtitle");
doc->read_string (
"<MainSubtitle>"
@@ -97,7 +97,7 @@ BOOST_AUTO_TEST_CASE (reel_subtitle_asset_test)
"</MainSubtitle>"
);
- dcp::ReelSubtitleAsset ps (doc);
+ dcp::ReelSMPTESubtitleAsset ps (doc);
BOOST_CHECK_EQUAL (ps.id(), "8bca1489-aab1-9259-a4fd-8150abc1de12");
BOOST_CHECK_EQUAL (ps.annotation_text(), "Goodbye world!");
BOOST_CHECK_EQUAL (ps.edit_rate(), dcp::Fraction(25, 1));
diff --git a/test/verify_test.cc b/test/verify_test.cc
index 35c087e7..78e264a7 100644
--- a/test/verify_test.cc
+++ b/test/verify_test.cc
@@ -42,11 +42,12 @@
#include "raw_convert.h"
#include "reel.h"
#include "reel_closed_caption_asset.h"
+#include "reel_interop_subtitle_asset.h"
#include "reel_markers_asset.h"
#include "reel_mono_picture_asset.h"
#include "reel_sound_asset.h"
#include "reel_stereo_picture_asset.h"
-#include "reel_subtitle_asset.h"
+#include "reel_smpte_subtitle_asset.h"
#include "smpte_subtitle_asset.h"
#include "stereo_picture_asset.h"
#include "stream_operators.h"
@@ -646,7 +647,7 @@ BOOST_AUTO_TEST_CASE (verify_valid_interop_subtitles)
prepare_directory (dir);
copy_file ("test/data/subs1.xml", dir / "subs.xml");
auto asset = make_shared<dcp::InteropSubtitleAsset>(dir / "subs.xml");
- auto reel_asset = make_shared<dcp::ReelSubtitleAsset>(asset, dcp::Fraction(24, 1), 16 * 24, 0);
+ auto reel_asset = make_shared<dcp::ReelInteropSubtitleAsset>(asset, dcp::Fraction(24, 1), 16 * 24, 0);
write_dcp_with_single_asset (dir, reel_asset, dcp::Standard::INTEROP);
check_verify_result ({dir}, {{ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_STANDARD }});
@@ -661,7 +662,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_interop_subtitles)
prepare_directory (dir);
copy_file ("test/data/subs1.xml", dir / "subs.xml");
auto asset = make_shared<dcp::InteropSubtitleAsset>(dir / "subs.xml");
- auto reel_asset = make_shared<dcp::ReelSubtitleAsset>(asset, dcp::Fraction(24, 1), 16 * 24, 0);
+ auto reel_asset = make_shared<dcp::ReelInteropSubtitleAsset>(asset, dcp::Fraction(24, 1), 16 * 24, 0);
write_dcp_with_single_asset (dir, reel_asset, dcp::Standard::INTEROP);
{
@@ -691,7 +692,7 @@ BOOST_AUTO_TEST_CASE (verify_valid_smpte_subtitles)
prepare_directory (dir);
copy_file ("test/data/subs.mxf", dir / "subs.mxf");
auto asset = make_shared<dcp::SMPTESubtitleAsset>(dir / "subs.mxf");
- auto reel_asset = make_shared<dcp::ReelSubtitleAsset>(asset, dcp::Fraction(24, 1), 6046, 0);
+ auto reel_asset = make_shared<dcp::ReelSMPTESubtitleAsset>(asset, dcp::Fraction(24, 1), 6046, 0);
auto cpl = write_dcp_with_single_asset (dir, reel_asset);
check_verify_result ({dir}, {{ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->id(), cpl->file().get() }});
@@ -706,7 +707,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_smpte_subtitles)
prepare_directory (dir);
copy_file ("test/data/broken_smpte.mxf", dir / "subs.mxf");
auto asset = make_shared<dcp::SMPTESubtitleAsset>(dir / "subs.mxf");
- auto reel_asset = make_shared<dcp::ReelSubtitleAsset>(asset, dcp::Fraction(24, 1), 6046, 0);
+ auto reel_asset = make_shared<dcp::ReelSMPTESubtitleAsset>(asset, dcp::Fraction(24, 1), 6046, 0);
auto cpl = write_dcp_with_single_asset (dir, reel_asset);
check_verify_result (
@@ -761,7 +762,7 @@ BOOST_AUTO_TEST_CASE (verify_valid_cpl_metadata)
copy_file ("test/data/subs.mxf", dir / "subs.mxf");
auto asset = make_shared<dcp::SMPTESubtitleAsset>(dir / "subs.mxf");
- auto reel_asset = make_shared<dcp::ReelSubtitleAsset>(asset, dcp::Fraction(24, 1), 16 * 24, 0);
+ auto reel_asset = make_shared<dcp::ReelSMPTESubtitleAsset>(asset, dcp::Fraction(24, 1), 16 * 24, 0);
auto reel = make_shared<dcp::Reel>();
reel->add (reel_asset);
@@ -904,7 +905,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_language1)
auto asset = make_shared<dcp::SMPTESubtitleAsset>(dir / "subs.mxf");
asset->_language = "wrong-andbad";
asset->write (dir / "subs.mxf");
- auto reel_asset = make_shared<dcp::ReelSubtitleAsset>(asset, dcp::Fraction(24, 1), 6046, 0);
+ auto reel_asset = make_shared<dcp::ReelSMPTESubtitleAsset>(asset, dcp::Fraction(24, 1), 6046, 0);
reel_asset->_language = "badlang";
auto cpl = write_dcp_with_single_asset (dir, reel_asset);
@@ -1242,7 +1243,7 @@ verify_timed_text_asset_too_large (string name)
BOOST_AUTO_TEST_CASE (verify_subtitle_asset_too_large)
{
- verify_timed_text_asset_too_large<dcp::ReelSubtitleAsset>("verify_subtitle_asset_too_large");
+ verify_timed_text_asset_too_large<dcp::ReelSMPTESubtitleAsset>("verify_subtitle_asset_too_large");
verify_timed_text_asset_too_large<dcp::ReelClosedCaptionAsset>("verify_closed_caption_asset_too_large");
}
@@ -1281,7 +1282,7 @@ BOOST_AUTO_TEST_CASE (verify_missing_subtitle_language)
auto subs = make_shared<dcp::SMPTESubtitleAsset>(dir / "subs.xml");
subs->write (dir / "subs.mxf");
- auto reel_subs = make_shared<dcp::ReelSubtitleAsset>(subs, dcp::Fraction(24, 1), 106, 0);
+ auto reel_subs = make_shared<dcp::ReelSMPTESubtitleAsset>(subs, dcp::Fraction(24, 1), 106, 0);
dcp->cpls().front()->reels().front()->add(reel_subs);
dcp->write_xml (
dcp::Standard::SMPTE,
@@ -1312,7 +1313,7 @@ BOOST_AUTO_TEST_CASE (verify_mismatched_subtitle_languages)
subs->set_language (dcp::LanguageTag("de-DE"));
subs->add (simple_subtitle());
subs->write (path / "subs1.mxf");
- auto reel_subs = make_shared<dcp::ReelSubtitleAsset>(subs, dcp::Fraction(24, 1), reel_length, 0);
+ auto reel_subs = make_shared<dcp::ReelSMPTESubtitleAsset>(subs, dcp::Fraction(24, 1), reel_length, 0);
cpl->reels()[0]->add(reel_subs);
}
@@ -1321,7 +1322,7 @@ BOOST_AUTO_TEST_CASE (verify_mismatched_subtitle_languages)
subs->set_language (dcp::LanguageTag("en-US"));
subs->add (simple_subtitle());
subs->write (path / "subs2.mxf");
- auto reel_subs = make_shared<dcp::ReelSubtitleAsset>(subs, dcp::Fraction(24, 1), reel_length, 0);
+ auto reel_subs = make_shared<dcp::ReelSMPTESubtitleAsset>(subs, dcp::Fraction(24, 1), reel_length, 0);
cpl->reels()[1]->add(reel_subs);
}
@@ -1419,7 +1420,7 @@ BOOST_AUTO_TEST_CASE (verify_missing_subtitle_start_time)
auto subs = make_shared<dcp::SMPTESubtitleAsset>(dir / "subs.xml");
subs->write (dir / "subs.mxf");
- auto reel_subs = make_shared<dcp::ReelSubtitleAsset>(subs, dcp::Fraction(24, 1), 106, 0);
+ auto reel_subs = make_shared<dcp::ReelSMPTESubtitleAsset>(subs, dcp::Fraction(24, 1), 106, 0);
dcp->cpls().front()->reels().front()->add(reel_subs);
dcp->write_xml (
dcp::Standard::SMPTE,
@@ -1473,7 +1474,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_start_time)
auto subs = make_shared<dcp::SMPTESubtitleAsset>(dir / "subs.xml");
subs->write (dir / "subs.mxf");
- auto reel_subs = make_shared<dcp::ReelSubtitleAsset>(subs, dcp::Fraction(24, 1), 106, 0);
+ auto reel_subs = make_shared<dcp::ReelSMPTESubtitleAsset>(subs, dcp::Fraction(24, 1), 106, 0);
dcp->cpls().front()->reels().front()->add(reel_subs);
dcp->write_xml (
dcp::Standard::SMPTE,
@@ -1531,7 +1532,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_first_text_time)
{
auto const dir = path("build/test/verify_invalid_subtitle_first_text_time");
/* Just too early */
- auto cpl = dcp_with_text<dcp::ReelSubtitleAsset> (dir, {{ 4 * 24 - 1, 5 * 24 }});
+ auto cpl = dcp_with_text<dcp::ReelSMPTESubtitleAsset> (dir, {{ 4 * 24 - 1, 5 * 24 }});
check_verify_result (
{ dir },
{
@@ -1546,7 +1547,7 @@ BOOST_AUTO_TEST_CASE (verify_valid_subtitle_first_text_time)
{
auto const dir = path("build/test/verify_valid_subtitle_first_text_time");
/* Just late enough */
- auto cpl = dcp_with_text<dcp::ReelSubtitleAsset> (dir, {{ 4 * 24, 5 * 24 }});
+ auto cpl = dcp_with_text<dcp::ReelSMPTESubtitleAsset> (dir, {{ 4 * 24, 5 * 24 }});
check_verify_result ({dir}, {{ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->id(), cpl->file().get() }});
}
@@ -1562,7 +1563,7 @@ BOOST_AUTO_TEST_CASE (verify_valid_subtitle_first_text_time_on_second_reel)
add_test_subtitle (asset1, 4 * 24, 5 * 24);
asset1->set_language (dcp::LanguageTag("de-DE"));
asset1->write (dir / "subs1.mxf");
- auto reel_asset1 = make_shared<dcp::ReelSubtitleAsset>(asset1, dcp::Fraction(24, 1), 5 * 24, 0);
+ auto reel_asset1 = make_shared<dcp::ReelSMPTESubtitleAsset>(asset1, dcp::Fraction(24, 1), 5 * 24, 0);
auto reel1 = make_shared<dcp::Reel>();
reel1->add (reel_asset1);
auto markers1 = make_shared<dcp::ReelMarkersAsset>(dcp::Fraction(24, 1), 5 * 24, 0);
@@ -1575,7 +1576,7 @@ BOOST_AUTO_TEST_CASE (verify_valid_subtitle_first_text_time_on_second_reel)
add_test_subtitle (asset2, 3, 4 * 24);
asset2->set_language (dcp::LanguageTag("de-DE"));
asset2->write (dir / "subs2.mxf");
- auto reel_asset2 = make_shared<dcp::ReelSubtitleAsset>(asset2, dcp::Fraction(24, 1), 4 * 24, 0);
+ auto reel_asset2 = make_shared<dcp::ReelSMPTESubtitleAsset>(asset2, dcp::Fraction(24, 1), 4 * 24, 0);
auto reel2 = make_shared<dcp::Reel>();
reel2->add (reel_asset2);
auto markers2 = make_shared<dcp::ReelMarkersAsset>(dcp::Fraction(24, 1), 4 * 24, 0);
@@ -1603,7 +1604,7 @@ BOOST_AUTO_TEST_CASE (verify_valid_subtitle_first_text_time_on_second_reel)
BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_spacing)
{
auto const dir = path("build/test/verify_invalid_subtitle_spacing");
- auto cpl = dcp_with_text<dcp::ReelSubtitleAsset> (
+ auto cpl = dcp_with_text<dcp::ReelSMPTESubtitleAsset> (
dir,
{
{ 4 * 24, 5 * 24 },
@@ -1621,7 +1622,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_spacing)
BOOST_AUTO_TEST_CASE (verify_valid_subtitle_spacing)
{
auto const dir = path("build/test/verify_valid_subtitle_spacing");
- auto cpl = dcp_with_text<dcp::ReelSubtitleAsset> (
+ auto cpl = dcp_with_text<dcp::ReelSMPTESubtitleAsset> (
dir,
{
{ 4 * 24, 5 * 24 },
@@ -1634,7 +1635,7 @@ BOOST_AUTO_TEST_CASE (verify_valid_subtitle_spacing)
BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_duration)
{
auto const dir = path("build/test/verify_invalid_subtitle_duration");
- auto cpl = dcp_with_text<dcp::ReelSubtitleAsset> (dir, {{ 4 * 24, 4 * 24 + 1 }});
+ auto cpl = dcp_with_text<dcp::ReelSMPTESubtitleAsset> (dir, {{ 4 * 24, 4 * 24 + 1 }});
check_verify_result (
{dir},
{
@@ -1647,7 +1648,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_duration)
BOOST_AUTO_TEST_CASE (verify_valid_subtitle_duration)
{
auto const dir = path("build/test/verify_valid_subtitle_duration");
- auto cpl = dcp_with_text<dcp::ReelSubtitleAsset> (dir, {{ 4 * 24, 4 * 24 + 17 }});
+ auto cpl = dcp_with_text<dcp::ReelSMPTESubtitleAsset> (dir, {{ 4 * 24, 4 * 24 + 17 }});
check_verify_result ({dir}, {{ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->id(), cpl->file().get() }});
}
@@ -1662,7 +1663,7 @@ BOOST_AUTO_TEST_CASE (verify_subtitle_overlapping_reel_boundary)
asset->set_language (dcp::LanguageTag("de-DE"));
asset->write (dir / "subs.mxf");
- auto reel_asset = make_shared<dcp::ReelSubtitleAsset>(asset, dcp::Fraction(24, 1), 3 * 24, 0);
+ auto reel_asset = make_shared<dcp::ReelSMPTESubtitleAsset>(asset, dcp::Fraction(24, 1), 3 * 24, 0);
auto cpl = write_dcp_with_single_asset (dir, reel_asset);
check_verify_result (
{dir},
@@ -1679,7 +1680,7 @@ BOOST_AUTO_TEST_CASE (verify_subtitle_overlapping_reel_boundary)
BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_line_count1)
{
auto const dir = path ("build/test/invalid_subtitle_line_count1");
- auto cpl = dcp_with_text<dcp::ReelSubtitleAsset> (
+ auto cpl = dcp_with_text<dcp::ReelSMPTESubtitleAsset> (
dir,
{
{ 96, 200, 0.0, "We" },
@@ -1699,7 +1700,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_line_count1)
BOOST_AUTO_TEST_CASE (verify_valid_subtitle_line_count1)
{
auto const dir = path ("build/test/verify_valid_subtitle_line_count1");
- auto cpl = dcp_with_text<dcp::ReelSubtitleAsset> (
+ auto cpl = dcp_with_text<dcp::ReelSMPTESubtitleAsset> (
dir,
{
{ 96, 200, 0.0, "We" },
@@ -1713,7 +1714,7 @@ BOOST_AUTO_TEST_CASE (verify_valid_subtitle_line_count1)
BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_line_count2)
{
auto const dir = path ("build/test/verify_invalid_subtitle_line_count2");
- auto cpl = dcp_with_text<dcp::ReelSubtitleAsset> (
+ auto cpl = dcp_with_text<dcp::ReelSMPTESubtitleAsset> (
dir,
{
{ 96, 300, 0.0, "We" },
@@ -1733,7 +1734,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_line_count2)
BOOST_AUTO_TEST_CASE (verify_valid_subtitle_line_count2)
{
auto const dir = path ("build/test/verify_valid_subtitle_line_count2");
- auto cpl = dcp_with_text<dcp::ReelSubtitleAsset> (
+ auto cpl = dcp_with_text<dcp::ReelSMPTESubtitleAsset> (
dir,
{
{ 96, 300, 0.0, "We" },
@@ -1748,7 +1749,7 @@ BOOST_AUTO_TEST_CASE (verify_valid_subtitle_line_count2)
BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_line_length1)
{
auto const dir = path ("build/test/verify_invalid_subtitle_line_length1");
- auto cpl = dcp_with_text<dcp::ReelSubtitleAsset> (
+ auto cpl = dcp_with_text<dcp::ReelSMPTESubtitleAsset> (
dir,
{
{ 96, 300, 0.0, "012345678901234567890123456789012345678901234567890123" }
@@ -1765,7 +1766,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_line_length1)
BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_line_length2)
{
auto const dir = path ("build/test/verify_invalid_subtitle_line_length2");
- auto cpl = dcp_with_text<dcp::ReelSubtitleAsset> (
+ auto cpl = dcp_with_text<dcp::ReelSMPTESubtitleAsset> (
dir,
{
{ 96, 300, 0.0, "012345678901234567890123456789012345678901234567890123456789012345678901234567890" }
@@ -2012,7 +2013,7 @@ verify_subtitles_must_be_in_all_reels_check (path dir, bool add_to_reel1, bool a
subs->set_start_time (dcp::Time());
subs->add (simple_subtitle());
subs->write (dir / "subs.mxf");
- auto reel_subs = make_shared<dcp::ReelSubtitleAsset>(subs, dcp::Fraction(24, 1), reel_length, 0);
+ auto reel_subs = make_shared<dcp::ReelSMPTESubtitleAsset>(subs, dcp::Fraction(24, 1), reel_length, 0);
auto reel1 = make_shared<dcp::Reel>(
make_shared<dcp::ReelMonoPictureAsset>(simple_picture(dir, "", reel_length), 0),
@@ -2020,7 +2021,7 @@ verify_subtitles_must_be_in_all_reels_check (path dir, bool add_to_reel1, bool a
);
if (add_to_reel1) {
- reel1->add (make_shared<dcp::ReelSubtitleAsset>(subs, dcp::Fraction(24, 1), reel_length, 0));
+ reel1->add (make_shared<dcp::ReelSMPTESubtitleAsset>(subs, dcp::Fraction(24, 1), reel_length, 0));
}
auto markers1 = make_shared<dcp::ReelMarkersAsset>(dcp::Fraction(24, 1), reel_length, 0);
@@ -2035,7 +2036,7 @@ verify_subtitles_must_be_in_all_reels_check (path dir, bool add_to_reel1, bool a
);
if (add_to_reel2) {
- reel2->add (make_shared<dcp::ReelSubtitleAsset>(subs, dcp::Fraction(24, 1), reel_length, 0));
+ reel2->add (make_shared<dcp::ReelSMPTESubtitleAsset>(subs, dcp::Fraction(24, 1), reel_length, 0));
}
auto markers2 = make_shared<dcp::ReelMarkersAsset>(dcp::Fraction(24, 1), reel_length, 0);
@@ -2220,18 +2221,18 @@ verify_text_entry_point_check (path dir, dcp::VerificationNote::Code code, boost
BOOST_AUTO_TEST_CASE (verify_text_entry_point)
{
- verify_text_entry_point_check<dcp::ReelSubtitleAsset> (
+ verify_text_entry_point_check<dcp::ReelSMPTESubtitleAsset> (
"build/test/verify_subtitle_entry_point_must_be_present",
dcp::VerificationNote::Code::MISSING_SUBTITLE_ENTRY_POINT,
- [](shared_ptr<dcp::ReelSubtitleAsset> asset) {
+ [](shared_ptr<dcp::ReelSMPTESubtitleAsset> asset) {
asset->unset_entry_point ();
}
);
- verify_text_entry_point_check<dcp::ReelSubtitleAsset> (
+ verify_text_entry_point_check<dcp::ReelSMPTESubtitleAsset> (
"build/test/verify_subtitle_entry_point_must_be_zero",
dcp::VerificationNote::Code::INCORRECT_SUBTITLE_ENTRY_POINT,
- [](shared_ptr<dcp::ReelSubtitleAsset> asset) {
+ [](shared_ptr<dcp::ReelSMPTESubtitleAsset> asset) {
asset->set_entry_point (4);
}
);
@@ -2902,7 +2903,7 @@ BOOST_AUTO_TEST_CASE (verify_mismatched_subtitle_resource_id)
writer.Finalize();
auto subs_asset = make_shared<dcp::SMPTESubtitleAsset>(subs_mxf);
- auto subs_reel = make_shared<dcp::ReelSubtitleAsset>(subs_asset, dcp::Fraction(24, 1), 240, 0);
+ auto subs_reel = make_shared<dcp::ReelSMPTESubtitleAsset>(subs_asset, dcp::Fraction(24, 1), 240, 0);
auto cpl = write_dcp_with_single_asset (dir, subs_reel);
@@ -2966,7 +2967,7 @@ BOOST_AUTO_TEST_CASE (verify_incorrect_timed_text_id)
writer.Finalize();
auto subs_asset = make_shared<dcp::SMPTESubtitleAsset>(subs_mxf);
- auto subs_reel = make_shared<dcp::ReelSubtitleAsset>(subs_asset, dcp::Fraction(24, 1), 240, 0);
+ auto subs_reel = make_shared<dcp::ReelSMPTESubtitleAsset>(subs_asset, dcp::Fraction(24, 1), 240, 0);
auto cpl = write_dcp_with_single_asset (dir, subs_reel);
diff --git a/test/write_subtitle_test.cc b/test/write_subtitle_test.cc
index 10d39f11..f7c9ae25 100644
--- a/test/write_subtitle_test.cc
+++ b/test/write_subtitle_test.cc
@@ -36,7 +36,7 @@
#include "subtitle_string.h"
#include "subtitle_image.h"
#include "subtitle_asset_internal.h"
-#include "reel_subtitle_asset.h"
+#include "reel_interop_subtitle_asset.h"
#include "reel.h"
#include "cpl.h"
#include "dcp.h"
@@ -360,8 +360,8 @@ BOOST_AUTO_TEST_CASE (write_interop_subtitle_test3)
boost::filesystem::create_directories ("build/test/write_interop_subtitle_test3");
c->write ("build/test/write_interop_subtitle_test3/subs.xml");
- shared_ptr<dcp::Reel> reel (new dcp::Reel());
- reel->add(shared_ptr<dcp::ReelSubtitleAsset>(new dcp::ReelSubtitleAsset(c, dcp::Fraction(24, 1), 6046, 0)));
+ auto reel = make_shared<dcp::Reel>();
+ reel->add(make_shared<dcp::ReelInteropSubtitleAsset>(c, dcp::Fraction(24, 1), 6046, 0));
string const issue_date = "2018-09-02T04:45:18+00:00";
string const issuer = "libdcp";