UnoApiTest: merge save and saveWithParams into one
it allows to simplify the code a bit since the TestFilter is passed as the first parameter. In preparation for a follow-up commit Change-Id: I316c88e1583dc7d9b04876883b971bdfa54e8967 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198588 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
This commit is contained in:
@@ -58,10 +58,7 @@ CPPUNIT_TEST_FIXTURE(SvgFilterTest, testPreserveJpg)
|
||||
dispatchCommand(mxComponent, u".uno:JumpToNextFrame"_ustr, {});
|
||||
|
||||
// Export the selection to SVG.
|
||||
saveWithParams({
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"writer_svg_Export"_ustr),
|
||||
comphelper::makePropertyValue(u"SelectionOnly"_ustr, true),
|
||||
});
|
||||
save(TestFilter::SVG_WRITER, { comphelper::makePropertyValue(u"SelectionOnly"_ustr, true) });
|
||||
|
||||
// Make sure that the original JPG data is reused and we don't perform a PNG re-compress.
|
||||
xmlDocUniquePtr pXmlDoc = parseExportedFile();
|
||||
@@ -402,10 +399,8 @@ CPPUNIT_TEST_FIXTURE(SvgFilterTest, testTdf168054_export_two_pages_to_svg_using_
|
||||
loadFromFile(u"tdf168054.odg");
|
||||
|
||||
// Emulate --convert-to svg:"draw_svg_Export"
|
||||
saveWithParams({
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"draw_svg_Export"_ustr),
|
||||
comphelper::makePropertyValue(u"ConversionRequestOrigin"_ustr, u"CommandLine"_ustr),
|
||||
});
|
||||
save(TestFilter::SVG_DRAW,
|
||||
{ comphelper::makePropertyValue(u"ConversionRequestOrigin"_ustr, u"CommandLine"_ustr) });
|
||||
|
||||
xmlDocUniquePtr pXmlDoc = parseExportedFile();
|
||||
CPPUNIT_ASSERT(pXmlDoc);
|
||||
|
||||
@@ -57,6 +57,7 @@ enum class TestFilter
|
||||
RTF,
|
||||
SVG_DRAW,
|
||||
SVG_IMPRESS,
|
||||
SVG_WRITER,
|
||||
TEXT,
|
||||
TEXT_ENCODED,
|
||||
XHTML_CALC,
|
||||
@@ -102,6 +103,7 @@ const std::unordered_map<TestFilter, OUString> TestFilterNames{
|
||||
{ TestFilter::RTF, u"Rich Text Format"_ustr },
|
||||
{ TestFilter::SVG_DRAW, u"draw_svg_Export"_ustr },
|
||||
{ TestFilter::SVG_IMPRESS, u"impress_svg_Export"_ustr },
|
||||
{ TestFilter::SVG_WRITER, u"writer_svg_Export"_ustr },
|
||||
{ TestFilter::TEXT, u"Text"_ustr },
|
||||
{ TestFilter::TEXT_ENCODED, u"Text (encoded)"_ustr },
|
||||
{ TestFilter::XHTML_CALC, u"XHTML Calc File"_ustr },
|
||||
@@ -134,8 +136,8 @@ public:
|
||||
css::uno::Any executeMacro(const OUString& rScriptURL,
|
||||
const css::uno::Sequence<css::uno::Any>& rParams = {});
|
||||
|
||||
void save(TestFilter eFilter, const char* pPassword = nullptr);
|
||||
void saveWithParams(const css::uno::Sequence<css::beans::PropertyValue>& rParams);
|
||||
void save(TestFilter eFilter, const css::uno::Sequence<css::beans::PropertyValue>& rParams = {},
|
||||
const char* pPassword = nullptr);
|
||||
void saveAndReload(TestFilter eFilter, const char* pPassword = nullptr);
|
||||
|
||||
std::unique_ptr<vcl::pdf::PDFiumDocument> parsePDFExport(const OString& rPassword = OString());
|
||||
|
||||
@@ -893,7 +893,7 @@ CPPUNIT_TEST_FIXTURE(ScExportTest2, testOpenDocumentAsReadOnly)
|
||||
ScDocShell* pDocSh = getScDocShell();
|
||||
CPPUNIT_ASSERT(pDocSh->IsSecurityOptOpenReadOnly());
|
||||
|
||||
saveWithParams(uno::Sequence<beans::PropertyValue>());
|
||||
save(TestFilter::XLSX);
|
||||
loadWithParams(maTempFile.GetURL(), aParams);
|
||||
|
||||
pDocSh = getScDocShell();
|
||||
|
||||
@@ -348,10 +348,9 @@ CPPUNIT_TEST_FIXTURE(Test, testContentControlPDFComments)
|
||||
comphelper::makePropertyValue(u"ExportNotes"_ustr, false),
|
||||
comphelper::makePropertyValue(u"ExportNotesInMargin"_ustr, true),
|
||||
};
|
||||
saveWithParams({
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"writer_pdf_Export"_ustr),
|
||||
comphelper::makePropertyValue(u"FilterData"_ustr, aFilterData),
|
||||
});
|
||||
save(TestFilter::PDF_WRITER, {
|
||||
comphelper::makePropertyValue(u"FilterData"_ustr, aFilterData),
|
||||
});
|
||||
|
||||
// Then make sure the only widget for the content control has a correct position:
|
||||
std::unique_ptr<vcl::pdf::PDFiumDocument> pPdfDocument = parsePDFExport();
|
||||
|
||||
@@ -565,11 +565,10 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testReqIfPngImg)
|
||||
ImportFromReqif(createFileURL(u"reqif-png-img.xhtml"));
|
||||
verify(/*bExported=*/false);
|
||||
uno::Sequence<beans::PropertyValue> aStoreProperties = {
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"ExportImagesAsOLE"_ustr, true),
|
||||
};
|
||||
saveWithParams(aStoreProperties);
|
||||
save(TestFilter::HTML_WRITER, aStoreProperties);
|
||||
ImportFromReqif(maTempFile.GetURL());
|
||||
verify(/*bExported=*/true);
|
||||
}
|
||||
@@ -800,11 +799,10 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testTransparentImageReqIf)
|
||||
{
|
||||
createSwDoc("transparent-image.odt");
|
||||
uno::Sequence<beans::PropertyValue> aStoreProperties = {
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"ExportImagesAsOLE"_ustr, true),
|
||||
};
|
||||
saveWithParams(aStoreProperties);
|
||||
save(TestFilter::HTML_WRITER, aStoreProperties);
|
||||
xmlDocUniquePtr pDoc = WrapReqifFromTempFile();
|
||||
|
||||
OUString aSource = getXPath(
|
||||
@@ -935,11 +933,10 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testRTFOLEMimeType)
|
||||
|
||||
// Export it.
|
||||
uno::Sequence<beans::PropertyValue> aStoreProperties = {
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"RTFOLEMimeType"_ustr, aType),
|
||||
};
|
||||
saveWithParams(aStoreProperties);
|
||||
save(TestFilter::HTML_WRITER, aStoreProperties);
|
||||
xmlDocUniquePtr pDoc = WrapReqifFromTempFile();
|
||||
|
||||
// Without the accompanying fix in place, this test would have failed with:
|
||||
@@ -1114,11 +1111,10 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testReqifOle1PaintBitmapFormat)
|
||||
|
||||
// When exporting to reqif-xhtml with ExportImagesAsOLE enabled:
|
||||
uno::Sequence<beans::PropertyValue> aStoreProperties = {
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"ExportImagesAsOLE"_ustr, true),
|
||||
};
|
||||
saveWithParams(aStoreProperties);
|
||||
save(TestFilter::HTML_WRITER, aStoreProperties);
|
||||
|
||||
// Then make sure the resulting bitmap is 24bpp:
|
||||
OUString aRtfUrl = GetOlePath();
|
||||
@@ -1455,11 +1451,10 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testReqifImageToOle)
|
||||
|
||||
// When exporting to XHTML:
|
||||
uno::Sequence<beans::PropertyValue> aStoreProperties = {
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"ExportImagesAsOLE"_ustr, true),
|
||||
};
|
||||
saveWithParams(aStoreProperties);
|
||||
save(TestFilter::HTML_WRITER, aStoreProperties);
|
||||
|
||||
// Then make sure we export that PNG as WMF in ReqIF mode:
|
||||
OUString aRtfUrl = GetOlePath();
|
||||
|
||||
@@ -48,11 +48,10 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testReqifEmbedPNGShapeAsOLE)
|
||||
|
||||
// When exporting to XHTML:
|
||||
uno::Sequence<beans::PropertyValue> aStoreProperties = {
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"ExportImagesAsOLE"_ustr, true),
|
||||
};
|
||||
saveWithParams(aStoreProperties);
|
||||
save(TestFilter::HTML_WRITER, aStoreProperties);
|
||||
|
||||
// Then make sure the PNG is embedded with an RTF wrapper:
|
||||
xmlDocUniquePtr pXmlDoc = WrapReqifFromTempFile();
|
||||
@@ -166,11 +165,10 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testReqifEmbedShapeAsPNGCustomDPI)
|
||||
|
||||
// When exporting to XHTML:
|
||||
uno::Sequence<beans::PropertyValue> aStoreProperties = {
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"ShapeDPI"_ustr, nDPI),
|
||||
};
|
||||
saveWithParams(aStoreProperties);
|
||||
save(TestFilter::HTML_WRITER, aStoreProperties);
|
||||
|
||||
// Then make sure the shape is embedded as a PNG:
|
||||
xmlDocUniquePtr pXmlDoc = WrapReqifFromTempFile();
|
||||
@@ -207,11 +205,10 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testReqifOleBmpTransparent)
|
||||
|
||||
// When exporting to reqif with ExportImagesAsOLE=true:
|
||||
uno::Sequence<beans::PropertyValue> aStoreProperties = {
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"ExportImagesAsOLE"_ustr, true),
|
||||
};
|
||||
saveWithParams(aStoreProperties);
|
||||
save(TestFilter::HTML_WRITER, aStoreProperties);
|
||||
|
||||
// Then make sure the transparent pixel turns into white:
|
||||
SvMemoryStream aOle1;
|
||||
@@ -410,11 +407,10 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testLeadingTab)
|
||||
|
||||
// When exporting to HTML, using LeadingTabWidth=2:
|
||||
uno::Sequence<beans::PropertyValue> aStoreProperties = {
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"LeadingTabWidth"_ustr, static_cast<sal_Int32>(2)),
|
||||
};
|
||||
saveWithParams(aStoreProperties);
|
||||
save(TestFilter::HTML_WRITER, aStoreProperties);
|
||||
|
||||
// Then make sure that leading tabs are replaced with 2 nbsps:
|
||||
xmlDocUniquePtr pXmlDoc = WrapReqifFromTempFile();
|
||||
@@ -438,10 +434,9 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testLeadingTabHTML)
|
||||
|
||||
// When exporting to plain HTML, using LeadingTabWidth=2:
|
||||
uno::Sequence<beans::PropertyValue> aStoreProperties = {
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"LeadingTabWidth"_ustr, static_cast<sal_Int32>(2)),
|
||||
};
|
||||
saveWithParams(aStoreProperties);
|
||||
save(TestFilter::HTML_WRITER, aStoreProperties);
|
||||
|
||||
// Then make sure that leading tabs are replaced with 2 nbsps:
|
||||
htmlDocUniquePtr pHtmlDoc = parseHtml(maTempFile);
|
||||
@@ -820,12 +815,11 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testSingleOleExport)
|
||||
|
||||
// Store only the selection
|
||||
css::uno::Sequence<css::beans::PropertyValue> aStoreProperties = {
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"RTFOLEMimeType"_ustr, u"text/rtf"_ustr),
|
||||
comphelper::makePropertyValue(u"SelectionOnly"_ustr, true),
|
||||
};
|
||||
saveWithParams(aStoreProperties);
|
||||
save(TestFilter::HTML_WRITER, aStoreProperties);
|
||||
|
||||
xmlDocUniquePtr pXmlDoc = WrapReqifFromTempFile();
|
||||
|
||||
@@ -967,10 +961,9 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testHTML_PreserveSpaces)
|
||||
pWrtShell->Insert(paraText);
|
||||
|
||||
// When exporting to plain HTML, using PreserveSpaces:
|
||||
saveWithParams({
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"PreserveSpaces"_ustr, true),
|
||||
});
|
||||
save(TestFilter::HTML_WRITER, {
|
||||
comphelper::makePropertyValue(u"PreserveSpaces"_ustr, true),
|
||||
});
|
||||
|
||||
// Then make sure that "white-space: pre-wrap" is written into the paragraph's style:
|
||||
htmlDocUniquePtr pHtmlDoc = parseHtml(maTempFile);
|
||||
@@ -996,11 +989,11 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testReqIF_PreserveSpaces)
|
||||
pWrtShell->Insert(paraText);
|
||||
|
||||
// When exporting to ReqIF, using PreserveSpaces:
|
||||
saveWithParams({
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"PreserveSpaces"_ustr, true),
|
||||
});
|
||||
save(TestFilter::HTML_WRITER,
|
||||
{
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"PreserveSpaces"_ustr, true),
|
||||
});
|
||||
|
||||
// Then make sure that xml:space="preserve" attribute exists in the paragraph element:
|
||||
xmlDocUniquePtr pXmlDoc = WrapReqifFromTempFile();
|
||||
@@ -1043,10 +1036,9 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testHTML_NoPreserveSpaces)
|
||||
createSwDoc("test_no_space_preserve.fodt");
|
||||
|
||||
// Export to plain HTML, using PreserveSpaces:
|
||||
saveWithParams({
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"PreserveSpaces"_ustr, true),
|
||||
});
|
||||
save(TestFilter::HTML_WRITER, {
|
||||
comphelper::makePropertyValue(u"PreserveSpaces"_ustr, true),
|
||||
});
|
||||
|
||||
htmlDocUniquePtr pHtmlDoc = parseHtml(maTempFile);
|
||||
CPPUNIT_ASSERT(pHtmlDoc);
|
||||
@@ -1102,11 +1094,11 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testReqIF_NoPreserveSpaces)
|
||||
createSwDoc("test_no_space_preserve.fodt");
|
||||
|
||||
// Export to ReqIF, using PreserveSpaces:
|
||||
saveWithParams({
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"PreserveSpaces"_ustr, true),
|
||||
});
|
||||
save(TestFilter::HTML_WRITER,
|
||||
{
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"PreserveSpaces"_ustr, true),
|
||||
});
|
||||
|
||||
xmlDocUniquePtr pXmlDoc = WrapReqifFromTempFile();
|
||||
|
||||
@@ -1166,11 +1158,10 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testReqIF_ExportFormulasAsPDF)
|
||||
|
||||
// When exporting to reqif with ExportFormulasAsPDF=true:
|
||||
uno::Sequence<beans::PropertyValue> aStoreProperties = {
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"ExportFormulasAsPDF"_ustr, true),
|
||||
};
|
||||
saveWithParams(aStoreProperties);
|
||||
save(TestFilter::HTML_WRITER, aStoreProperties);
|
||||
|
||||
// Make sure that the formula is exported as PDF:
|
||||
xmlDocUniquePtr pXmlDoc = WrapReqifFromTempFile();
|
||||
@@ -1332,12 +1323,12 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testReqIF_exportAbsoluteURLs_ownRelati
|
||||
|
||||
createSwDoc("URLs.odt");
|
||||
// Export to ReqIF, using absolute URLs
|
||||
saveWithParams({
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"ExportImagesAsOLE"_ustr, true),
|
||||
comphelper::makePropertyValue(u"RelativeOwnObjectURL"_ustr, true),
|
||||
});
|
||||
save(TestFilter::HTML_WRITER,
|
||||
{
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"ExportImagesAsOLE"_ustr, true),
|
||||
comphelper::makePropertyValue(u"RelativeOwnObjectURL"_ustr, true),
|
||||
});
|
||||
xmlDocUniquePtr pXmlDoc = WrapReqifFromTempFile();
|
||||
|
||||
// HTTP URL: must be absolute
|
||||
@@ -1386,11 +1377,11 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testReqIF_exportRelativeURLs)
|
||||
|
||||
createSwDoc("URLs.odt");
|
||||
// Export to ReqIF, using relative URLs (the default)
|
||||
saveWithParams({
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"ExportImagesAsOLE"_ustr, true),
|
||||
});
|
||||
save(TestFilter::HTML_WRITER,
|
||||
{
|
||||
comphelper::makePropertyValue(u"FilterOptions"_ustr, u"xhtmlns=reqif-xhtml"_ustr),
|
||||
comphelper::makePropertyValue(u"ExportImagesAsOLE"_ustr, true),
|
||||
});
|
||||
xmlDocUniquePtr pXmlDoc = WrapReqifFromTempFile();
|
||||
|
||||
// HTTP URL: must be absolute
|
||||
@@ -1443,10 +1434,10 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testHTML_exportAbsoluteURLs_ownRelativ
|
||||
|
||||
createSwDoc("URLs.odt");
|
||||
// Export to HTML, using absolute URLs
|
||||
saveWithParams({
|
||||
comphelper::makePropertyValue(u"FilterName"_ustr, u"HTML (StarWriter)"_ustr),
|
||||
comphelper::makePropertyValue(u"RelativeOwnObjectURL"_ustr, true),
|
||||
});
|
||||
save(TestFilter::HTML_WRITER,
|
||||
{
|
||||
comphelper::makePropertyValue(u"RelativeOwnObjectURL"_ustr, true),
|
||||
});
|
||||
htmlDocUniquePtr pHtmlDoc = parseHtml(maTempFile);
|
||||
|
||||
// HTTP URL: must be absolute
|
||||
|
||||
@@ -386,7 +386,7 @@ void SwModelTestBase::loadURL(OUString const& rURL, const char* pPassword)
|
||||
|
||||
void SwModelTestBase::saveAndReload(TestFilter eFilter, const char* pPassword)
|
||||
{
|
||||
save(eFilter, pPassword);
|
||||
save(eFilter, /*rParams*/ {}, pPassword);
|
||||
|
||||
loadURL(maTempFile.GetURL(), pPassword);
|
||||
}
|
||||
|
||||
@@ -150,11 +150,15 @@ uno::Any UnoApiTest::executeMacro(const OUString& rScriptURL,
|
||||
return aRet;
|
||||
}
|
||||
|
||||
void UnoApiTest::save(TestFilter eFilter, const char* pPassword)
|
||||
void UnoApiTest::save(TestFilter eFilter, const uno::Sequence<beans::PropertyValue>& rParams,
|
||||
const char* pPassword)
|
||||
{
|
||||
OUString aFilter(TestFilterNames.at(eFilter));
|
||||
comphelper::SequenceAsHashMap aMediaDescriptor;
|
||||
aMediaDescriptor[u"FilterName"_ustr] <<= aFilter;
|
||||
|
||||
if (rParams.hasElements())
|
||||
aMediaDescriptor.update(rParams);
|
||||
if (!maFilterOptions.isEmpty())
|
||||
aMediaDescriptor[u"FilterOptions"_ustr] <<= maFilterOptions;
|
||||
|
||||
@@ -179,26 +183,16 @@ void UnoApiTest::save(TestFilter eFilter, const char* pPassword)
|
||||
skipValidation();
|
||||
}
|
||||
|
||||
saveWithParams(aMediaDescriptor.getAsConstPropertyValueList());
|
||||
}
|
||||
|
||||
void UnoApiTest::saveWithParams(const uno::Sequence<beans::PropertyValue>& rParams)
|
||||
{
|
||||
css::uno::Reference<frame::XStorable> xStorable(mxComponent, css::uno::UNO_QUERY_THROW);
|
||||
xStorable->storeToURL(maTempFile.GetURL(), rParams);
|
||||
xStorable->storeToURL(maTempFile.GetURL(), aMediaDescriptor.getAsConstPropertyValueList());
|
||||
|
||||
if (!mbSkipValidation)
|
||||
{
|
||||
::comphelper::SequenceAsHashMap aParamsHash(rParams);
|
||||
OUString aFilterName;
|
||||
aParamsHash.getValue(u"FilterName"_ustr) >>= aFilterName;
|
||||
validate(maTempFile.GetFileName(), aFilterName);
|
||||
}
|
||||
validate(maTempFile.GetFileName(), aFilter);
|
||||
}
|
||||
|
||||
void UnoApiTest::saveAndReload(TestFilter eFilter, const char* pPassword)
|
||||
{
|
||||
save(eFilter, pPassword);
|
||||
save(eFilter, /*rParams*/ {}, pPassword);
|
||||
loadFromURL(maTempFile.GetURL(), pPassword);
|
||||
}
|
||||
|
||||
|
||||
@@ -69,8 +69,7 @@ void PdfExportTest::saveAsPDF(std::u16string_view rFile)
|
||||
{
|
||||
// Import the bugdoc and export as PDF.
|
||||
loadFromFile(rFile);
|
||||
aMediaDescriptor[u"FilterName"_ustr] <<= u"writer_pdf_Export"_ustr;
|
||||
saveWithParams(aMediaDescriptor.getAsConstPropertyValueList());
|
||||
save(TestFilter::PDF_WRITER, aMediaDescriptor.getAsConstPropertyValueList());
|
||||
}
|
||||
|
||||
void PdfExportTest::load(std::u16string_view rFile, vcl::filter::PDFDocument& rDocument)
|
||||
|
||||
@@ -76,8 +76,7 @@ void PdfExportTest2::saveAsPDF(std::u16string_view rFile)
|
||||
{
|
||||
// Import the bugdoc and export as PDF.
|
||||
loadFromFile(rFile);
|
||||
aMediaDescriptor[u"FilterName"_ustr] <<= u"writer_pdf_Export"_ustr;
|
||||
saveWithParams(aMediaDescriptor.getAsConstPropertyValueList());
|
||||
save(TestFilter::PDF_WRITER, aMediaDescriptor.getAsConstPropertyValueList());
|
||||
}
|
||||
|
||||
void PdfExportTest2::load(std::u16string_view rFile, vcl::filter::PDFDocument& rDocument)
|
||||
@@ -707,8 +706,7 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testPdfImageResourceInlineXObjectRef)
|
||||
xText->insertTextContent(xCursor->getStart(), xTextContent, /*bAbsorb=*/false);
|
||||
|
||||
// Save as PDF.
|
||||
aMediaDescriptor[u"FilterName"_ustr] <<= u"writer_pdf_Export"_ustr;
|
||||
saveWithParams(aMediaDescriptor.getAsConstPropertyValueList());
|
||||
save(TestFilter::PDF_WRITER);
|
||||
|
||||
// Parse the export result.
|
||||
std::unique_ptr<vcl::pdf::PDFiumDocument> pPdfDocument = parsePDFExport();
|
||||
@@ -757,8 +755,7 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testDefaultVersion)
|
||||
loadFromURL(u"private:factory/swriter"_ustr);
|
||||
|
||||
// Save as PDF.
|
||||
aMediaDescriptor[u"FilterName"_ustr] <<= u"writer_pdf_Export"_ustr;
|
||||
saveWithParams(aMediaDescriptor.getAsConstPropertyValueList());
|
||||
save(TestFilter::PDF_WRITER);
|
||||
|
||||
// Parse the export result.
|
||||
std::unique_ptr<vcl::pdf::PDFiumDocument> pPdfDocument = parsePDFExport();
|
||||
@@ -774,9 +771,8 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testVersion15)
|
||||
// Save as PDF.
|
||||
uno::Sequence<beans::PropertyValue> aFilterData(comphelper::InitPropertySequence(
|
||||
{ { "SelectPdfVersion", uno::Any(static_cast<sal_Int32>(15)) } }));
|
||||
aMediaDescriptor[u"FilterName"_ustr] <<= u"writer_pdf_Export"_ustr;
|
||||
aMediaDescriptor[u"FilterData"_ustr] <<= aFilterData;
|
||||
saveWithParams(aMediaDescriptor.getAsConstPropertyValueList());
|
||||
save(TestFilter::PDF_WRITER, aMediaDescriptor.getAsConstPropertyValueList());
|
||||
|
||||
// Parse the export result.
|
||||
std::unique_ptr<vcl::pdf::PDFiumDocument> pPdfDocument = parsePDFExport();
|
||||
@@ -790,12 +786,10 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testVersion20)
|
||||
mxComponent = loadFromDesktop("private:factory/swriter");
|
||||
|
||||
// Save as PDF.
|
||||
uno::Reference<frame::XStorable> xStorable(mxComponent, uno::UNO_QUERY);
|
||||
uno::Sequence<beans::PropertyValue> aFilterData = comphelper::InitPropertySequence(
|
||||
{ { "SelectPdfVersion", uno::Any(static_cast<sal_Int32>(20)) } });
|
||||
aMediaDescriptor["FilterName"] <<= OUString("writer_pdf_Export");
|
||||
aMediaDescriptor["FilterData"] <<= aFilterData;
|
||||
xStorable->storeToURL(maTempFile.GetURL(), aMediaDescriptor.getAsConstPropertyValueList());
|
||||
save(TestFilter::PDF_WRITER, aMediaDescriptor.getAsConstPropertyValueList());
|
||||
|
||||
// Parse the export result.
|
||||
std::unique_ptr<vcl::pdf::PDFiumDocument> pPdfDocument = parsePDFExport();
|
||||
@@ -1618,7 +1612,6 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf152231)
|
||||
|
||||
CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf152235)
|
||||
{
|
||||
aMediaDescriptor[u"FilterName"_ustr] <<= u"writer_pdf_Export"_ustr;
|
||||
// Enable PDF/UA
|
||||
uno::Sequence<beans::PropertyValue> aFilterData(comphelper::InitPropertySequence(
|
||||
{ { "PDFUACompliance", uno::Any(true) },
|
||||
@@ -1628,7 +1621,7 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf152235)
|
||||
{ "SelectPdfVersion", uno::Any(sal_Int32(17)) } }));
|
||||
aMediaDescriptor[u"FilterData"_ustr] <<= aFilterData;
|
||||
loadFromURL(u"private:factory/swriter"_ustr);
|
||||
saveWithParams(aMediaDescriptor.getAsConstPropertyValueList());
|
||||
save(TestFilter::PDF_WRITER, aMediaDescriptor.getAsConstPropertyValueList());
|
||||
|
||||
vcl::filter::PDFDocument aDocument;
|
||||
SvFileStream aStream(maTempFile.GetURL(), StreamMode::READ);
|
||||
@@ -3992,13 +3985,11 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf142129)
|
||||
// update linked section
|
||||
dispatchCommand(mxComponent, u".uno:UpdateAllLinks"_ustr, {});
|
||||
|
||||
aMediaDescriptor[u"FilterName"_ustr] <<= u"writer_pdf_Export"_ustr;
|
||||
|
||||
// Enable Outlines export
|
||||
uno::Sequence<beans::PropertyValue> aFilterData(
|
||||
comphelper::InitPropertySequence({ { "ExportBookmarks", uno::Any(true) } }));
|
||||
aMediaDescriptor[u"FilterData"_ustr] <<= aFilterData;
|
||||
saveWithParams(aMediaDescriptor.getAsConstPropertyValueList());
|
||||
save(TestFilter::PDF_WRITER, aMediaDescriptor.getAsConstPropertyValueList());
|
||||
|
||||
// Parse the export result.
|
||||
vcl::filter::PDFDocument aDocument;
|
||||
@@ -4089,8 +4080,7 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testPdfImageRotate180)
|
||||
xText->insertTextContent(xCursor->getStart(), xTextContent, /*bAbsorb=*/false);
|
||||
|
||||
// Save as PDF.
|
||||
aMediaDescriptor[u"FilterName"_ustr] <<= u"writer_pdf_Export"_ustr;
|
||||
saveWithParams(aMediaDescriptor.getAsConstPropertyValueList());
|
||||
save(TestFilter::PDF_WRITER);
|
||||
|
||||
// Parse the export result.
|
||||
std::unique_ptr<vcl::pdf::PDFiumDocument> pPdfDocument = parsePDFExport();
|
||||
@@ -4334,8 +4324,7 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testURIs)
|
||||
xCursorProps->setPropertyValue(u"HyperLinkName"_ustr, uno::Any(u"Testname"_ustr));
|
||||
|
||||
// Save as PDF.
|
||||
aMediaDescriptor[u"FilterName"_ustr] <<= u"writer_pdf_Export"_ustr;
|
||||
saveWithParams(aMediaDescriptor.getAsConstPropertyValueList());
|
||||
save(TestFilter::PDF_WRITER, aMediaDescriptor.getAsConstPropertyValueList());
|
||||
|
||||
// Use the filter rather than the pdfium route, as per the tdf105093 test, it's
|
||||
// easier to parse the annotations
|
||||
@@ -4415,13 +4404,12 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testPdfImageEncryption)
|
||||
xText->insertTextContent(xCursor->getStart(), xTextContent, /*bAbsorb=*/false);
|
||||
|
||||
// When saving as encrypted PDF:
|
||||
aMediaDescriptor[u"FilterName"_ustr] <<= u"writer_pdf_Export"_ustr;
|
||||
uno::Sequence<beans::PropertyValue> aFilterData = {
|
||||
comphelper::makePropertyValue(u"EncryptFile"_ustr, true),
|
||||
comphelper::makePropertyValue(u"DocumentOpenPassword"_ustr, u"secret"_ustr),
|
||||
};
|
||||
aMediaDescriptor[u"FilterData"_ustr] <<= aFilterData;
|
||||
saveWithParams(aMediaDescriptor.getAsConstPropertyValueList());
|
||||
save(TestFilter::PDF_WRITER, aMediaDescriptor.getAsConstPropertyValueList());
|
||||
|
||||
// Then make sure that the image is not lost:
|
||||
std::unique_ptr<vcl::pdf::PDFiumDocument> pPdfDocument = parsePDFExport("secret"_ostr);
|
||||
@@ -4971,8 +4959,7 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf113866)
|
||||
rDocAccess.setPrintData(aDocPrintData);
|
||||
|
||||
// Export to pdf
|
||||
aMediaDescriptor[u"FilterName"_ustr] <<= u"writer_pdf_Export"_ustr;
|
||||
saveWithParams(aMediaDescriptor.getAsConstPropertyValueList());
|
||||
save(TestFilter::PDF_WRITER);
|
||||
|
||||
// Parse the export result with pdfium.
|
||||
std::unique_ptr<vcl::pdf::PDFiumDocument> pPdfDocument = parsePDFExport();
|
||||
@@ -6175,7 +6162,6 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testPDFAttachmentsWithEncryptedFile)
|
||||
// Encrypt the document and use the hybrid mode.
|
||||
// The original ODF document will be saved to the PDF as an attachment.
|
||||
|
||||
aMediaDescriptor["FilterName"] <<= OUString("writer_pdf_Export");
|
||||
uno::Sequence<beans::PropertyValue> aFilterData
|
||||
= { comphelper::makePropertyValue("IsAddStream", true),
|
||||
comphelper::makePropertyValue("EncryptFile", true),
|
||||
|
||||
Reference in New Issue
Block a user