diff --git a/libqpdf/qpdf-c.cc b/libqpdf/qpdf-c.cc index a5dda2a..063adaf 100644 --- a/libqpdf/qpdf-c.cc +++ b/libqpdf/qpdf-c.cc @@ -828,6 +828,7 @@ void qpdf_register_progress_reporter( void (*report_progress)(int percent, void* data), void* data) { + QTC::TC("qpdf", "qpdf-c registered progress reporter"); qpdf->qpdf_writer->registerProgressReporter( new ProgressReporter(report_progress, data)); } diff --git a/qpdf/qpdf-ctest.c b/qpdf/qpdf-ctest.c index 86ddb0b..4d30712 100644 --- a/qpdf/qpdf-ctest.c +++ b/qpdf/qpdf-ctest.c @@ -117,6 +117,11 @@ static void read_file_into_memory(char const* filename, fclose(f); } +static void count_progress(int percent, void* data) +{ + ++(*(int*)data); +} + static void test01(char const* infile, char const* password, char const* outfile, @@ -201,11 +206,15 @@ static void test05(char const* infile, char const* outfile, char const* outfile2) { + int count = 0; qpdf_read(qpdf, infile, password); qpdf_init_write(qpdf, outfile); + qpdf_register_progress_reporter(qpdf, count_progress, (void*)&count); qpdf_set_static_ID(qpdf, QPDF_TRUE); qpdf_set_linearization(qpdf, QPDF_TRUE); qpdf_write(qpdf); + /* make sure progress reporter was called */ + assert(count > 0); report_errors(); } diff --git a/qpdf/qpdf.testcov b/qpdf/qpdf.testcov index b974af6..e3f6b00 100644 --- a/qpdf/qpdf.testcov +++ b/qpdf/qpdf.testcov @@ -601,3 +601,4 @@ qpdf overlay page with no resources 0 QPDFObjectHandle check ownership 0 qpdf weak crypto warning 0 qpdf-c called qpdf_oh_is_initialized 0 +qpdf-c registered progress reporter 0