vcl/qa/cppunit/pdfexport/data/tdf152218.odt |binary
 vcl/qa/cppunit/pdfexport/pdfexport2.cxx     |   37 ++++++++++++++++++++++++++++
 2 files changed, 37 insertions(+)

New commits:
commit b60d2fd89e0a3e70022ee6bbd3380b0c100fd034
Author:     Xisco Fauli <[email protected]>
AuthorDate: Mon Feb 23 16:50:09 2026 +0100
Commit:     Xisco Fauli <[email protected]>
CommitDate: Mon Feb 23 20:55:10 2026 +0100

    tdf#160196: vcl_pdfexport2: Add test
    
    Change-Id: I803908a4d23d428d7a86475f209fc20d9b01d211
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200070
    Reviewed-by: Xisco Fauli <[email protected]>
    Tested-by: Jenkins

diff --git a/vcl/qa/cppunit/pdfexport/pdfexport2.cxx 
b/vcl/qa/cppunit/pdfexport/pdfexport2.cxx
index 0f2778054472..95c090ee3dfb 100644
--- a/vcl/qa/cppunit/pdfexport/pdfexport2.cxx
+++ b/vcl/qa/cppunit/pdfexport/pdfexport2.cxx
@@ -811,6 +811,30 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testVersion15)
     CPPUNIT_ASSERT_EQUAL(15, nFileVersion);
 }
 
+CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf160196)
+{
+    // Create an empty document.
+    mxComponent = loadFromDesktop("private:factory/swriter");
+
+    // Add a title to avoid
+    // The Metadata stream as specified in ISO 32000-2:2020,
+    // 14.3 in the document catalog dictionary shall contain a dc:title entry
+    uno::Reference<document::XDocumentPropertiesSupplier> 
xDocumentPropertiesSupplier(
+        mxComponent, uno::UNO_QUERY);
+    CPPUNIT_ASSERT(xDocumentPropertiesSupplier.is());
+    uno::Reference<document::XDocumentProperties> xDocumentProperties
+        = xDocumentPropertiesSupplier->getDocumentProperties();
+    xDocumentProperties->setTitle(u"Title"_ustr);
+
+    uno::Sequence<beans::PropertyValue> aFilterData(
+        comphelper::InitPropertySequence({ { "PDFUACompliance", uno::Any(true) 
},
+                                           { "SelectPdfVersion", 
uno::Any(sal_Int32(20)) } }));
+    comphelper::SequenceAsHashMap aMediaDescriptor;
+    aMediaDescriptor["FilterData"] <<= aFilterData;
+    // Without the fix in place, the validation would have failed
+    save(TestFilter::PDF_WRITER, 
aMediaDescriptor.getAsConstPropertyValueList());
+}
+
 CPPUNIT_TEST_FIXTURE(PdfExportTest2, testVersion20)
 {
     // Create an empty document.
commit e1159ba4feeda5615965847ae31d7faff4477532
Author:     Xisco Fauli <[email protected]>
AuthorDate: Mon Feb 23 14:04:55 2026 +0100
Commit:     Xisco Fauli <[email protected]>
CommitDate: Mon Feb 23 20:55:03 2026 +0100

    tdf#152218: vcl_pdfexport2: Add test
    
    Change-Id: I56d6f3ced197afbd104b6bb2428cb50b6dffc124
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200054
    Tested-by: Jenkins
    Reviewed-by: Xisco Fauli <[email protected]>

diff --git a/vcl/qa/cppunit/pdfexport/data/tdf152218.odt 
b/vcl/qa/cppunit/pdfexport/data/tdf152218.odt
new file mode 100644
index 000000000000..d1891c966333
Binary files /dev/null and b/vcl/qa/cppunit/pdfexport/data/tdf152218.odt differ
diff --git a/vcl/qa/cppunit/pdfexport/pdfexport2.cxx 
b/vcl/qa/cppunit/pdfexport/pdfexport2.cxx
index c3277eda75d7..0f2778054472 100644
--- a/vcl/qa/cppunit/pdfexport/pdfexport2.cxx
+++ b/vcl/qa/cppunit/pdfexport/pdfexport2.cxx
@@ -1712,6 +1712,19 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf157517)
     save(TestFilter::PDF_WRITER, 
aMediaDescriptor.getAsConstPropertyValueList());
 }
 
+CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf152218)
+{
+    uno::Sequence<beans::PropertyValue> 
aFilterData(comphelper::InitPropertySequence({
+        { "PDFUACompliance", uno::Any(true) },
+    }));
+    comphelper::SequenceAsHashMap aMediaDescriptor;
+    aMediaDescriptor[u"FilterData"_ustr] <<= aFilterData;
+    vcl::filter::PDFDocument aDocument;
+    loadFromFile(u"tdf152218.odt");
+    // Without the fix in place, the validation would have failed
+    save(TestFilter::PDF_WRITER, 
aMediaDescriptor.getAsConstPropertyValueList());
+}
+
 CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf152235)
 {
     // Enable PDF/UA

Reply via email to