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;
 }
 

Reply via email to