diff options
author | Caolán McNamara <caolanm@redhat.com> | 2022-03-25 14:01:47 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2022-03-30 14:52:20 +0200 |
commit | de78f7460483d6d25f14c168d9648174b2a4cc30 (patch) | |
tree | 200f87bdf4f0ea79f2d56b493cb37c9d4ff50656 /sw/qa | |
parent | 416cb37acae460b6ae8b175b5c5caf1601f030d4 (diff) |
add support to explicitly test swriter/sweb layout
Change-Id: Ib47526d35428a95b081c88011d733397339f288d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132121
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
(cherry picked from commit bd769805180c9b0aadca5301e29161c2d84fbe64)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132182
Diffstat (limited to 'sw/qa')
-rw-r--r-- | sw/qa/inc/swmodeltestbase.hxx | 17 | ||||
-rw-r--r-- | sw/qa/unit/swmodeltestbase.cxx | 24 |
2 files changed, 37 insertions, 4 deletions
diff --git a/sw/qa/inc/swmodeltestbase.hxx b/sw/qa/inc/swmodeltestbase.hxx index 65b673789a78..7a9ac5dcc8a2 100644 --- a/sw/qa/inc/swmodeltestbase.hxx +++ b/sw/qa/inc/swmodeltestbase.hxx @@ -325,11 +325,20 @@ protected: void load(std::u16string_view pDir, const char* pName, const char* pPassword = nullptr) { - return loadURL(m_directories.getURLFromSrc(pDir) + OUString::createFromAscii(pName), pName, pPassword); + return loadURLWithComponent(m_directories.getURLFromSrc(pDir) + OUString::createFromAscii(pName), + "com.sun.star.text.TextDocument", pName, pPassword); + } + + void load_web(std::u16string_view pDir, const char* pName, const char* pPassword = nullptr) + { + return loadURLWithComponent(m_directories.getURLFromSrc(pDir) + 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 loadURL(OUString const& rURL, const char* pName, const char* pPassword = nullptr); void reload(const char* pFilter, const char* filename, const char* pPassword = nullptr); @@ -384,6 +393,12 @@ protected: */ SwDoc* createSwDoc( std::u16string_view rDataDirectory = std::u16string_view(), const char* pName = nullptr); + + /** + * As createSwDoc except a Web Document in Browse Mode + */ + SwDoc* createSwWebDoc( + std::u16string_view rDataDirectory = std::u16string_view(), const char* pName = nullptr); }; /** diff --git a/sw/qa/unit/swmodeltestbase.cxx b/sw/qa/unit/swmodeltestbase.cxx index ee35a1cc7259..709a7a1a4de1 100644 --- a/sw/qa/unit/swmodeltestbase.cxx +++ b/sw/qa/unit/swmodeltestbase.cxx @@ -478,7 +478,8 @@ void SwModelTestBase::setTestInteractionHandler(const char* pPassword, void SwModelTestBase::header() {} -void SwModelTestBase::loadURL(OUString const& rURL, const char* pName, const char* pPassword) +void SwModelTestBase::loadURLWithComponent(OUString const& rURL, OUString const& rComponent, + const char* pName, const char* pPassword) { if (mxComponent.is()) mxComponent->dispose(); @@ -510,8 +511,8 @@ void SwModelTestBase::loadURL(OUString const& rURL, const char* pName, const cha if (pName) std::cout << pName << ":\n"; mnStartTime = osl_getGlobalTimer(); - mxComponent = loadFromDesktop(rURL, "com.sun.star.text.TextDocument", - comphelper::containerToSequence(aFilterOptions)); + mxComponent + = loadFromDesktop(rURL, rComponent, comphelper::containerToSequence(aFilterOptions)); if (pPassword) { @@ -524,6 +525,11 @@ void SwModelTestBase::loadURL(OUString const& rURL, const char* pName, const cha calcLayout(); } +void SwModelTestBase::loadURL(OUString const& rURL, const char* pName, const char* pPassword) +{ + loadURLWithComponent(rURL, "com.sun.star.text.TextDocument", pName, pPassword); +} + void SwModelTestBase::reload(const char* pFilter, const char* filename, const char* pPassword) { uno::Reference<frame::XStorable> xStorable(mxComponent, uno::UNO_QUERY); @@ -727,4 +733,16 @@ SwDoc* SwModelTestBase::createSwDoc(std::u16string_view rDataDirectory, const ch return pTextDoc->GetDocShell()->GetDoc(); } +SwDoc* SwModelTestBase::createSwWebDoc(std::u16string_view rDataDirectory, const char* pName) +{ + if (rDataDirectory.empty() || !pName) + loadURL("private:factory/swriter/web", nullptr); + else + load_web(rDataDirectory, pName); + + SwXTextDocument* pTextDoc = dynamic_cast<SwXTextDocument*>(mxComponent.get()); + CPPUNIT_ASSERT(pTextDoc); + return pTextDoc->GetDocShell()->GetDoc(); +} + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |