diff options
author | Jay Berkenbilt <ejb@ql.org> | 2012-06-21 13:59:56 +0200 |
---|---|---|
committer | Jay Berkenbilt <ejb@ql.org> | 2012-06-21 14:00:35 +0200 |
commit | bc1c4bb57864c4dbe9b7e42a77e0653c0d473071 (patch) | |
tree | 1c4549bdeb5cbbe70aef0ad87ba3389565219d56 /qpdf | |
parent | ed6a56a3cdb7fcaa41d87bf90bc0b8c7ef0d761c (diff) | |
download | qpdf-bc1c4bb57864c4dbe9b7e42a77e0653c0d473071.tar.zst |
Add QPDF::processFile that takes an open FILE*
Diffstat (limited to 'qpdf')
-rw-r--r-- | qpdf/qpdf.testcov | 3 | ||||
-rw-r--r-- | qpdf/test_driver.cc | 20 |
2 files changed, 21 insertions, 2 deletions
diff --git a/qpdf/qpdf.testcov b/qpdf/qpdf.testcov index 51a5f6aa..8cfe81e4 100644 --- a/qpdf/qpdf.testcov +++ b/qpdf/qpdf.testcov @@ -200,3 +200,6 @@ qpdf-c set_info_key to null 0 qpdf-c set-info-key use existing info 0 qpdf-c add info to trailer 0 qpdf-c called qpdf_init_write_memory 0 +exercise processFile(name) 0 +exercise processFile(FILE*) 0 +exercise processMemoryFile 0 diff --git a/qpdf/test_driver.cc b/qpdf/test_driver.cc index ca2fc698..2dc41b41 100644 --- a/qpdf/test_driver.cc +++ b/qpdf/test_driver.cc @@ -60,17 +60,29 @@ void runtest(int n, char const* filename) { QPDF pdf; PointerHolder<char> file_buf; + FILE* filep = 0; if (n == 0) { pdf.setAttemptRecovery(false); } if (n % 2 == 0) { - pdf.processFile(filename); + if (n % 4 == 0) + { + QTC::TC("qpdf", "exercise processFile(name)"); + pdf.processFile(filename); + } + else + { + QTC::TC("qpdf", "exercise processFile(FILE*)"); + filep = QUtil::fopen_wrapper(std::string("open ") + filename, + fopen(filename, "rb")); + pdf.processFile(filep); + } } else { - // Exercise processMemoryFile + QTC::TC("qpdf", "exercise processMemoryFile"); FILE* f = QUtil::fopen_wrapper(std::string("open ") + filename, fopen(filename, "rb")); fseek(f, 0, SEEK_END); @@ -623,6 +635,10 @@ void runtest(int n, char const* filename) QUtil::int_to_string(n)); } + if (filep) + { + fclose(filep); + } std::cout << "test " << n << " done" << std::endl; } |