summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2025-03-30 22:08:59 +0200
committerCarl Hetherington <cth@carlh.net>2025-12-15 17:13:38 +0100
commitfa9151d0ec5cb25af84df283ec0efa63b514168b (patch)
treed398496474292152a3c28203bbced1b0a9b12ef0
parentfab605e7423b9511d753474299efdcee93751b13 (diff)
Use specific metadata for more notes, allowing removal of one VerificationNote constructor.
-rw-r--r--src/verify.cc66
-rw-r--r--src/verify.h88
-rw-r--r--src/verify_j2k.cc15
-rw-r--r--test/verify_test.cc689
4 files changed, 467 insertions, 391 deletions
diff --git a/src/verify.cc b/src/verify.cc
index c4925010..bd15d09f 100644
--- a/src/verify.cc
+++ b/src/verify.cc
@@ -368,13 +368,10 @@ validate_xml(Context& context, T xml)
XMLPlatformUtils::Terminate ();
+ using VN = dcp::VerificationNote;
+
for (auto i: error_handler.errors()) {
- context.error(
- VerificationNote::Code::INVALID_XML,
- i.message(),
- boost::trim_copy(i.public_id() + " " + i.system_id()),
- i.line()
- );
+ context.add_note(VN(VN::Type::ERROR, VN::Code::INVALID_XML, boost::trim_copy(i.public_id() + " " + i.system_id())).set_line(i.line()).set_error(i.message()));
}
}
@@ -440,10 +437,14 @@ verify_asset(
static void
verify_language_tag(Context& context, string tag)
{
+ using VN = dcp::VerificationNote;
+
try {
LanguageTag test (tag);
} catch (LanguageTagError &) {
- context.bv21_error(VerificationNote::Code::INVALID_LANGUAGE, tag);
+ context.add_note(
+ VN(VN::Type::BV21_ERROR, VN::Code::INVALID_LANGUAGE).set_language(tag)
+ );
}
}
@@ -797,6 +798,8 @@ verify_smpte_subtitle_asset(Context& context, shared_ptr<const SMPTETextAsset> a
context.warning(VerificationNote::Code::MISSED_CHECK_OF_ENCRYPTED);
}
+ using VN = dcp::VerificationNote;
+
if (asset->raw_xml()) {
/* Deluxe require this in their QC even if it seems never to be mentioned in any standard */
cxml::Document doc("SubtitleReel");
@@ -804,7 +807,7 @@ verify_smpte_subtitle_asset(Context& context, shared_ptr<const SMPTETextAsset> a
auto issue_date = doc.string_child("IssueDate");
std::regex reg("^\\d\\d\\d\\d-\\d\\d-\\d\\dT\\d\\d:\\d\\d:\\d\\d$");
if (!std::regex_match(issue_date, reg)) {
- context.warning(VerificationNote::Code::INVALID_SUBTITLE_ISSUE_DATE, issue_date);
+ context.add_note(VN(VN::Type::WARNING, VN::Code::INVALID_SUBTITLE_ISSUE_DATE).set_issue_date(issue_date));
}
}
}
@@ -1431,7 +1434,9 @@ verify_reel(
}
auto file_asset = dynamic_pointer_cast<ReelFileAsset>(i);
if (i->encryptable() && !file_asset->hash()) {
- context.bv21_error(VerificationNote::Code::MISSING_HASH, i->id());
+ context.add_note(
+ VN(VN::Type::BV21_ERROR, VN::Code::MISSING_HASH).set_asset_id(i->id())
+ );
}
}
@@ -1549,6 +1554,8 @@ verify_cpl(Context& context, shared_ptr<const CPL> cpl)
verify_language_tag(context, i);
}
+ using VN = dcp::VerificationNote;
+
if (!cpl->content_kind().scope() || *cpl->content_kind().scope() == "http://www.smpte-ra.org/schemas/429-7/2006/CPL#standard-content") {
/* This is a content kind from http://www.smpte-ra.org/schemas/429-7/2006/CPL#standard-content; make sure it's one
* of the approved ones.
@@ -1558,12 +1565,18 @@ verify_cpl(Context& context, shared_ptr<const CPL> cpl)
transform(name.begin(), name.end(), name.begin(), ::tolower);
auto iter = std::find_if(all.begin(), all.end(), [name](ContentKind const& k) { return !k.scope() && k.name() == name; });
if (iter == all.end()) {
- context.error(VerificationNote::Code::INVALID_CONTENT_KIND, cpl->content_kind().name());
+ context.add_note(
+ VN(VN::Type::ERROR, VN::Code::INVALID_CONTENT_KIND).set_content_kind(cpl->content_kind().name())
+ );
} else {
- context.ok(VerificationNote::Code::VALID_CONTENT_KIND, cpl->content_kind().name());
+ context.add_note(
+ VN(VN::Type::OK, VN::Code::VALID_CONTENT_KIND).set_content_kind(cpl->content_kind().name())
+ );
}
}
+ using VN = dcp::VerificationNote;
+
if (cpl->release_territory()) {
if (!cpl->release_territory_scope() || cpl->release_territory_scope().get() != "http://www.smpte-ra.org/schemas/429-16/2014/CPL-Metadata#scope/release-territory/UNM49") {
auto terr = cpl->release_territory().get();
@@ -1573,7 +1586,9 @@ verify_cpl(Context& context, shared_ptr<const CPL> cpl)
LanguageTag::RegionSubtag test(terr);
} catch (...) {
if (terr != "001") {
- context.bv21_error(VerificationNote::Code::INVALID_LANGUAGE, terr);
+ context.add_note(
+ VN(VN::Type::BV21_ERROR, VN::Code::INVALID_LANGUAGE).set_language(terr)
+ );
valid = false;
}
}
@@ -1600,7 +1615,7 @@ verify_cpl(Context& context, shared_ptr<const CPL> cpl)
} else if (cpl->annotation_text().get() != cpl->content_title_text()) {
context.warning(VerificationNote::Code::MISMATCHED_CPL_ANNOTATION_TEXT, cpl->file().get());
} else {
- context.ok(VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl->annotation_text().get());
+ context.add_note(VN(VN::Type::OK, VN::Code::VALID_CPL_ANNOTATION_TEXT).set_cpl_annotation_text(cpl->annotation_text().get()));
}
}
@@ -1980,7 +1995,7 @@ dcp::note_to_string(VerificationNote note, function<string (string)> process_str
case VerificationNote::Code::MISMATCHED_STANDARD:
return process_string("The DCP contains both SMPTE and Interop parts.");
case VerificationNote::Code::INVALID_XML:
- return compose("An XML file is badly formed: %1 (%2:%3)", note.note().get(), filename(), note.line().get());
+ return compose("An XML file is badly formed: %1 (%2:%3)", note.error().get(), filename(), note.line().get());
case VerificationNote::Code::MISSING_ASSETMAP:
return process_string("No valid ASSETMAP or ASSETMAP.xml was found.");
case VerificationNote::Code::INVALID_INTRINSIC_DURATION:
@@ -2010,7 +2025,7 @@ dcp::note_to_string(VerificationNote note, function<string (string)> process_str
case VerificationNote::Code::INVALID_STANDARD:
return "This DCP does not use the SMPTE standard.";
case VerificationNote::Code::INVALID_LANGUAGE:
- return compose("The DCP specifies a language '%1' which does not conform to the RFC 5646 standard.", note.note().get());
+ return compose("The DCP specifies a language '%1' which does not conform to the RFC 5646 standard.", note.language().get());
case VerificationNote::Code::VALID_RELEASE_TERRITORY:
return compose("Valid release territory %1.", note.note().get());
case VerificationNote::Code::INVALID_PICTURE_SIZE_IN_PIXELS:
@@ -2064,7 +2079,7 @@ dcp::note_to_string(VerificationNote note, function<string (string)> process_str
case VerificationNote::Code::MISMATCHED_CPL_ANNOTATION_TEXT:
return compose("The CPL %1 has an <AnnotationText> which differs from its <ContentTitleText>.", note.cpl_id().get());
case VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT:
- return compose("Valid CPL annotation text %1", note.note().get());
+ return compose("Valid CPL annotation text %1", note.cpl_annotation_text().get());
case VerificationNote::Code::MISMATCHED_ASSET_DURATION:
return process_string("All assets in a reel do not have the same duration.");
case VerificationNote::Code::MISSING_MAIN_SUBTITLE_FROM_SOME_REELS:
@@ -2080,7 +2095,7 @@ dcp::note_to_string(VerificationNote note, function<string (string)> process_str
case VerificationNote::Code::INCORRECT_CLOSED_CAPTION_ENTRY_POINT:
return compose("The closed caption asset %1 has an <EntryPoint> other than 0.", note.note().get());
case VerificationNote::Code::MISSING_HASH:
- return compose("The asset %1 has no <Hash> tag in the CPL.", note.note().get());
+ return compose("The asset %1 has no <Hash> tag in the CPL.", note.asset_id().get());
case VerificationNote::Code::MISSING_FFEC_IN_FEATURE:
return process_string("The DCP is marked as a Feature but there is no FFEC (first frame of end credits) marker.");
case VerificationNote::Code::MISSING_FFMC_IN_FEATURE:
@@ -2120,12 +2135,12 @@ dcp::note_to_string(VerificationNote note, function<string (string)> process_str
"Frame %1 (timecode %2) has an invalid JPEG2000 codestream (%3).",
note.frame().get(),
dcp::Time(note.frame().get(), note.frame_rate()->numerator, note.frame_rate()->numerator).as_string(dcp::Standard::SMPTE),
- note.note().get()
+ note.error().get()
);
case VerificationNote::Code::INVALID_JPEG2000_GUARD_BITS_FOR_2K:
- return compose("The JPEG2000 codestream uses %1 guard bits in a 2K image instead of 1.", note.note().get());
+ return compose("The JPEG2000 codestream uses %1 guard bits in a 2K image instead of 1.", note.guard_bits().get());
case VerificationNote::Code::INVALID_JPEG2000_GUARD_BITS_FOR_4K:
- return compose("The JPEG2000 codestream uses %1 guard bits in a 4K image instead of 2.", note.note().get());
+ return compose("The JPEG2000 codestream uses %1 guard bits in a 4K image instead of 2.", note.guard_bits().get());
case VerificationNote::Code::INVALID_JPEG2000_TILE_SIZE:
return process_string("The JPEG2000 tile size is not the same as the image size.");
case VerificationNote::Code::INVALID_JPEG2000_CODE_BLOCK_WIDTH:
@@ -2173,9 +2188,9 @@ dcp::note_to_string(VerificationNote note, function<string (string)> process_str
case VerificationNote::Code::UNEXPECTED_DURATION:
return process_string("There is an <Duration> node inside a <MainMarkers>.");
case VerificationNote::Code::INVALID_CONTENT_KIND:
- return compose("<ContentKind> has an invalid value %1.", note.note().get());
+ return compose("<ContentKind> has an invalid value %1.", note.content_kind().get());
case VerificationNote::Code::VALID_CONTENT_KIND:
- return compose("Valid <ContentKind> %1.", note.note().get());
+ return compose("Valid <ContentKind> %1.", note.content_kind().get());
case VerificationNote::Code::INVALID_MAIN_PICTURE_ACTIVE_AREA:
return compose("<MainPictureActiveaArea> has an invalid value: %1", note.note().get());
case VerificationNote::Code::VALID_MAIN_PICTURE_ACTIVE_AREA:
@@ -2187,7 +2202,7 @@ dcp::note_to_string(VerificationNote note, function<string (string)> process_str
case VerificationNote::Code::MISSING_SUBTITLE:
return compose("The subtitle asset %1 has no subtitles.", note.note().get());
case VerificationNote::Code::INVALID_SUBTITLE_ISSUE_DATE:
- return compose("<IssueDate> has an invalid value: %1", note.note().get());
+ return compose("<IssueDate> has an invalid value: %1", note.issue_date().get());
case VerificationNote::Code::MISMATCHED_SOUND_CHANNEL_COUNTS:
return compose("The sound assets do not all have the same channel count; the first to differ is %1", filename());
case VerificationNote::Code::INVALID_MAIN_SOUND_CONFIGURATION:
@@ -2245,6 +2260,11 @@ dcp::operator== (dcp::VerificationNote const& a, dcp::VerificationNote const& b)
a.reel_index() == b.reel_index() &&
a.xml_namespace() == b.xml_namespace() &&
a.content_version() == b.content_version();
+ a.error() == b.error() &&
+ a.language() == b.language() &&
+ a.cpl_annotation_text() == b.cpl_annotation_text() &&
+ a.guard_bits() == b.guard_bits() &&
+ a.issue_date() == b.issue_date();
}
diff --git a/src/verify.h b/src/verify.h
index b7168465..61d751df 100644
--- a/src/verify.h
+++ b/src/verify.h
@@ -147,7 +147,7 @@ public:
/** The DCP contains both SMPTE and Interop-standard components */
MISMATCHED_STANDARD,
/** Some XML fails to validate against its XSD/DTD
- * note contains the (probably technical) details
+ * error contains the (probably technical) details
* file contains the invalid filename
* line contains the line number
*/
@@ -183,7 +183,7 @@ public:
/** DCP is Interop, not SMPTE [Bv2.1_6.1] */
INVALID_STANDARD,
/** A language or territory does not conform to RFC 5646 [Bv2.1_6.2.1]
- * note contains the invalid language
+ * language contains the invalid language
*/
INVALID_LANGUAGE,
/** A CPL has a valid release territory */
@@ -301,7 +301,7 @@ public:
*/
INCORRECT_CLOSED_CAPTION_ENTRY_POINT,
/** _<Hash>_ must be present for assets in CPLs
- * note contains the asset ID
+ * asset_id contains the asset ID
*/
MISSING_HASH,
/** If _ContentKind_ is Feature there must be a FFEC marker */
@@ -365,17 +365,17 @@ public:
PARTIALLY_ENCRYPTED,
/** General error during JPEG2000 codestream verification
* frame contains the frame index (counted from 0)
- * note contains details
+ * error contains details
*/
INVALID_JPEG2000_CODESTREAM,
/** Invalid number of guard bits in a 2K JPEG2000 stream (should be 1) [Bv2.1_10.2.1]
- * note contains the number of guard bits
+ * guard_bits contains the number of guard bits
* id contains the asset ID
* reel contains the reel index (starting from 0)
*/
INVALID_JPEG2000_GUARD_BITS_FOR_2K,
/** Invalid number of guard bits in a 4K JPEG2000 stream (should be 2) [Bv2.1_10.2.1]
- * note contains the number of guard bits
+ * guard_bits contains the number of guard bits
* id contains the asset ID
* reel contains the reel index (starting from 0)
*/
@@ -491,7 +491,7 @@ public:
/** A SMPTE subtitle asset as an _<IssueDate>_ which is not of the form yyyy-mm-ddThh:mm:ss
* I can find no reference in a standard to this being required, but the Deluxe delivery
* specifications require it and their QC will fail DCPs that don't have it.
- * note contains the incorrect <IssueDate>
+ * issue_date contains the incorrect <IssueDate>
*/
INVALID_SUBTITLE_ISSUE_DATE,
/** The sound assets in the CPL do not have the same audio channel count.
@@ -561,13 +561,6 @@ public:
, _code (code)
{}
- VerificationNote (Type type, Code code, std::string note)
- : _type (type)
- , _code (code)
- {
- _data[Data::NOTE] = note;
- }
-
VerificationNote (Type type, Code code, boost::filesystem::path file)
: _type (type)
, _code (code)
@@ -618,7 +611,13 @@ private:
REFERENCE_HASH,
REEL_INDEX, ///< reel index, counting from 0
XML_NAMESPACE,
- CONTENT_VERSION
+ CONTENT_VERSION,
+ ERROR,
+ LANGUAGE,
+ CONTENT_KIND,
+ CPL_ANNOTATION_TEXT,
+ GUARD_BITS,
+ ISSUE_DATE
};
template <class T>
@@ -640,6 +639,11 @@ public:
return data<boost::filesystem::path>(Data::FILE);
}
+ VerificationNote& set_line(uint64_t line) {
+ _data[Data::LINE] = line;
+ return *this;
+ }
+
boost::optional<uint64_t> line () const {
return data<uint64_t>(Data::LINE);
}
@@ -770,6 +774,60 @@ public:
return data<std::string>(Data::CONTENT_VERSION);
}
+ VerificationNote& set_error(std::string error) {
+ _data[Data::ERROR] = error;
+ return *this;
+ }
+
+ boost::optional<std::string> error() const {
+ return data<std::string>(Data::ERROR);
+ }
+
+ VerificationNote& set_language(std::string language) {
+ _data[Data::LANGUAGE] = language;
+ return *this;
+ }
+
+ boost::optional<std::string> language() const {
+ return data<std::string>(Data::LANGUAGE);
+ }
+
+ VerificationNote& set_content_kind(std::string content_kind) {
+ _data[Data::CONTENT_KIND] = content_kind;
+ return *this;
+ }
+
+ boost::optional<std::string> content_kind() const {
+ return data<std::string>(Data::CONTENT_KIND);
+ }
+
+ VerificationNote& set_cpl_annotation_text(std::string cpl_annotation_text) {
+ _data[Data::CPL_ANNOTATION_TEXT] = cpl_annotation_text;
+ return *this;
+ }
+
+ boost::optional<std::string> cpl_annotation_text() const {
+ return data<std::string>(Data::CPL_ANNOTATION_TEXT);
+ }
+
+ VerificationNote& set_guard_bits(int guard_bits) {
+ _data[Data::GUARD_BITS] = guard_bits;
+ return *this;
+ }
+
+ boost::optional<int> guard_bits() const {
+ return data<int>(Data::GUARD_BITS);
+ }
+
+ VerificationNote& set_issue_date(std::string issue_date) {
+ _data[Data::ISSUE_DATE] = issue_date;
+ return *this;
+ }
+
+ boost::optional<std::string> issue_date() const {
+ return data<std::string>(Data::ISSUE_DATE);
+ }
+
private:
Type _type;
Code _code;
diff --git a/src/verify_j2k.cc b/src/verify_j2k.cc
index 852074d3..c895dadf 100644
--- a/src/verify_j2k.cc
+++ b/src/verify_j2k.cc
@@ -270,10 +270,18 @@ dcp::verify_j2k(shared_ptr<const Data> j2k, int start_index, int frame_index, in
auto quantization_style = get_8();
int guard_bits = (quantization_style >> 5) & 7;
if (fourk && guard_bits != 2) {
- notes.push_back({ VerificationNote::Type::BV21_ERROR, VerificationNote::Code::INVALID_JPEG2000_GUARD_BITS_FOR_4K, fmt::to_string(guard_bits) });
+ notes.push_back(
+ VerificationNote(
+ VerificationNote::Type::BV21_ERROR, VerificationNote::Code::INVALID_JPEG2000_GUARD_BITS_FOR_4K
+ ).set_guard_bits(guard_bits)
+ );
}
if (!fourk && guard_bits != 1) {
- notes.push_back({ VerificationNote::Type::BV21_ERROR, VerificationNote::Code::INVALID_JPEG2000_GUARD_BITS_FOR_2K, fmt::to_string(guard_bits) });
+ notes.push_back(
+ VerificationNote(
+ VerificationNote::Type::BV21_ERROR, VerificationNote::Code::INVALID_JPEG2000_GUARD_BITS_FOR_2K
+ ).set_guard_bits(guard_bits)
+ );
}
ptr += L_qcd - 3;
} else if (*marker_name == "COC") {
@@ -366,7 +374,8 @@ dcp::verify_j2k(shared_ptr<const Data> j2k, int start_index, int frame_index, in
}
catch (InvalidCodestream const& e)
{
- VerificationNote note({VerificationNote::Type::ERROR, VerificationNote::Code::INVALID_JPEG2000_CODESTREAM, string(e.what())});
+ VerificationNote note({VerificationNote::Type::ERROR, VerificationNote::Code::INVALID_JPEG2000_CODESTREAM});
+ note.set_error(e.what());
note.set_frame(start_index + frame_index);
note.set_frame_rate(dcp::Fraction(frame_rate, 1));
notes.push_back(note);
diff --git a/test/verify_test.cc b/test/verify_test.cc
index 3244f04f..33072d20 100644
--- a/test/verify_test.cc
+++ b/test/verify_test.cc
@@ -419,14 +419,6 @@ ok(dcp::VerificationNote::Code code, shared_ptr<const dcp::CPL> cpl)
static
dcp::VerificationNote
-ok(dcp::VerificationNote::Code code, string note, shared_ptr<const dcp::CPL> cpl)
-{
- return dcp::VerificationNote(dcp::VerificationNote::Type::OK, code, note).set_cpl_id(cpl->id());
-}
-
-
-static
-dcp::VerificationNote
ok(dcp::VerificationNote::Code code, boost::filesystem::path path, shared_ptr<const dcp::CPL> cpl)
{
return dcp::VerificationNote(dcp::VerificationNote::Type::OK, code, path).set_cpl_id(cpl->id());
@@ -532,9 +524,9 @@ BOOST_AUTO_TEST_CASE (verify_incorrect_picture_sound_hash)
string{"1998x1080"},
canonical(cpl->file().get())
).set_cpl_id(dcp_test1_cpl_id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INCORRECT_PICTURE_HASH, canonical(video_path)
@@ -560,6 +552,8 @@ BOOST_AUTO_TEST_CASE (verify_mismatched_picture_sound_hashes)
e.replace ("<Hash>", "<Hash>x");
}
+ using VN = dcp::VerificationNote;
+
check_verify_result (
{ dir },
{},
@@ -572,9 +566,9 @@ BOOST_AUTO_TEST_CASE (verify_mismatched_picture_sound_hashes)
string{"1998x1080"},
canonical(cpl->file().get())
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CPL_HASHES, canonical(dir / dcp_test1_cpl())
@@ -585,9 +579,9 @@ BOOST_AUTO_TEST_CASE (verify_mismatched_picture_sound_hashes)
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_SOUND_HASHES, canonical(dir / "audio.mxf")
).set_cpl_id(dcp_test1_cpl_id()).set_reel_index(0),
- { dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, "value 'x3M7YTgvFKXXMEGLkIbV4miC90FE=' is invalid Base64-encoded binary", canonical(dir / dcp_test1_pkl()), 28 },
- { dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, "value 'xskI+5b/9LA/y6h0mcyxysJYanxI=' is invalid Base64-encoded binary", canonical(dir / dcp_test1_pkl()), 12 },
- { dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, "value 'xvsVjRV9vhTBPUWfE/TT1o2vdQsI=' is invalid Base64-encoded binary", canonical(dir / dcp_test1_pkl()), 20 },
+ VN(VN::Type::ERROR, VN::Code::INVALID_XML, path(canonical(dir / dcp_test1_pkl()))).set_line(28).set_error("value 'x3M7YTgvFKXXMEGLkIbV4miC90FE=' is invalid Base64-encoded binary"),
+ VN(VN::Type::ERROR, VN::Code::INVALID_XML, path(canonical(dir / dcp_test1_pkl()))).set_line(12).set_error("value 'xskI+5b/9LA/y6h0mcyxysJYanxI=' is invalid Base64-encoded binary"),
+ VN(VN::Type::ERROR, VN::Code::INVALID_XML, path(canonical(dir / dcp_test1_pkl()))).set_line(20).set_error("value 'xvsVjRV9vhTBPUWfE/TT1o2vdQsI=' is invalid Base64-encoded binary")
});
}
@@ -619,14 +613,14 @@ BOOST_AUTO_TEST_CASE (verify_failed_read_content_kind)
canonical(cpl->file().get())
).set_cpl_id(cpl->id()),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CPL_HASHES, canonical(dir / dcp_test1_cpl())
).set_cpl_id(dcp_test1_cpl_id()).set_reference_hash(calc.old_hash()).set_calculated_hash(calc.new_hash()),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_CONTENT_KIND, string("xtrailer")
- ).set_cpl_id(dcp_test1_cpl_id())
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_CONTENT_KIND
+ ).set_cpl_id(dcp_test1_cpl_id()).set_content_kind("xtrailer")
});
}
@@ -676,9 +670,9 @@ BOOST_AUTO_TEST_CASE (verify_invalid_picture_frame_rate)
canonical(cpl->file().get())
).set_cpl_id(cpl->id()),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CPL_HASHES, canonical(cpl_path)
@@ -712,9 +706,9 @@ BOOST_AUTO_TEST_CASE (verify_missing_asset)
string{"1998x1080"},
canonical(cpl->file().get())
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
{ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISSING_ASSET, canonical(dir) / "video.mxf" }
});
}
@@ -740,9 +734,9 @@ BOOST_AUTO_TEST_CASE (verify_empty_asset_path)
canonical(cpl->file().get())
).set_cpl_id(cpl->id()),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
{ dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::EMPTY_ASSET_PATH }
};
@@ -771,30 +765,30 @@ BOOST_AUTO_TEST_CASE (verify_mismatched_standard)
canonical(cpl->file().get())
).set_cpl_id(cpl->id()),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
{ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_STANDARD },
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, "invalid character encountered", canonical(cpl_path), 42
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, canonical(cpl_path)
+ ).set_cpl_id(cpl->id()).set_line(42).set_error("invalid character encountered"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, "no declaration found for element 'Id'", canonical(cpl_path), 53
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, canonical(cpl_path)
+ ).set_cpl_id(cpl->id()).set_line(53).set_error("no declaration found for element 'Id'"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, "no declaration found for element 'EditRate'", canonical(cpl_path), 54
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, canonical(cpl_path)
+ ).set_cpl_id(cpl->id()).set_line(54).set_error("no declaration found for element 'EditRate'"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, "no declaration found for element 'IntrinsicDuration'", canonical(cpl_path), 55
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, canonical(cpl_path)
+ ).set_cpl_id(cpl->id()).set_line(55).set_error("no declaration found for element 'IntrinsicDuration'"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML,
- "element 'Id' is not allowed for content model '(Id,AnnotationText?,EditRate,IntrinsicDuration,"
- "EntryPoint?,Duration?,FullContentTitleText,ReleaseTerritory?,VersionNumber?,Chain?,Distributor?,"
- "Facility?,AlternateContentVersionList?,Luminance?,MainSoundConfiguration,MainSoundSampleRate,"
- "MainPictureStoredArea,MainPictureActiveArea,MainSubtitleLanguageList?,ExtensionMetadataList?,)'",
- canonical(cpl_path), 149
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, canonical(cpl_path)
+ ).set_cpl_id(cpl->id()).set_line(149).set_error(
+ "element 'Id' is not allowed for content model '(Id,AnnotationText?,EditRate,IntrinsicDuration,"
+ "EntryPoint?,Duration?,FullContentTitleText,ReleaseTerritory?,VersionNumber?,Chain?,Distributor?,"
+ "Facility?,AlternateContentVersionList?,Luminance?,MainSoundConfiguration,MainSoundSampleRate,"
+ "MainPictureStoredArea,MainPictureActiveArea,MainSubtitleLanguageList?,ExtensionMetadataList?,)'"
+ ),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CPL_HASHES, canonical(cpl_path)
).set_cpl_id(cpl->id()).set_reference_hash("skI+5b/9LA/y6h0mcyxysJYanxI=").set_calculated_hash("FZ9E7L/pOuJ6aZfbiaANTv8BFOo=")
@@ -826,15 +820,16 @@ BOOST_AUTO_TEST_CASE (verify_invalid_xml_cpl_id)
canonical(cpl->file().get())
).set_cpl_id(cpl->id()),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML,
- "value 'urn:uuid:6affb8ee-0020-4dff-a53c-17652f6358a' does not match regular expression "
- "facet 'urn:uuid:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}'", canonical(cpl_path), 3
- ).set_cpl_id(cpl->id())
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, canonical(cpl_path)
+ ).set_cpl_id(cpl->id()).set_line(3).set_error(
+ "value 'urn:uuid:6affb8ee-0020-4dff-a53c-17652f6358a' does not match regular expression "
+ "facet 'urn:uuid:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}'"
+ )
};
check_verify_result(dcp::verify({dir}, {}, &stage, &progress, {}, xsd_test).notes, expected);
@@ -862,17 +857,15 @@ BOOST_AUTO_TEST_CASE (verify_invalid_xml_issue_date)
canonical(cpl->file().get())
).set_cpl_id(cpl->id()),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CPL_HASHES, canonical(cpl_path)
).set_cpl_id(cpl->id()).set_reference_hash("skI+5b/9LA/y6h0mcyxysJYanxI=").set_calculated_hash("sz3BeIugJ567q3HMnA62JeRw4TE="),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML,
- "invalid character encountered",
- canonical(cpl_path), 5
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, canonical(cpl_path)
+ ).set_cpl_id(cpl->id()).set_line(5).set_error("invalid character encountered")
};
check_verify_result(dcp::verify({dir}, {}, &stage, &progress, {}, xsd_test).notes, expected);
@@ -901,16 +894,16 @@ BOOST_AUTO_TEST_CASE (verify_invalid_xml_pkl_id)
canonical(cpl->file().get())
).set_cpl_id(cpl->id()),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML,
- "value 'urn:uuid:x199d58b-5ef8-4d49-b270-07e590ccb280' does not match regular "
- "expression facet 'urn:uuid:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}'",
- canonical(pkl_path), 3
- ),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, canonical(pkl_path)
+ ).set_line(3).set_error(
+ "value 'urn:uuid:x199d58b-5ef8-4d49-b270-07e590ccb280' does not match regular "
+ "expression facet 'urn:uuid:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}'"
+ )
};
check_verify_result(dcp::verify({dir}, {}, &stage, &progress, {}, xsd_test).notes, expected);
@@ -939,16 +932,16 @@ BOOST_AUTO_TEST_CASE (verify_invalid_xml_asset_map_id)
canonical(cpl->file().get())
).set_cpl_id(cpl->id()),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML,
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, canonical(asset_map_path)
+ ).set_line(3).set_error(
"value 'urn:uuid:x17b3de4-6dda-408d-b19b-6711354b0bc3' does not match regular "
- "expression facet 'urn:uuid:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}'",
- canonical(asset_map_path), 3
- ),
+ "expression facet 'urn:uuid:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}'"
+ )
};
check_verify_result(dcp::verify({dir}, {}, &stage, &progress, {}, xsd_test).notes, expected);
@@ -1007,7 +1000,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_standard)
vector<dcp::VerificationNote> expected = {
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
{ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_STANDARD },
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"feature"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("feature"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
@@ -1018,8 +1011,8 @@ BOOST_AUTO_TEST_CASE (verify_invalid_standard)
for (int j = 0; j < 24; ++j) {
expected.push_back(
dcp::VerificationNote(
- dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_JPEG2000_GUARD_BITS_FOR_2K, string("2")
- ).set_cpl_id(cpl->id()).set_reel_index(0)
+ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_JPEG2000_GUARD_BITS_FOR_2K
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_guard_bits(2)
);
}
@@ -1040,7 +1033,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_duration)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"feature"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("feature"),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "j2c_d7576dcb-a361-4139-96b8-267f5f8d7f91.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "j2c_d7576dcb-a361-4139-96b8-267f5f8d7f91.mxf"), cpl).set_reel_index(0),
{ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_STANDARD },
@@ -1066,8 +1059,8 @@ BOOST_AUTO_TEST_CASE (verify_invalid_duration)
for (int i = 0; i < 23; ++i) {
expected.push_back(
dcp::VerificationNote(
- dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_JPEG2000_GUARD_BITS_FOR_2K, string("2")
- ).set_cpl_id(cpl->id()).set_reel_index(0)
+ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_JPEG2000_GUARD_BITS_FOR_2K
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_guard_bits(2)
);
}
@@ -1114,17 +1107,17 @@ BOOST_AUTO_TEST_CASE (verify_invalid_picture_frame_size_in_bytes)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "pic.mxf"), cpl).set_reel_index(0),
};
for (auto i = 0; i < 24; ++i) {
expected.push_back(
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_JPEG2000_CODESTREAM, string("missing marker start byte")
- ).set_frame(i).set_frame_rate(dcp::Fraction(24, 1)).set_cpl_id(cpl->id()).set_reel_index(0)
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_JPEG2000_CODESTREAM
+ ).set_frame(i).set_frame_rate(dcp::Fraction(24, 1)).set_cpl_id(cpl->id()).set_reel_index(0).set_error("missing marker start byte")
);
}
@@ -1169,16 +1162,16 @@ BOOST_AUTO_TEST_CASE (verify_nearly_invalid_picture_frame_size_in_bytes)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
};
for (auto i = 0; i < 24; ++i) {
expected.push_back(
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_JPEG2000_CODESTREAM, string("missing marker start byte")
- ).set_frame(i).set_frame_rate(dcp::Fraction(24, 1)).set_cpl_id(cpl->id()).set_reel_index(0)
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_JPEG2000_CODESTREAM
+ ).set_frame(i).set_frame_rate(dcp::Fraction(24, 1)).set_cpl_id(cpl->id()).set_reel_index(0).set_error("missing marker start byte")
);
}
@@ -1219,9 +1212,9 @@ BOOST_AUTO_TEST_CASE (verify_valid_picture_frame_size_in_bytes)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "pic.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()).set_cpl_id(cpl->id())
});
@@ -1244,7 +1237,7 @@ BOOST_AUTO_TEST_CASE (verify_valid_interop_subtitles)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
{ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_STANDARD },
dcp::VerificationNote(
@@ -1270,7 +1263,7 @@ BOOST_AUTO_TEST_CASE(verify_catch_missing_font_file_with_interop_ccap)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
{ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_STANDARD },
dcp::VerificationNote(
@@ -1303,19 +1296,16 @@ BOOST_AUTO_TEST_CASE (verify_invalid_interop_subtitles)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
{ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_STANDARD },
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, string("no declaration found for element 'Foo'"), path(), 5
- ).set_cpl_id(cpl->id()).set_reel_index(0),
- dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR,
- dcp::VerificationNote::Code::INVALID_XML,
- string("element 'Foo' is not allowed for content model '(SubtitleID,MovieTitle,ReelNumber,Language,LoadFont*,Font*,Subtitle*)'"),
- path(),
- 29
- ).set_cpl_id(cpl->id()).set_reel_index(0),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, path()
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_line(5).set_error("no declaration found for element 'Foo'"),
+ dcp::VerificationNote(dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, path()
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_line(29).set_error(
+ "element 'Foo' is not allowed for content model '(SubtitleID,MovieTitle,ReelNumber,Language,LoadFont*,Font*,Subtitle*)'"
+ ),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISSING_FONT, string{"theFontId"}
).set_cpl_id(cpl->id()).set_reel_index(0)
@@ -1339,7 +1329,7 @@ BOOST_AUTO_TEST_CASE(verify_interop_subtitle_asset_with_no_subtitles)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
{ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_STANDARD },
dcp::VerificationNote(
@@ -1369,7 +1359,7 @@ BOOST_AUTO_TEST_CASE(verify_interop_subtitle_asset_with_single_space_subtitle)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
{ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_STANDARD },
dcp::VerificationNote(
@@ -1396,15 +1386,15 @@ BOOST_AUTO_TEST_CASE (verify_valid_smpte_subtitles)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
).set_cpl_id(cpl->id()),
dcp::VerificationNote(
- dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::INVALID_SUBTITLE_ISSUE_DATE, string{"2021-04-14T13:19:14.000+02:00"}
- ).set_cpl_id(cpl->id()).set_reel_index(0),
+ dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::INVALID_SUBTITLE_ISSUE_DATE
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_issue_date("2021-04-14T13:19:14.000+02:00"),
dcp::VerificationNote(
dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::INCORRECT_SUBTITLE_NAMESPACE_COUNT
).set_asset_id(asset->id()).set_cpl_id(cpl->id()).set_reel_index(0),
@@ -1431,19 +1421,17 @@ BOOST_AUTO_TEST_CASE (verify_invalid_smpte_subtitles)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, string("no declaration found for element 'Foo'"), path(), 2
- ).set_cpl_id(cpl->id()).set_reel_index(0),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, path()
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_line(2).set_error("no declaration found for element 'Foo'"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR,
- dcp::VerificationNote::Code::INVALID_XML,
- string("element 'Foo' is not allowed for content model '(Id,ContentTitleText,AnnotationText?,IssueDate,ReelNumber?,Language?,EditRate,TimeCodeRate,StartTime?,DisplayType?,LoadFont*,SubtitleList)'"),
- path(),
- 2
- ).set_cpl_id(cpl->id()).set_reel_index(0),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, path()
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_line(2).set_error(
+ "element 'Foo' is not allowed for content model '(Id,ContentTitleText,AnnotationText?,IssueDate,ReelNumber?,Language?,EditRate,TimeCodeRate,StartTime?,DisplayType?,LoadFont*,SubtitleList)'"
+ ),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_SUBTITLE_START_TIME, canonical(dir / "subs.mxf")
).set_cpl_id(cpl->id()).set_reel_index(0),
@@ -1451,8 +1439,8 @@ BOOST_AUTO_TEST_CASE (verify_invalid_smpte_subtitles)
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
).set_cpl_id(cpl->id()),
dcp::VerificationNote(
- dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::INVALID_SUBTITLE_ISSUE_DATE, string{"2020-05-09T00:29:21.000+02:00"}
- ).set_cpl_id(cpl->id()).set_reel_index(0),
+ dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::INVALID_SUBTITLE_ISSUE_DATE
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_issue_date("2020-05-09T00:29:21.000+02:00"),
dcp::VerificationNote(
dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::INCORRECT_SUBTITLE_NAMESPACE_COUNT
).set_asset_id(asset->id()).set_cpl_id(cpl->id()).set_reel_index(0)
@@ -1476,9 +1464,9 @@ BOOST_AUTO_TEST_CASE (verify_empty_text_node_in_subtitles)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
dcp::VerificationNote(
dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::EMPTY_TEXT
).set_cpl_id(cpl->id()),
@@ -1492,8 +1480,8 @@ BOOST_AUTO_TEST_CASE (verify_empty_text_node_in_subtitles)
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
).set_cpl_id(cpl->id()),
dcp::VerificationNote(
- dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::INVALID_SUBTITLE_ISSUE_DATE, string{"2021-08-09T18:34:46.000+02:00"}
- ).set_cpl_id(cpl->id()).set_reel_index(0),
+ dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::INVALID_SUBTITLE_ISSUE_DATE
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_issue_date("2021-08-09T18:34:46.000+02:00"),
dcp::VerificationNote(
dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::INCORRECT_SUBTITLE_NAMESPACE_COUNT
).set_asset_id(asset->id()).set_cpl_id(cpl->id()).set_reel_index(0)
@@ -1518,7 +1506,7 @@ BOOST_AUTO_TEST_CASE (verify_empty_text_node_in_subtitles_with_child_nodes)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
{ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_STANDARD },
dcp::VerificationNote(
@@ -1545,7 +1533,7 @@ BOOST_AUTO_TEST_CASE (verify_empty_text_node_in_subtitles_with_empty_child_nodes
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISSING_SUBTITLE, asset->id(), boost::filesystem::canonical(asset->file().get())
@@ -1589,9 +1577,9 @@ BOOST_AUTO_TEST_CASE (verify_external_asset)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
VN(VN::Type::WARNING, VN::Code::EXTERNAL_ASSET).set_asset_id(picture->asset()->id()),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
@@ -1675,27 +1663,26 @@ BOOST_AUTO_TEST_CASE (verify_invalid_cpl_metadata_bad_tag)
string{"1440x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "pic.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, string("no declaration found for element 'meta:MainSoundXConfiguration'"), canonical(cpl->file().get()), 50
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, canonical(cpl->file().get())
+ ).set_cpl_id(cpl->id()).set_line(50).set_error("no declaration found for element 'meta:MainSoundXConfiguration'"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, string("no declaration found for element 'meta:MainSoundXSampleRate'"), canonical(cpl->file().get()), 51
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, canonical(cpl->file().get())
+ ).set_cpl_id(cpl->id()).set_line(51).set_error("no declaration found for element 'meta:MainSoundXSampleRate'"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR,
- dcp::VerificationNote::Code::INVALID_XML,
- string("element 'meta:MainSoundXConfiguration' is not allowed for content model "
- "'(Id,AnnotationText?,EditRate,IntrinsicDuration,EntryPoint?,Duration?,"
- "FullContentTitleText,ReleaseTerritory?,VersionNumber?,Chain?,Distributor?,"
- "Facility?,AlternateContentVersionList?,Luminance?,MainSoundConfiguration,"
- "MainSoundSampleRate,MainPictureStoredArea,MainPictureActiveArea,MainSubtitleLanguageList?,"
- "ExtensionMetadataList?,)'"),
- canonical(cpl->file().get()),
- 71).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, canonical(cpl->file().get())
+ ).set_cpl_id(cpl->id()).set_line(71).set_error(
+ "element 'meta:MainSoundXConfiguration' is not allowed for content model "
+ "'(Id,AnnotationText?,EditRate,IntrinsicDuration,EntryPoint?,Duration?,"
+ "FullContentTitleText,ReleaseTerritory?,VersionNumber?,Chain?,Distributor?,"
+ "Facility?,AlternateContentVersionList?,Luminance?,MainSoundConfiguration,"
+ "MainSoundSampleRate,MainPictureStoredArea,MainPictureActiveArea,MainSubtitleLanguageList?,"
+ "ExtensionMetadataList?,)'"
+ ),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CPL_HASHES, canonical(cpl->file().get())
).set_cpl_id(cpl->id()).set_reference_hash(calc.old_hash()).set_calculated_hash(calc.new_hash())
@@ -1755,15 +1742,15 @@ BOOST_AUTO_TEST_CASE (verify_invalid_language1)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_LANGUAGE, string("badlang")
- ).set_cpl_id(cpl->id()).set_reel_index(0),
+ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_LANGUAGE
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_language("badlang"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_LANGUAGE, string("wrong-andbad")
- ).set_cpl_id(cpl->id()).set_reel_index(0),
+ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_LANGUAGE
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_language("wrong-andbad"),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
).set_cpl_id(cpl->id())
@@ -1791,15 +1778,15 @@ BOOST_AUTO_TEST_CASE (verify_invalid_language2)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_LANGUAGE, string("badlang")
- ).set_cpl_id(cpl->id()).set_reel_index(0),
+ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_LANGUAGE
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_language("badlang"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_LANGUAGE, string("wrong-andbad")
- ).set_cpl_id(cpl->id()).set_reel_index(0),
+ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_LANGUAGE
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_language("wrong-andbad"),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
).set_cpl_id(cpl->id())
@@ -1853,22 +1840,22 @@ BOOST_AUTO_TEST_CASE (verify_invalid_language3)
string{"1440x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "videofoo.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
- dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_LANGUAGE, string("this-is-wrong")
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_LANGUAGE
+ ).set_cpl_id(cpl->id()).set_language("this-is-wrong"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_LANGUAGE, string("andso-is-this")
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_LANGUAGE
+ ).set_cpl_id(cpl->id()).set_language("andso-is-this"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_LANGUAGE, string("fred-jim")
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_LANGUAGE
+ ).set_cpl_id(cpl->id()).set_language("fred-jim"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_LANGUAGE, string("frobozz")
- ).set_cpl_id(cpl->id()).set_reel_index(0)
+ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_LANGUAGE
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_language("frobozz")
});
}
@@ -1941,8 +1928,8 @@ check_picture_size_ok (int width, int height, int frame_rate, bool three_d)
std::vector<dcp::VerificationNote> expected = {
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
dcp::VerificationNote(
@@ -1970,8 +1957,8 @@ check_picture_size_bad_frame_size (int width, int height, int frame_rate, bool t
std::vector<dcp::VerificationNote> expected = {
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
dcp::VerificationNote(
@@ -2002,8 +1989,8 @@ check_picture_size_bad_2k_frame_rate (int width, int height, int frame_rate, boo
std::vector<dcp::VerificationNote> expected = {
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
dcp::VerificationNote(
@@ -2038,8 +2025,8 @@ check_picture_size_bad_4k_frame_rate (int width, int height, int frame_rate, boo
std::vector<dcp::VerificationNote> expected = {
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
dcp::VerificationNote(
@@ -2109,8 +2096,8 @@ BOOST_AUTO_TEST_CASE (verify_picture_size)
std::vector<dcp::VerificationNote> expected = {
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
dcp::VerificationNote(
@@ -2181,9 +2168,9 @@ BOOST_AUTO_TEST_CASE (verify_invalid_closed_caption_xml_size_in_bytes)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_SUBTITLE_START_TIME, canonical(dir / "subs.mxf")
).set_cpl_id(cpl->id()).set_reel_index(0),
@@ -2238,9 +2225,9 @@ verify_timed_text_asset_too_large (string name)
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_TIMED_TEXT_SIZE_IN_BYTES, string("121698284"), canonical(dir / "subs.mxf")
).set_cpl_id(cpl->id()).set_reel_index(0),
@@ -2322,9 +2309,9 @@ BOOST_AUTO_TEST_CASE (verify_missing_subtitle_language)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -2381,9 +2368,9 @@ BOOST_AUTO_TEST_CASE (verify_mismatched_subtitle_languages)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(path / "video0.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(path / "video1.mxf"), cpl).set_reel_index(1),
dcp::VerificationNote(
@@ -2441,9 +2428,9 @@ BOOST_AUTO_TEST_CASE (verify_multiple_closed_caption_languages_allowed)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(path / "video0.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(path / "video1.mxf"), cpl).set_reel_index(1),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(path / "video0.mxf"), cpl).set_reel_index(0),
@@ -2511,9 +2498,9 @@ BOOST_AUTO_TEST_CASE (verify_missing_subtitle_start_time)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_SUBTITLE_START_TIME, canonical(dir / "subs.mxf")
@@ -2571,9 +2558,9 @@ BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_start_time)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -2683,9 +2670,9 @@ BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_first_text_time)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::INVALID_SUBTITLE_FIRST_TEXT_TIME
@@ -2709,9 +2696,9 @@ BOOST_AUTO_TEST_CASE (verify_valid_subtitle_first_text_time)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
@@ -2767,9 +2754,9 @@ BOOST_AUTO_TEST_CASE (verify_valid_subtitle_first_text_time_on_second_reel)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
@@ -2794,9 +2781,9 @@ BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_spacing)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::INVALID_SUBTITLE_SPACING
@@ -2825,9 +2812,9 @@ BOOST_AUTO_TEST_CASE (verify_valid_subtitle_spacing)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
@@ -2870,9 +2857,9 @@ BOOST_AUTO_TEST_CASE(verify_invalid_subtitle_duration_bv21)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION_BV21
@@ -2895,9 +2882,9 @@ BOOST_AUTO_TEST_CASE (verify_valid_subtitle_duration)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
@@ -2925,9 +2912,9 @@ BOOST_AUTO_TEST_CASE (verify_subtitle_overlapping_reel_boundary)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISMATCHED_TIMED_TEXT_DURATION , "72 96", boost::filesystem::canonical(asset->file().get())
@@ -2964,9 +2951,9 @@ BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_line_count1)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::INVALID_SUBTITLE_LINE_COUNT
@@ -2996,9 +2983,9 @@ BOOST_AUTO_TEST_CASE (verify_valid_subtitle_line_count1)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
@@ -3025,9 +3012,9 @@ BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_line_count2)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::INVALID_SUBTITLE_LINE_COUNT
@@ -3058,9 +3045,9 @@ BOOST_AUTO_TEST_CASE (verify_valid_subtitle_line_count2)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
@@ -3084,9 +3071,9 @@ BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_line_length1)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::NEARLY_INVALID_SUBTITLE_LINE_LENGTH
@@ -3113,9 +3100,9 @@ BOOST_AUTO_TEST_CASE (verify_invalid_subtitle_line_length2)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::INVALID_SUBTITLE_LINE_LENGTH
@@ -3145,9 +3132,9 @@ BOOST_AUTO_TEST_CASE (verify_valid_closed_caption_line_count1)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_CLOSED_CAPTION_LINE_COUNT
@@ -3177,9 +3164,9 @@ BOOST_AUTO_TEST_CASE (verify_valid_closed_caption_line_count2)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
@@ -3206,9 +3193,9 @@ BOOST_AUTO_TEST_CASE (verify_invalid_closed_caption_line_count3)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_CLOSED_CAPTION_LINE_COUNT
@@ -3239,9 +3226,9 @@ BOOST_AUTO_TEST_CASE (verify_valid_closed_caption_line_count4)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
@@ -3266,9 +3253,9 @@ BOOST_AUTO_TEST_CASE (verify_valid_closed_caption_line_length)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
@@ -3292,9 +3279,9 @@ BOOST_AUTO_TEST_CASE (verify_invalid_closed_caption_line_length)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_CLOSED_CAPTION_LINE_LENGTH
@@ -3323,9 +3310,9 @@ BOOST_AUTO_TEST_CASE (verify_mismatched_closed_caption_valign1)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
@@ -3351,9 +3338,9 @@ BOOST_AUTO_TEST_CASE (verify_mismatched_closed_caption_valign2)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CLOSED_CAPTION_VALIGN
@@ -3383,9 +3370,9 @@ BOOST_AUTO_TEST_CASE (verify_incorrect_closed_caption_ordering1)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
@@ -3412,9 +3399,9 @@ BOOST_AUTO_TEST_CASE (verify_incorrect_closed_caption_ordering2)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
@@ -3433,9 +3420,9 @@ BOOST_AUTO_TEST_CASE (verify_incorrect_closed_caption_ordering3)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INCORRECT_CLOSED_CAPTION_ORDERING
@@ -3458,9 +3445,9 @@ BOOST_AUTO_TEST_CASE (verify_incorrect_closed_caption_ordering4)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
@@ -3496,9 +3483,9 @@ BOOST_AUTO_TEST_CASE (verify_invalid_sound_frame_rate)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "videofoo.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "videofoo.mxf"), cpl).set_reel_index(0),
@@ -3543,7 +3530,7 @@ BOOST_AUTO_TEST_CASE (verify_missing_cpl_annotation_text)
cpl->file().get()
).set_cpl_id(cpl->id()),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
dcp::VerificationNote(
@@ -3579,7 +3566,7 @@ BOOST_AUTO_TEST_CASE (verify_mismatched_cpl_annotation_text)
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -3626,9 +3613,9 @@ BOOST_AUTO_TEST_CASE (verify_mismatched_asset_duration)
{},
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
@@ -3710,9 +3697,9 @@ BOOST_AUTO_TEST_CASE (verify_missing_main_subtitle_from_some_reels)
{},
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video1.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video2.mxf"), cpl).set_reel_index(1),
@@ -3737,9 +3724,9 @@ BOOST_AUTO_TEST_CASE (verify_missing_main_subtitle_from_some_reels)
{},
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video1.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video2.mxf"), cpl).set_reel_index(1),
@@ -3760,9 +3747,9 @@ BOOST_AUTO_TEST_CASE (verify_missing_main_subtitle_from_some_reels)
{},
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video1.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video2.mxf"), cpl).set_reel_index(1),
@@ -3844,11 +3831,11 @@ BOOST_AUTO_TEST_CASE (verify_mismatched_closed_caption_asset_counts)
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video1.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video2.mxf"), cpl).set_reel_index(1),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video1.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video2.mxf"), cpl).set_reel_index(1),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
dcp::VerificationNote(
@@ -3870,9 +3857,9 @@ BOOST_AUTO_TEST_CASE (verify_mismatched_closed_caption_asset_counts)
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video1.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video2.mxf"), cpl).set_reel_index(1),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video1.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video2.mxf"), cpl).set_reel_index(1),
@@ -3893,9 +3880,9 @@ BOOST_AUTO_TEST_CASE (verify_mismatched_closed_caption_asset_counts)
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video1.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video2.mxf"), cpl).set_reel_index(1),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video1.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video2.mxf"), cpl).set_reel_index(1),
@@ -3947,13 +3934,13 @@ verify_text_entry_point_check(dcp::TextType type, path dir, dcp::VerificationNot
{},
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, code, subs->id()
).set_cpl_id(cpl->id()).set_reel_index(0),
@@ -4037,8 +4024,8 @@ BOOST_AUTO_TEST_CASE (verify_missing_hash)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
@@ -4047,8 +4034,8 @@ BOOST_AUTO_TEST_CASE (verify_missing_hash)
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CPL_HASHES, cpl->file().get()
).set_cpl_id(cpl->id()).set_reference_hash(calc.old_hash()).set_calculated_hash(calc.new_hash()),
dcp::VerificationNote(
- dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_HASH, asset_id
- ).set_cpl_id(cpl->id()).set_reel_index(0)
+ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_HASH
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_asset_id(asset_id)
});
}
@@ -4087,9 +4074,9 @@ verify_markers_test (
cpl->file().get()
).set_cpl_id(cpl->id())
);
- test_notes.push_back(ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"feature"}, cpl));
+ test_notes.push_back(ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"));
test_notes.push_back(ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text));
- test_notes.push_back(ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl));
+ test_notes.push_back(ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"));
test_notes.push_back(ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0));
check_verify_result({dir}, {}, test_notes);
@@ -4202,9 +4189,9 @@ BOOST_AUTO_TEST_CASE (verify_missing_cpl_metadata_version_number)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA_VERSION_NUMBER, cpl->file().get()
@@ -4236,7 +4223,7 @@ BOOST_AUTO_TEST_CASE (verify_missing_extension_metadata1)
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -4245,7 +4232,7 @@ BOOST_AUTO_TEST_CASE (verify_missing_extension_metadata1)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CPL_HASHES, cpl->file().get()
).set_cpl_id(cpl->id()).set_reference_hash(calc.old_hash()).set_calculated_hash(calc.new_hash()),
@@ -4278,7 +4265,7 @@ BOOST_AUTO_TEST_CASE (verify_missing_extension_metadata2)
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -4287,7 +4274,7 @@ BOOST_AUTO_TEST_CASE (verify_missing_extension_metadata2)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CPL_HASHES, cpl->file().get()
).set_cpl_id(cpl->id()).set_reference_hash(calc.old_hash()).set_calculated_hash(calc.new_hash()),
@@ -4321,7 +4308,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_xml_cpl_extension_metadata3)
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -4330,12 +4317,13 @@ BOOST_AUTO_TEST_CASE (verify_invalid_xml_cpl_extension_metadata3)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, string("no declaration found for element 'meta:NameX'"), cpl->file().get(), 70
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, cpl->file().get()
+ ).set_cpl_id(cpl->id()).set_line(70).set_error("no declaration found for element 'meta:NameX'"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, string("element 'meta:NameX' is not allowed for content model '(Name,PropertyList?,)'"), cpl->file().get(), 77).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, cpl->file().get()
+ ).set_cpl_id(cpl->id()).set_line(77).set_error("element 'meta:NameX' is not allowed for content model '(Name,PropertyList?,)'"),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CPL_HASHES, cpl->file().get()
).set_cpl_id(cpl->id()).set_reference_hash(calc.old_hash()).set_calculated_hash(calc.new_hash()),
@@ -4365,7 +4353,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_extension_metadata1)
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -4374,7 +4362,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_extension_metadata1)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CPL_HASHES, cpl->file().get()
).set_cpl_id(cpl->id()).set_reference_hash(calc.old_hash()).set_calculated_hash(calc.new_hash()),
@@ -4407,7 +4395,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_extension_metadata2)
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -4416,7 +4404,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_extension_metadata2)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CPL_HASHES, cpl->file().get()
).set_cpl_id(cpl->id()).set_reference_hash(calc.old_hash()).set_calculated_hash(calc.new_hash()),
@@ -4450,7 +4438,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_xml_cpl_extension_metadata6)
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -4459,13 +4447,13 @@ BOOST_AUTO_TEST_CASE (verify_invalid_xml_cpl_extension_metadata6)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, string("no declaration found for element 'meta:ValueX'"), cpl->file().get(), 74
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, cpl->file().get()
+ ).set_cpl_id(cpl->id()).set_line(74).set_error("no declaration found for element 'meta:ValueX'"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, string("element 'meta:ValueX' is not allowed for content model '(Name,Value)'"), cpl->file().get(), 75
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, cpl->file().get()
+ ).set_cpl_id(cpl->id()).set_line(75).set_error("element 'meta:ValueX' is not allowed for content model '(Name,Value)'"),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CPL_HASHES, cpl->file().get()
).set_cpl_id(cpl->id()).set_reference_hash(calc.old_hash()).set_calculated_hash(calc.new_hash()),
@@ -4498,7 +4486,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_xml_cpl_extension_metadata7)
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -4507,7 +4495,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_xml_cpl_extension_metadata7)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CPL_HASHES, cpl->file().get()
).set_cpl_id(cpl->id()).set_reference_hash(calc.old_hash()).set_calculated_hash(calc.new_hash()),
@@ -4541,7 +4529,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_xml_cpl_extension_metadata8)
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -4550,12 +4538,13 @@ BOOST_AUTO_TEST_CASE (verify_invalid_xml_cpl_extension_metadata8)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, string("no declaration found for element 'meta:PropertyX'"), cpl->file().get(), 72
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, cpl->file().get()
+ ).set_cpl_id(cpl->id()).set_line(72).set_error("no declaration found for element 'meta:PropertyX'"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, string("element 'meta:PropertyX' is not allowed for content model '(Property+)'"), cpl->file().get(), 76).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, cpl->file().get()
+ ).set_cpl_id(cpl->id()).set_line(76).set_error("element 'meta:PropertyX' is not allowed for content model '(Property+)'"),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CPL_HASHES, cpl->file().get()
).set_cpl_id(cpl->id()).set_reference_hash(calc.old_hash()).set_calculated_hash(calc.new_hash()),
@@ -4589,7 +4578,7 @@ BOOST_AUTO_TEST_CASE (verify_invalid_xml_cpl_extension_metadata9)
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -4598,13 +4587,13 @@ BOOST_AUTO_TEST_CASE (verify_invalid_xml_cpl_extension_metadata9)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, string("no declaration found for element 'meta:PropertyListX'"), cpl->file().get(), 71
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, cpl->file().get()
+ ).set_cpl_id(cpl->id()).set_line(71).set_error("no declaration found for element 'meta:PropertyListX'"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, string("element 'meta:PropertyListX' is not allowed for content model '(Name,PropertyList?,)'"), cpl->file().get(), 77
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_XML, cpl->file().get()
+ ).set_cpl_id(cpl->id()).set_line(77).set_error("element 'meta:PropertyListX' is not allowed for content model '(Name,PropertyList?,)'"),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CPL_HASHES, cpl->file().get()
).set_cpl_id(cpl->id()).set_reference_hash(calc.old_hash()).set_calculated_hash(calc.new_hash()),
@@ -4639,8 +4628,8 @@ BOOST_AUTO_TEST_CASE (verify_unsigned_cpl_with_encrypted_content)
{
ok(dcp::VerificationNote::Code::ALL_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"feature"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("feature"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -4694,8 +4683,8 @@ BOOST_AUTO_TEST_CASE (verify_unsigned_pkl_with_encrypted_content)
{
ok(dcp::VerificationNote::Code::ALL_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"feature"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("feature"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
@@ -4753,9 +4742,9 @@ BOOST_AUTO_TEST_CASE (verify_unsigned_pkl_with_unencrypted_content)
string{"1998x1080"},
canonical(cpl->file().get())
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0)
});
}
@@ -4831,10 +4820,10 @@ BOOST_AUTO_TEST_CASE (verify_partially_encrypted)
cpl->file().get()
).set_cpl_id(cpl->id()),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -4940,11 +4929,11 @@ BOOST_AUTO_TEST_CASE (verify_mismatched_subtitle_resource_id)
{},
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISMATCHED_TIMED_TEXT_DURATION , "240 0", boost::filesystem::canonical(subs_mxf)
).set_cpl_id(cpl->id()).set_reel_index(0),
@@ -5020,11 +5009,11 @@ BOOST_AUTO_TEST_CASE (verify_incorrect_timed_text_id)
{},
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISMATCHED_TIMED_TEXT_DURATION , "240 0", boost::filesystem::canonical(subs_mxf)
).set_cpl_id(cpl->id()).set_reel_index(0),
@@ -5038,8 +5027,8 @@ BOOST_AUTO_TEST_CASE (verify_incorrect_timed_text_id)
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, cpl->file().get()
).set_cpl_id(cpl->id()),
dcp::VerificationNote(
- dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::INVALID_SUBTITLE_ISSUE_DATE, string{"2018-10-02T12:25:14+02:00"}
- ).set_cpl_id(cpl->id()).set_reel_index(0),
+ dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::INVALID_SUBTITLE_ISSUE_DATE
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_issue_date("2018-10-02T12:25:14+02:00")
});
}
@@ -5061,7 +5050,7 @@ BOOST_AUTO_TEST_CASE (verify_threed_marked_as_twod)
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(path / "0d6f57e6-adac-4e1d-bfbe-d162bf13e2cd_j2c.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
dcp::VerificationNote(
dcp::VerificationNote::Type::WARNING,
dcp::VerificationNote::Code::THREED_ASSET_MARKED_AS_TWOD, boost::filesystem::canonical(find_file(path, "j2c"))
@@ -5099,7 +5088,7 @@ BOOST_AUTO_TEST_CASE (verify_unexpected_things_in_main_markers)
{},
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -5108,7 +5097,7 @@ BOOST_AUTO_TEST_CASE (verify_unexpected_things_in_main_markers)
string{"1998x1080"},
canonical(cpl->file().get())
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
@@ -5152,7 +5141,7 @@ BOOST_AUTO_TEST_CASE(verify_invalid_content_kind)
canonical(cpl->file().get())
).set_cpl_id(cpl->id()),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
@@ -5160,8 +5149,8 @@ BOOST_AUTO_TEST_CASE(verify_invalid_content_kind)
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISMATCHED_CPL_HASHES, canonical(find_cpl(dir))
).set_cpl_id(cpl->id()).set_reference_hash(calc.old_hash()).set_calculated_hash(calc.new_hash()),
dcp::VerificationNote(
- dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_CONTENT_KIND, string("trip")
- ).set_cpl_id(cpl->id()),
+ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_CONTENT_KIND
+ ).set_cpl_id(cpl->id()).set_content_kind("trip"),
});
}
@@ -5190,7 +5179,7 @@ BOOST_AUTO_TEST_CASE(verify_valid_content_kind)
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -5233,10 +5222,10 @@ BOOST_AUTO_TEST_CASE(verify_invalid_main_picture_active_area_1)
{},
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -5279,10 +5268,10 @@ BOOST_AUTO_TEST_CASE(verify_invalid_main_picture_active_area_2)
{},
{
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -5330,8 +5319,8 @@ BOOST_AUTO_TEST_CASE(verify_duplicate_pkl_asset_ids)
string{"1998x1080"},
canonical(cpl->file().get())
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
{ dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::DUPLICATE_ASSET_ID_IN_PKL, pkl.id(), canonical(find_pkl(dir)) },
@@ -5369,8 +5358,8 @@ BOOST_AUTO_TEST_CASE(verify_duplicate_assetmap_asset_ids)
string{"1998x1080"},
canonical(cpl->file().get())
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
dcp::VerificationNote(
@@ -5460,8 +5449,8 @@ BOOST_AUTO_TEST_CASE(verify_mismatched_sound_channel_counts)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(path / "video1.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(path / "video2.mxf"), cpl).set_reel_index(1),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(path / "video1.mxf"), cpl).set_reel_index(0),
@@ -5523,8 +5512,8 @@ BOOST_AUTO_TEST_CASE(verify_invalid_main_sound_configuration)
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(path / "video1.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(path / "video1.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(
@@ -5605,8 +5594,8 @@ BOOST_AUTO_TEST_CASE(verify_invalid_tile_part_size)
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(path / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
dcp::VerificationNote(
dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::MISSING_FFOC
@@ -5659,8 +5648,8 @@ BOOST_AUTO_TEST_CASE(verify_too_many_subtitle_namespaces)
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"feature"}, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"Dcp_FTR-1_F_XX-XX_MOS_2K_20230407_SMPTE_OV"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("Dcp_FTR-1_F_XX-XX_MOS_2K_20230407_SMPTE_OV"),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "j2c_42b34dcd-caa5-4c7b-aa0f-66a590947ba1.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "j2c_42b34dcd-caa5-4c7b-aa0f-66a590947ba1.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
@@ -5705,7 +5694,7 @@ BOOST_AUTO_TEST_CASE(verify_missing_load_font_for_font)
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
{ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_STANDARD },
dcp::VerificationNote(dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::MISSING_LOAD_FONT_FOR_FONT).set_load_font_id("theFontId").set_cpl_id(cpl->id())
@@ -5766,8 +5755,8 @@ BOOST_AUTO_TEST_CASE(verify_missing_load_font)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
@@ -5807,8 +5796,8 @@ BOOST_AUTO_TEST_CASE(verify_spots_wrong_asset)
string{"1998x1080"},
cpl->file().get()
).set_cpl_id(cpl->id()),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
dcp::VerificationNote(
dcp::VerificationNote::Type::ERROR,
@@ -5842,8 +5831,8 @@ BOOST_AUTO_TEST_CASE(verify_cpl_content_version_label_text_empty)
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"A Test DCP"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("A Test DCP"),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "video.mxf"), cpl).set_reel_index(0),
dcp::VerificationNote(dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::EMPTY_CONTENT_VERSION_LABEL_TEXT, cpl->file().get()).set_cpl_id(cpl->id())
@@ -5871,9 +5860,9 @@ BOOST_AUTO_TEST_CASE(verify_encrypted_smpte_dcp)
{
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
ok(dcp::VerificationNote::Code::ALL_ENCRYPTED, cpl),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, canonical(cpl_file)
@@ -5900,9 +5889,9 @@ BOOST_AUTO_TEST_CASE(verify_encrypted_smpte_dcp_without_kdm)
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
ok(dcp::VerificationNote::Code::ALL_ENCRYPTED, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"trailer"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("trailer"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"hello"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("hello"),
dcp::VerificationNote(
dcp::VerificationNote::Type::WARNING, dcp::VerificationNote::Code::MISSED_CHECK_OF_ENCRYPTED
).set_cpl_id(cpl->id()).set_reel_index(0),
@@ -5928,9 +5917,9 @@ BOOST_AUTO_TEST_CASE(verify_invalid_sound_bit_depth)
vector<dcp::VerificationNote> notes = {
ok(dcp::VerificationNote::Code::MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL, cpl),
ok(dcp::VerificationNote::Code::MATCHING_CPL_HASHES, cpl),
- ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, string{"Advertisement"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CONTENT_KIND, cpl).set_content_kind("Advertisement"),
ok(dcp::VerificationNote::Code::VALID_CONTENT_VERSION_LABEL_TEXT, cpl).set_content_version(cpl->content_version()->label_text),
- ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, string{"204794_Kitex_Scoobee_Day_Bags_30_Sec_Malayalam_220524_RADQR"}, cpl),
+ ok(dcp::VerificationNote::Code::VALID_CPL_ANNOTATION_TEXT, cpl).set_cpl_annotation_text("204794_Kitex_Scoobee_Day_Bags_30_Sec_Malayalam_220524_RADQR"),
ok(dcp::VerificationNote::Code::NONE_ENCRYPTED, cpl),
ok(dcp::VerificationNote::Code::CORRECT_PICTURE_HASH, canonical(dir / "Video.mxf"), cpl).set_reel_index(0),
ok(dcp::VerificationNote::Code::VALID_PICTURE_FRAME_SIZES_IN_BYTES, canonical(dir / "Video.mxf"), cpl).set_reel_index(0),
@@ -5938,11 +5927,11 @@ BOOST_AUTO_TEST_CASE(verify_invalid_sound_bit_depth)
dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::INVALID_SOUND_BIT_DEPTH, "16", canonical(dir / "Audio.mxf")
).set_cpl_id(cpl->id()).set_reel_index(0),
dcp::VerificationNote(
- dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_HASH, string("fd4796c2-9c84-454c-91f4-13ad127cea8a")
- ).set_cpl_id(cpl->id()).set_reel_index(0),
+ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_HASH
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_asset_id("fd4796c2-9c84-454c-91f4-13ad127cea8a"),
dcp::VerificationNote(
- dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_HASH, string("9d5e8bc4-676b-4306-a86d-03f70c73b457")
- ).set_cpl_id(cpl->id()).set_reel_index(0),
+ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_HASH
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_asset_id("9d5e8bc4-676b-4306-a86d-03f70c73b457"),
dcp::VerificationNote(
dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::MISSING_CPL_METADATA, canonical(cpl->file().get())
).set_cpl_id(cpl->id()),
@@ -5957,8 +5946,8 @@ BOOST_AUTO_TEST_CASE(verify_invalid_sound_bit_depth)
for (auto i = 0; i < 792; ++i) {
notes.push_back(
dcp::VerificationNote(
- dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_JPEG2000_GUARD_BITS_FOR_2K, string("2")
- ).set_cpl_id(cpl->id()).set_reel_index(0)
+ dcp::VerificationNote::Type::BV21_ERROR, dcp::VerificationNote::Code::INVALID_JPEG2000_GUARD_BITS_FOR_2K
+ ).set_cpl_id(cpl->id()).set_reel_index(0).set_guard_bits(2)
);
}