sw/qa/extras/uiwriter/uiwriter8.cxx |    2 +-
 sw/qa/inc/swmodeltestbase.hxx       |   24 ++++++++++++------------
 sw/qa/unit/swmodeltestbase.cxx      |   34 +++++++++++++++++++++++++---------
 3 files changed, 38 insertions(+), 22 deletions(-)

New commits:
commit 6d37a3e40bd08ccb1edb778088c8a627e728ccc5
Author:     Xisco Fauli <xiscofa...@libreoffice.org>
AuthorDate: Fri Nov 11 12:21:15 2022 +0100
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Fri Nov 11 15:47:14 2022 +0100

    SwModelTestBase: Check supportsService
    
    Also simplify code a bit
    
    Change-Id: I93b277116cd21f9e7e058fdf31e0defab8247f13
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142581
    Tested-by: Jenkins
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>

diff --git a/sw/qa/extras/uiwriter/uiwriter8.cxx 
b/sw/qa/extras/uiwriter/uiwriter8.cxx
index c5634816ea27..014681eaac46 100644
--- a/sw/qa/extras/uiwriter/uiwriter8.cxx
+++ b/sw/qa/extras/uiwriter/uiwriter8.cxx
@@ -2333,7 +2333,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest8, testTdf128106)
 
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest8, testTdf103612)
 {
-    SwDoc* const pGlobalDoc = createSwDoc("DUMMY.odm");
+    SwDoc* const pGlobalDoc = createSwGlobalDoc("DUMMY.odm");
     CPPUNIT_ASSERT_EQUAL(
         size_t(1),
         
pGlobalDoc->getIDocumentLinksAdministration().GetLinkManager().GetLinks().size());
diff --git a/sw/qa/inc/swmodeltestbase.hxx b/sw/qa/inc/swmodeltestbase.hxx
index 24ab586544c8..87ae9b498ff1 100644
--- a/sw/qa/inc/swmodeltestbase.hxx
+++ b/sw/qa/inc/swmodeltestbase.hxx
@@ -298,21 +298,10 @@ protected:
 
     void load(const char* pName, const char* pPassword = nullptr)
     {
-        return 
loadURLWithComponent(createFileURL(OUString::createFromAscii(pName)),
-                                    "com.sun.star.text.TextDocument", pName, 
pPassword);
+        return loadURL(createFileURL(OUString::createFromAscii(pName)), pName, 
pPassword);
 
     }
 
-    void load_web(const char* pName, const char* pPassword = nullptr)
-    {
-        return 
loadURLWithComponent(createFileURL(OUString::createFromAscii(pName)),
-                                    "com.sun.star.text.WebDocument", pName, 
pPassword);
-    }
-
-    void setTestInteractionHandler(const char* pPassword, 
std::vector<beans::PropertyValue>& rFilterOptions);
-
-    void loadURLWithComponent(OUString const& rURL, OUString const& 
rComponent, const char* pName, const char* pPassword);
-
     void reload(const char* pFilter, const char* pName, 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.
@@ -358,6 +347,11 @@ protected:
      */
     SwDoc* createSwWebDoc(const char* pName = nullptr);
 
+    /**
+     * As createSwDoc except a Global Document
+     */
+    SwDoc* createSwGlobalDoc(const char* pName = nullptr);
+
     /**
      * Gets SwXTextDocument from loaded component
      */
@@ -375,6 +369,12 @@ protected:
     void WrapReqifFromTempFile(SvMemoryStream& rStream);
 
     bool isExported(){ return mbExported; }
+
+private:
+    void setTestInteractionHandler(const char* pPassword, 
std::vector<beans::PropertyValue>& rFilterOptions);
+
+    void loadURL(OUString const& rURL, const char* pName, const char* 
pPassword);
+
 };
 
 /**
diff --git a/sw/qa/unit/swmodeltestbase.cxx b/sw/qa/unit/swmodeltestbase.cxx
index d675c18c2617..b619b7e69779 100644
--- a/sw/qa/unit/swmodeltestbase.cxx
+++ b/sw/qa/unit/swmodeltestbase.cxx
@@ -462,8 +462,7 @@ void SwModelTestBase::setTestInteractionHandler(const char* 
pPassword,
 
 void SwModelTestBase::header() {}
 
-void SwModelTestBase::loadURLWithComponent(OUString const& rURL, OUString 
const& rComponent,
-                                           const char* pName, const char* 
pPassword)
+void SwModelTestBase::loadURL(OUString const& rURL, const char* pName, const 
char* pPassword)
 {
     if (mxComponent.is())
         mxComponent->dispose();
@@ -500,7 +499,7 @@ void SwModelTestBase::loadURLWithComponent(OUString const& 
rURL, OUString const&
     }
 
     mxComponent
-        = loadFromDesktop(rURL, rComponent, 
comphelper::containerToSequence(aFilterOptions));
+        = loadFromDesktop(rURL, OUString(), 
comphelper::containerToSequence(aFilterOptions));
 
     if (pPassword)
     {
@@ -517,7 +516,7 @@ void SwModelTestBase::reload(const char* pFilter, const 
char* pName, const char*
 {
     save(OUString::createFromAscii(pFilter), pName, pPassword);
 
-    loadURLWithComponent(maTempFile.GetURL(), 
"com.sun.star.text.TextDocument", pName, pPassword);
+    loadURL(maTempFile.GetURL(), pName, pPassword);
 }
 
 void SwModelTestBase::save(const OUString& aFilterName, const char* pName, 
const char* pPassword)
@@ -612,21 +611,38 @@ void 
SwModelTestBase::registerNamespaces(xmlXPathContextPtr& pXmlXpathCtx)
 SwDoc* SwModelTestBase::createSwDoc(const char* pName)
 {
     if (!pName)
-        loadURLWithComponent("private:factory/swriter", 
"com.sun.star.text.TextDocument", pName,
-                             nullptr);
+        loadURL("private:factory/swriter", pName, nullptr);
     else
         load(pName);
 
+    uno::Reference<lang::XServiceInfo> xServiceInfo(mxComponent, 
uno::UNO_QUERY);
+    
CPPUNIT_ASSERT(xServiceInfo->supportsService("com.sun.star.text.TextDocument"));
+
     return getSwDoc();
 }
 
 SwDoc* SwModelTestBase::createSwWebDoc(const char* pName)
 {
     if (!pName)
-        loadURLWithComponent("private:factory/swriter/web", 
"com.sun.star.text.TextDocument", pName,
-                             nullptr);
+        loadURL("private:factory/swriter/web", pName, nullptr);
+    else
+        load(pName);
+
+    uno::Reference<lang::XServiceInfo> xServiceInfo(mxComponent, 
uno::UNO_QUERY);
+    
CPPUNIT_ASSERT(xServiceInfo->supportsService("com.sun.star.text.WebDocument"));
+
+    return getSwDoc();
+}
+
+SwDoc* SwModelTestBase::createSwGlobalDoc(const char* pName)
+{
+    if (!pName)
+        loadURL("private:factory/swriter/GlobalDocument", pName, nullptr);
     else
-        load_web(pName);
+        load(pName);
+
+    uno::Reference<lang::XServiceInfo> xServiceInfo(mxComponent, 
uno::UNO_QUERY);
+    
CPPUNIT_ASSERT(xServiceInfo->supportsService("com.sun.star.text.GlobalDocument"));
 
     return getSwDoc();
 }

Reply via email to