X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=test%2Ftest.cc;h=241032099b8922ebf7935c971978dcba6ac898f0;hb=2e504b33eb9f38cac629ad31b7c107fb0cf5efda;hp=c0f732c46d22c9f558e6c897772d3833cf51e39f;hpb=e194f0003b60b2607da0822485c56cd8267e78dc;p=dcpomatic.git diff --git a/test/test.cc b/test/test.cc index c0f732c46..241032099 100644 --- a/test/test.cc +++ b/test/test.cc @@ -19,8 +19,9 @@ #include #include +#include #include -#include +#include #include "lib/config.h" #include "lib/util.h" #include "lib/ui_signaller.h" @@ -29,6 +30,7 @@ #include "lib/job.h" #include "lib/cross.h" #include "lib/server_finder.h" +#include "lib/image.h" #define BOOST_TEST_DYN_LINK #define BOOST_TEST_MODULE dcpomatic_test #include @@ -95,14 +97,14 @@ new_test_film (string name) return f; } -static void +void check_file (boost::filesystem::path ref, boost::filesystem::path check) { uintmax_t N = boost::filesystem::file_size (ref); BOOST_CHECK_EQUAL (N, boost::filesystem::file_size (check)); FILE* ref_file = fopen (ref.c_str(), "rb"); BOOST_CHECK (ref_file); - FILE* check_file = fopen (check.c_str(), "rb"); + FILE* check_file = fopen_boost (check, "rb"); BOOST_CHECK (check_file); int const buffer_size = 65536; @@ -128,9 +130,9 @@ check_file (boost::filesystem::path ref, boost::filesystem::path check) } static void -note (libdcp::NoteType t, string n) +note (dcp::NoteType t, string n) { - if (t == libdcp::ERROR) { + if (t == dcp::ERROR) { cerr << n << "\n"; } } @@ -138,16 +140,16 @@ note (libdcp::NoteType t, string n) void check_dcp (boost::filesystem::path ref, boost::filesystem::path check) { - libdcp::DCP ref_dcp (ref); + dcp::DCP ref_dcp (ref); ref_dcp.read (); - libdcp::DCP check_dcp (check); + dcp::DCP check_dcp (check); check_dcp.read (); - libdcp::EqualityOptions options; + dcp::EqualityOptions options; options.max_mean_pixel_error = 5; options.max_std_dev_pixel_error = 5; options.max_audio_sample_error = 255; - options.cpl_names_can_differ = true; + options.cpl_annotation_texts_can_differ = true; options.mxf_names_can_differ = true; BOOST_CHECK (ref_dcp.equals (check_dcp, options, boost::bind (note, _1, _2))); @@ -231,3 +233,12 @@ wait_for_jobs () ui_signaller->ui_idle (); } + +void +write_image (shared_ptr image, boost::filesystem::path file) +{ + using namespace MagickCore; + + Magick::Image m (image->size().width, image->size().height, "ARGB", CharPixel, (void *) image->data()[0]); + m.write (file.string ()); +}