Improve test coverage for FPDFTextObj_GetFontSize(). Test one combination of parameters that no existing code exercises. Also convert the `page` variable used in the test to a ScopedFPDFPage. Change-Id: I93a7a82b292cac33dee75035db12e3c638047d36 Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/82590 Reviewed-by: Daniel Hosseinian <dhoss@chromium.org> Commit-Queue: Lei Zhang <thestig@chromium.org>
diff --git a/fpdfsdk/fpdf_edit_embeddertest.cpp b/fpdfsdk/fpdf_edit_embeddertest.cpp index 44f766e..97a52fd 100644 --- a/fpdfsdk/fpdf_edit_embeddertest.cpp +++ b/fpdfsdk/fpdf_edit_embeddertest.cpp
@@ -2232,7 +2232,7 @@ // Tests adding text from standard font using FPDFPageObj_NewTextObj. TEST_F(FPDFEditEmbedderTest, AddStandardFontText) { // Start with a blank page - FPDF_PAGE page = FPDFPage_New(CreateNewDocument(), 0, 612, 792); + ScopedFPDFPage page(FPDFPage_New(CreateNewDocument(), 0, 612, 792)); // Add some text to the page FPDF_PAGEOBJECT text_object1 = @@ -2242,10 +2242,10 @@ EXPECT_TRUE(FPDFText_SetText(text_object1, text1.get())); static constexpr FS_MATRIX kMatrix1{1, 0, 0, 1, 20, 20}; EXPECT_TRUE(FPDFPageObj_SetMatrix(text_object1, &kMatrix1)); - FPDFPage_InsertObject(page, text_object1); - EXPECT_TRUE(FPDFPage_GenerateContent(page)); + FPDFPage_InsertObject(page.get(), text_object1); + EXPECT_TRUE(FPDFPage_GenerateContent(page.get())); { - ScopedFPDFBitmap page_bitmap = RenderPage(page); + ScopedFPDFBitmap page_bitmap = RenderPage(page.get()); CompareBitmap(page_bitmap.get(), 612, 792, kBottomTextChecksum); EXPECT_TRUE(FPDF_SaveAsCopy(document(), this, 0)); @@ -2260,10 +2260,10 @@ GetFPDFWideString(L"Hi, I'm Bold. Times New Roman Bold."); EXPECT_TRUE(FPDFText_SetText(text_object2, text2.get())); FPDFPageObj_Transform(text_object2, 1, 0, 0, 1, 100, 600); - FPDFPage_InsertObject(page, text_object2); - EXPECT_TRUE(FPDFPage_GenerateContent(page)); + FPDFPage_InsertObject(page.get(), text_object2); + EXPECT_TRUE(FPDFPage_GenerateContent(page.get())); { - ScopedFPDFBitmap page_bitmap = RenderPage(page); + ScopedFPDFBitmap page_bitmap = RenderPage(page.get()); #if defined(_SKIA_SUPPORT_) || defined(_SKIA_SUPPORT_PATHS_) static constexpr char md5[] = "285cf09ca5600fc4ec061dc5ad5c6400"; #else @@ -2288,10 +2288,10 @@ ScopedFPDFWideString text3 = GetFPDFWideString(L"Can you read me? <:)>"); EXPECT_TRUE(FPDFText_SetText(text_object3, text3.get())); FPDFPageObj_Transform(text_object3, 1, 1.5, 2, 0.5, 200, 200); - FPDFPage_InsertObject(page, text_object3); - EXPECT_TRUE(FPDFPage_GenerateContent(page)); + FPDFPage_InsertObject(page.get(), text_object3); + EXPECT_TRUE(FPDFPage_GenerateContent(page.get())); { - ScopedFPDFBitmap page_bitmap = RenderPage(page); + ScopedFPDFBitmap page_bitmap = RenderPage(page.get()); #if defined(_SKIA_SUPPORT_) || defined(_SKIA_SUPPORT_PATHS_) #if defined(OS_WIN) static constexpr char md5[] = "03c4d98eae4fda51ca67743665ab61f4"; @@ -2323,13 +2323,14 @@ EXPECT_FLOAT_EQ(200.0f, matrix.f); EXPECT_FALSE(FPDFTextObj_GetFontSize(nullptr, nullptr)); - float size = 0; + float size = 55; + EXPECT_FALSE(FPDFTextObj_GetFontSize(nullptr, &size)); + EXPECT_EQ(55, size); EXPECT_TRUE(FPDFTextObj_GetFontSize(text_object3, &size)); EXPECT_EQ(20, size); // TODO(npm): Why are there issues with text rotated by 90 degrees? // TODO(npm): FPDF_SaveAsCopy not giving the desired result after this. - FPDF_ClosePage(page); } TEST_F(FPDFEditEmbedderTest, AddStandardFontTextOfSizeZero) {