sw/qa/inc/swmodeltestbase.hxx | 2 - sw/qa/unit/swmodeltestbase.cxx | 77 +++++++++++++++++------------------------ 2 files changed, 34 insertions(+), 45 deletions(-)
New commits: commit 5d26b851f27a55cd8cb34973b0ad8d7a3801af7e Author: Xisco Fauli <xiscofa...@libreoffice.org> AuthorDate: Tue Nov 8 14:53:58 2022 +0100 Commit: Xisco Fauli <xiscofa...@libreoffice.org> CommitDate: Tue Nov 8 17:26:15 2022 +0100 swmodeltestbase: remove duplicated code Change-Id: Icc577cc50248cc8310262a09af5769faea1662b8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142460 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org> diff --git a/sw/qa/inc/swmodeltestbase.hxx b/sw/qa/inc/swmodeltestbase.hxx index b5577fa52cac..c8d5e0006b1a 100644 --- a/sw/qa/inc/swmodeltestbase.hxx +++ b/sw/qa/inc/swmodeltestbase.hxx @@ -340,7 +340,7 @@ protected: void reload(const char* pFilter, const char* filename, const char* pPassword = nullptr); /// Save the loaded document to a tempfile. Can be used to check the resulting docx/odt directly as a ZIP file. - void save(const OUString& aFilterName); + void save(const OUString& aFilterName, const char* filename = nullptr, const char* pPassword = nullptr); /// Combines load() and save(). void loadAndSave(const char* pName); diff --git a/sw/qa/unit/swmodeltestbase.cxx b/sw/qa/unit/swmodeltestbase.cxx index da7c61274f1c..e341d5038821 100644 --- a/sw/qa/unit/swmodeltestbase.cxx +++ b/sw/qa/unit/swmodeltestbase.cxx @@ -541,32 +541,8 @@ void SwModelTestBase::loadURL(OUString const& rURL, const char* pName, const cha void SwModelTestBase::reload(const char* pFilter, const char* filename, const char* pPassword) { - uno::Reference<frame::XStorable> xStorable(mxComponent, uno::UNO_QUERY); - OUString aFilterName = OUString::createFromAscii(pFilter); - utl::MediaDescriptor aMediaDescriptor; - aMediaDescriptor["FilterName"] <<= aFilterName; - if (!maFilterOptions.isEmpty()) - aMediaDescriptor["FilterOptions"] <<= maFilterOptions; - if (pPassword) - { - if (strcmp(pFilter, "Office Open XML Text")) - { - aMediaDescriptor["Password"] <<= OUString::createFromAscii(pPassword); - } - else - { - OUString sPassword = OUString::createFromAscii(pPassword); - css::uno::Sequence<css::beans::NamedValue> aEncryptionData{ - { "CryptoType", css::uno::Any(OUString("Standard")) }, - { "OOXPassword", css::uno::Any(sPassword) } - }; - aMediaDescriptor[utl::MediaDescriptor::PROP_ENCRYPTIONDATA] <<= aEncryptionData; - } - } - xStorable->storeToURL(maTempFile.GetURL(), aMediaDescriptor.getAsConstPropertyValueList()); - uno::Reference<lang::XComponent> xComponent(xStorable, uno::UNO_QUERY); - xComponent->dispose(); - mbExported = true; + save(OUString::createFromAscii(pFilter), filename, pPassword); + mxComponent->dispose(); std::vector<beans::PropertyValue> aFilterOptions; if (pPassword) @@ -597,6 +573,37 @@ void SwModelTestBase::reload(const char* pFilter, const char* filename, const ch CPPUNIT_ASSERT_MESSAGE("Password set but not requested", xInteractionHandler->wasPasswordRequested()); } + discardDumpedLayout(); + if (mustCalcLayoutOf(filename)) + calcLayout(); +} + +void SwModelTestBase::save(const OUString& aFilterName, const char* filename, const char* pPassword) +{ + uno::Reference<frame::XStorable> xStorable(mxComponent, uno::UNO_QUERY); + utl::MediaDescriptor aMediaDescriptor; + aMediaDescriptor["FilterName"] <<= aFilterName; + if (!maFilterOptions.isEmpty()) + aMediaDescriptor["FilterOptions"] <<= maFilterOptions; + if (pPassword) + { + if (aFilterName != "Office Open XML Text") + { + aMediaDescriptor["Password"] <<= OUString::createFromAscii(pPassword); + } + else + { + OUString sPassword = OUString::createFromAscii(pPassword); + css::uno::Sequence<css::beans::NamedValue> aEncryptionData{ + { "CryptoType", css::uno::Any(OUString("Standard")) }, + { "OOXPassword", css::uno::Any(sPassword) } + }; + aMediaDescriptor[utl::MediaDescriptor::PROP_ENCRYPTIONDATA] <<= aEncryptionData; + } + } + xStorable->storeToURL(maTempFile.GetURL(), aMediaDescriptor.getAsConstPropertyValueList()); + + // TODO: for now, validate only ODF here if (mustValidate(filename) || aFilterName == "writer8" || aFilterName == "OpenDocument Text Flat XML") { @@ -621,24 +628,6 @@ void SwModelTestBase::reload(const char* pFilter, const char* filename, const ch CPPUNIT_FAIL(aMessage.getStr()); } } - discardDumpedLayout(); - if (mustCalcLayoutOf(filename)) - calcLayout(); -} - -void SwModelTestBase::save(const OUString& aFilterName) -{ - uno::Reference<frame::XStorable> xStorable(mxComponent, uno::UNO_QUERY); - utl::MediaDescriptor aMediaDescriptor; - aMediaDescriptor["FilterName"] <<= aFilterName; - if (!maFilterOptions.isEmpty()) - aMediaDescriptor["FilterOptions"] <<= maFilterOptions; - xStorable->storeToURL(maTempFile.GetURL(), aMediaDescriptor.getAsConstPropertyValueList()); - // TODO: for now, validate only ODF here - if (aFilterName == "writer8" || aFilterName == "OpenDocument Text Flat XML") - { - validate(maTempFile.GetFileName(), test::ODF); - } mbExported = true; }