Check for multiple asset IDs in a PKL during verify.
[libdcp.git] / test / verify_test.cc
index d1319810293c0d901f24018c52b9f0c73543198e..7791f8b574c97b0be768ed405b9a85ff1e3ee1c2 100644 (file)
@@ -3343,3 +3343,26 @@ BOOST_AUTO_TEST_CASE(verify_invalid_main_picture_active_area_2)
 }
 
 
+BOOST_AUTO_TEST_CASE(verify_duplicate_pkl_asset_ids)
+{
+       RNGFixer rg;
+
+       path dir = "build/test/verify_duplicate_pkl_asset_ids";
+       prepare_directory(dir);
+       auto dcp = make_simple(dir, 1, 24);
+       dcp->write_xml();
+
+       {
+               Editor e(find_pkl(dir));
+               e.replace("urn:uuid:5407b210-4441-4e97-8b16-8bdc7c12da54", "urn:uuid:6affb8ee-0020-4dff-a53c-17652f6358ab");
+       }
+
+       dcp::PKL pkl(find_pkl(dir));
+
+       check_verify_result(
+               { dir },
+               {
+                       { dcp::VerificationNote::Type::ERROR, dcp::VerificationNote::Code::DUPLICATE_ASSET_ID_IN_PKL, pkl.id(), canonical(find_pkl(dir)) },
+               });
+}
+