summaryrefslogtreecommitdiff
path: root/core/fpdfapi/parser/cpdf_object_unittest.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/fpdfapi/parser/cpdf_object_unittest.cpp')
-rw-r--r--core/fpdfapi/parser/cpdf_object_unittest.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/core/fpdfapi/parser/cpdf_object_unittest.cpp b/core/fpdfapi/parser/cpdf_object_unittest.cpp
index 24a989665f..7d474b2e7d 100644
--- a/core/fpdfapi/parser/cpdf_object_unittest.cpp
+++ b/core/fpdfapi/parser/cpdf_object_unittest.cpp
@@ -883,3 +883,13 @@ TEST(PDFDictionaryTest, ConvertIndirect) {
EXPECT_EQ(pObj, pNum);
EXPECT_EQ(42, dict->GetIntegerFor("clams"));
}
+
+TEST(PDFDictionaryTest, ExtractObjectOnRemove) {
+ auto dict = pdfium::MakeUnique<CPDF_Dictionary>();
+ CPDF_Object* pObj = dict->SetNewFor<CPDF_Number>("child", 42);
+ auto extracted_object = dict->RemoveFor("child");
+ EXPECT_EQ(pObj, extracted_object.get());
+
+ extracted_object = dict->RemoveFor("non_exists_object");
+ EXPECT_FALSE(extracted_object);
+}