diff options
Diffstat (limited to 'qpdf/test_driver.cc')
-rw-r--r-- | qpdf/test_driver.cc | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/qpdf/test_driver.cc b/qpdf/test_driver.cc index c0e29854..526b0123 100644 --- a/qpdf/test_driver.cc +++ b/qpdf/test_driver.cc @@ -1776,6 +1776,32 @@ void runtest(int n, char const* filename1, char const* arg2) assert("six" == oh.getStringValue()); assert(2 == offset); + auto new1 = QPDFNumberTreeObjectHelper::newEmpty(pdf); + auto iter1 = new1.begin(); + assert(iter1 == new1.end()); + ++iter1; + assert(iter1 == new1.end()); + --iter1; + assert(iter1 == new1.end()); + new1.insert(1, QPDFObjectHandle::newString("1")); + ++iter1; + assert((*iter1).first == 1); + --iter1; + assert(iter1 == new1.end()); + --iter1; + assert((*iter1).first == 1); + new1.insert(2, QPDFObjectHandle::newString("2")); + ++iter1; + assert((*iter1).first == 2); + ++iter1; + assert(iter1 == new1.end()); + ++iter1; + assert((*iter1).first == 1); + --iter1; + assert(iter1 == new1.end()); + --iter1; + assert((*iter1).first == 2); + // Exercise deprecated API until qpdf 11 std::cout << "/Bad1: deprecated API" << std::endl; auto bad1 = QPDFNumberTreeObjectHelper( @@ -1909,6 +1935,32 @@ void runtest(int n, char const* filename1, char const* arg2) assert((*last).first == "29 twenty-nine"); assert((*last).second.getUTF8Value() == "twenty-nine!"); + auto new1 = QPDFNameTreeObjectHelper::newEmpty(pdf); + auto iter1 = new1.begin(); + assert(iter1 == new1.end()); + ++iter1; + assert(iter1 == new1.end()); + --iter1; + assert(iter1 == new1.end()); + new1.insert("1", QPDFObjectHandle::newString("1")); + ++iter1; + assert((*iter1).first == "1"); + --iter1; + assert(iter1 == new1.end()); + --iter1; + assert((*iter1).first == "1"); + new1.insert("2", QPDFObjectHandle::newString("2")); + ++iter1; + assert((*iter1).first == "2"); + ++iter1; + assert(iter1 == new1.end()); + ++iter1; + assert((*iter1).first == "1"); + --iter1; + assert(iter1 == new1.end()); + --iter1; + assert((*iter1).first == "2"); + std::vector<std::string> empties = {"/Empty1", "/Empty2"}; for (auto const& k: empties) { |