X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=test%2Fround_trip_test.cc;h=2e7984cae23c9732fedbd08a47d4f38bf57e5435;hb=0fdccaf9779b376938a1cd795f31f3bc5036333f;hp=505477a323ca009348aa8e9b151dc99faccd3335;hpb=e2a4e0f08c9e8cc82fb20f1cd358897fae46c9ee;p=libdcp.git diff --git a/test/round_trip_test.cc b/test/round_trip_test.cc index 505477a3..2e7984ca 100644 --- a/test/round_trip_test.cc +++ b/test/round_trip_test.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2013-2015 Carl Hetherington + Copyright (C) 2013-2019 Carl Hetherington This file is part of libdcp. @@ -15,6 +15,20 @@ You should have received a copy of the GNU General Public License along with libdcp. If not, see . + + In addition, as a special exception, the copyright holders give + permission to link the code of portions of this program with the + OpenSSL library under certain conditions as described in each + individual source file, and distribute linked combinations + including the two. + + You must obey the GNU General Public License in all respects + for all of the code used other than OpenSSL. If you modify + file(s) with this exception, you may extend this exception to your + version of the file(s), but you are not obligated to do so. If you + do not wish to do so, delete this exception statement from your + version. If you delete this exception statement from all source + files in the program, then also delete it here. */ #include "certificate.h" @@ -42,7 +56,8 @@ using std::list; using std::vector; -using boost::shared_ptr; +using std::string; +using std::shared_ptr; using boost::scoped_array; /** Build an encrypted picture asset and a KDM for it and check that the KDM can be decrypted */ @@ -53,9 +68,9 @@ BOOST_AUTO_TEST_CASE (round_trip_test) boost::filesystem::path work_dir = "build/test/round_trip_test"; boost::filesystem::create_directory (work_dir); - shared_ptr asset_A (new dcp::MonoPictureAsset (dcp::Fraction (24, 1))); - shared_ptr writer = asset_A->start_write (work_dir / "video.mxf", dcp::SMPTE, false); - dcp::File j2c ("test/data/32x32_red_square.j2c"); + shared_ptr asset_A (new dcp::MonoPictureAsset (dcp::Fraction (24, 1), dcp::SMPTE)); + shared_ptr writer = asset_A->start_write (work_dir / "video.mxf", false); + dcp::File j2c ("test/data/flat_red.j2c"); for (int i = 0; i < 24; ++i) { writer->write (j2c.data (), j2c.size ()); } @@ -70,12 +85,17 @@ BOOST_AUTO_TEST_CASE (round_trip_test) reel->add (shared_ptr (new dcp::ReelMonoPictureAsset (asset_A, 0))); cpl->add (reel); + dcp::LocalTime start; + start.set_year (start.year() + 1); + dcp::LocalTime end; + end.set_year (end.year() + 2); + /* A KDM using our certificate chain's leaf key pair */ dcp::DecryptedKDM kdm_A ( cpl, key, - dcp::LocalTime ("2013-01-01T00:00:00+00:00"), - dcp::LocalTime ("2013-01-08T00:00:00+00:00"), + start, + end, "libdcp", "test", "2012-07-17T04:45:18+00:00" @@ -83,7 +103,7 @@ BOOST_AUTO_TEST_CASE (round_trip_test) boost::filesystem::path const kdm_file = work_dir / "kdm.xml"; - kdm_A.encrypt(signer, signer->leaf(), vector(), dcp::MODIFIED_TRANSITIONAL_1, true, 0).as_xml (kdm_file); + kdm_A.encrypt(signer, signer->leaf(), vector(), dcp::MODIFIED_TRANSITIONAL_1, true, 0).as_xml (kdm_file); /* Reload the KDM, using our private key to decrypt it */ dcp::DecryptedKDM kdm_B (dcp::EncryptedKDM (dcp::file_to_string (kdm_file)), signer->key().get ());