vcl/qa/cppunit/pdfexport/data/tdf147164.odp |binary
 vcl/qa/cppunit/pdfexport/pdfexport.cxx      |   16 ++++++++++++++++
 2 files changed, 16 insertions(+)

New commits:
commit 846374f00e820323b4555c6438309f2c1a524d6f
Author:     Xisco Fauli <xiscofa...@libreoffice.org>
AuthorDate: Mon Feb 21 12:02:53 2022 +0100
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Mon Feb 21 15:55:33 2022 +0100

    tdf#147164: vcl_pdfexport: Add unittest
    
    Change-Id: I254e9d7fa3795ee56080b9f065ab5112677fb7d7
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130244
    Tested-by: Jenkins
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>

diff --git a/vcl/qa/cppunit/pdfexport/data/tdf147164.odp 
b/vcl/qa/cppunit/pdfexport/data/tdf147164.odp
new file mode 100644
index 000000000000..1b593348ead8
Binary files /dev/null and b/vcl/qa/cppunit/pdfexport/data/tdf147164.odp differ
diff --git a/vcl/qa/cppunit/pdfexport/pdfexport.cxx 
b/vcl/qa/cppunit/pdfexport/pdfexport.cxx
index 817f836cd260..750e3ca8ed76 100644
--- a/vcl/qa/cppunit/pdfexport/pdfexport.cxx
+++ b/vcl/qa/cppunit/pdfexport/pdfexport.cxx
@@ -1923,6 +1923,22 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest, testTdf147027)
     CPPUNIT_ASSERT_EQUAL(778, pPdfPage->getObjectCount());
 }
 
+CPPUNIT_TEST_FIXTURE(PdfExportTest, testTdf147164)
+{
+    aMediaDescriptor["FilterName"] <<= OUString("impress_pdf_Export");
+    saveAsPDF(u"tdf147164.odp");
+    std::unique_ptr<vcl::pdf::PDFiumDocument> pPdfDocument = parseExport();
+    CPPUNIT_ASSERT(pPdfDocument);
+    CPPUNIT_ASSERT_EQUAL(2, pPdfDocument->getPageCount());
+    std::unique_ptr<vcl::pdf::PDFiumPage> pPdfPage = 
pPdfDocument->openPage(/*nIndex=*/1);
+    CPPUNIT_ASSERT(pPdfPage);
+
+    // Without the fix in place, this test would have failed with
+    // - Expected: 22
+    // - Actual  : 16
+    CPPUNIT_ASSERT_EQUAL(22, pPdfPage->getObjectCount());
+}
+
 CPPUNIT_TEST_FIXTURE(PdfExportTest, testReduceImage)
 {
     // Load the Writer document.

Reply via email to