sw/CppunitTest_sw_uiwriter7.mk      |   14 
 sw/Module_sw.mk                     |    1 
 sw/qa/extras/uiwriter/uiwriter.cxx  | 2612 ---------------------------------
 sw/qa/extras/uiwriter/uiwriter7.cxx | 2777 ++++++++++++++++++++++++++++++++++++
 4 files changed, 2793 insertions(+), 2611 deletions(-)

New commits:
commit 31eca81bd03f012f0581480dd6f581a0185e3ff5
Author:     Xisco Fauli <[email protected]>
AuthorDate: Tue Mar 15 18:20:52 2022 +0100
Commit:     Xisco Fauli <[email protected]>
CommitDate: Tue Mar 15 23:23:53 2022 +0100

    sw: split CppunitTest_sw_uiwriter into uiwriter and uiwriter7
    
    Similar to a2a2e07996a0e49164663eaec5d79481bf7bb3e0
    "sw: split CppunitTest_sw_uiwriter2 into uiwriter2 and uiwriter5"
    
    it already had 117 tests
    
    Change-Id: I6bcdcd672c655b853f8f366db3b78d3da49f9078
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131635
    Tested-by: Jenkins
    Reviewed-by: Xisco Fauli <[email protected]>

diff --git a/sw/CppunitTest_sw_uiwriter7.mk b/sw/CppunitTest_sw_uiwriter7.mk
new file mode 100644
index 000000000000..0bfd3a3528ce
--- /dev/null
+++ b/sw/CppunitTest_sw_uiwriter7.mk
@@ -0,0 +1,14 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#*************************************************************************
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+#*************************************************************************
+
+$(eval $(call sw_uiwriter_test,7))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sw/Module_sw.mk b/sw/Module_sw.mk
index d64de370ea74..fd5b7024cc50 100644
--- a/sw/Module_sw.mk
+++ b/sw/Module_sw.mk
@@ -113,6 +113,7 @@ $(eval $(call gb_Module_add_slowcheck_targets,sw,\
     CppunitTest_sw_uiwriter4 \
     CppunitTest_sw_uiwriter5 \
     CppunitTest_sw_uiwriter6 \
+    CppunitTest_sw_uiwriter7 \
     CppunitTest_sw_layoutwriter \
     CppunitTest_sw_layoutwriter2 \
     CppunitTest_sw_mailmerge \
diff --git a/sw/qa/extras/uiwriter/uiwriter.cxx 
b/sw/qa/extras/uiwriter/uiwriter.cxx
index 0d872d4e958f..d6d486919bcf 100644
--- a/sw/qa/extras/uiwriter/uiwriter.cxx
+++ b/sw/qa/extras/uiwriter/uiwriter.cxx
@@ -30,10 +30,7 @@
 #include <unotools/streamwrap.hxx>
 #include <unocrsrhelper.hxx>
 #include <unotbl.hxx>
-#include <PostItMgr.hxx>
-#include <AnnotationWin.hxx>
 #include <com/sun/star/text/XDefaultNumberingProvider.hpp>
-#include <com/sun/star/awt/FontUnderline.hpp>
 #include <vcl/TypeSerializer.hxx>
 
 #include <svx/svdpage.hxx>
@@ -42,81 +39,30 @@
 
 #include <editeng/eeitem.hxx>
 #include <editeng/scripttypeitem.hxx>
-#include <i18nutil/searchopt.hxx>
-#include <txtftn.hxx>
 #include <IDocumentDrawModelAccess.hxx>
-#include <IDocumentFieldsAccess.hxx>
 #include <IDocumentRedlineAccess.hxx>
-#include <IDocumentState.hxx>
-#include <unofldmid.h>
 #include <UndoManager.hxx>
-#include <textsh.hxx>
 #include <frmatr.hxx>
 #include <frmmgr.hxx>
 
-#include <com/sun/star/util/XNumberFormatTypes.hpp>
-#include <com/sun/star/util/NumberFormat.hpp>
-#include <com/sun/star/util/XNumberFormatsSupplier.hpp>
-#include <com/sun/star/util/SearchAlgorithms2.hpp>
-#include <com/sun/star/util/SearchFlags.hpp>
-#include <com/sun/star/sdb/DatabaseContext.hpp>
-#include <com/sun/star/sdbcx/XTablesSupplier.hpp>
-#include <com/sun/star/sdbc/XDataSource.hpp>
-#include <com/sun/star/text/XParagraphCursor.hpp>
-#include <com/sun/star/util/XPropertyReplace.hpp>
-#include <com/sun/star/beans/PropertyAttribute.hpp>
-#include <com/sun/star/text/XTextField.hpp>
 #include <com/sun/star/text/TextMarkupType.hpp>
-#include <com/sun/star/chart2/data/XDataSource.hpp>
-#include <com/sun/star/document/XEmbeddedObjectSupplier2.hpp>
 #include <osl/file.hxx>
-#include <drawfont.hxx>
-#include <txtfrm.hxx>
-#include <txttypes.hxx>
-#include <SwPortionHandler.hxx>
 #include <comphelper/propertysequence.hxx>
-#include <LibreOfficeKit/LibreOfficeKitEnums.h>
-#include <sfx2/docfilt.hxx>
 #include <sfx2/viewfrm.hxx>
 #include <sfx2/dispatch.hxx>
-#include <comphelper/configuration.hxx>
 #include <vcl/scheduler.hxx>
-#include <config_features.h>
-#include <config_fonts.h>
 #include <sfx2/watermarkitem.hxx>
-#include <sfx2/fcontnr.hxx>
 #include <sfx2/docfile.hxx>
 #include <fmthdft.hxx>
 #include <iodetect.hxx>
-#include <frameformats.hxx>
-#include <unotxdoc.hxx>
 #include <comphelper/processfactory.hxx>
+#include <unotxdoc.hxx>
 #include <rootfrm.hxx>
-#include <officecfg/Office/Writer.hxx>
 
 namespace
 {
 constexpr OUStringLiteral DATA_DIRECTORY = u"/sw/qa/extras/uiwriter/data/";
 
-int CountFilesInDirectory(const OUString &rURL)
-{
-    int nRet = 0;
-
-    osl::Directory aDir(rURL);
-    CPPUNIT_ASSERT_EQUAL(osl::FileBase::E_None, aDir.open());
-
-    osl::DirectoryItem aItem;
-    osl::FileStatus 
aFileStatus(osl_FileStatus_Mask_FileURL|osl_FileStatus_Mask_Type);
-    while (aDir.getNextItem(aItem) == osl::FileBase::E_None)
-    {
-        aItem.getFileStatus(aFileStatus);
-        if (aFileStatus.getFileType() != osl::FileStatus::Directory)
-            ++nRet;
-    }
-
-    return nRet;
-}
-
 void lcl_selectCharacters(SwPaM& rPaM, sal_Int32 first, sal_Int32 end)
 {
     rPaM.GetPoint()->nContent.Assign(rPaM.GetContentNode(), first);
@@ -1730,2562 +1676,6 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf81995)
     }
 }
 
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testExportToPicture)
-{
-    createSwDoc();
-    uno::Sequence<beans::PropertyValue> aFilterData( 
comphelper::InitPropertySequence({
-        { "PixelWidth", uno::Any(sal_Int32(610)) },
-        { "PixelHeight", uno::Any(sal_Int32(610)) }
-    }));
-    uno::Sequence<beans::PropertyValue> aDescriptor( 
comphelper::InitPropertySequence({
-        { "FilterName", uno::Any(OUString("writer_png_Export")) },
-        { "FilterData", uno::Any(aFilterData) }
-    }));
-    utl::TempFile aTempFile;
-    uno::Reference<frame::XStorable> xStorable(mxComponent, uno::UNO_QUERY);
-    xStorable->storeToURL(aTempFile.GetURL(), aDescriptor);
-    bool extchk = aTempFile.IsValid();
-    CPPUNIT_ASSERT_EQUAL(true, extchk);
-    osl::File tmpFile(aTempFile.GetURL());
-    tmpFile.open(sal_uInt32(osl_File_OpenFlag_Read));
-    sal_uInt64 val;
-    CPPUNIT_ASSERT_EQUAL(osl::FileBase::E_None, tmpFile.getSize(val));
-    CPPUNIT_ASSERT(val > 100);
-    aTempFile.EnableKillingFile();
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf77340)
-{
-    createSwDoc();
-    //Getting some paragraph style in our document
-    uno::Reference<css::lang::XMultiServiceFactory> xFactory(mxComponent, 
uno::UNO_QUERY);
-    uno::Reference<style::XStyle> 
xStyle(xFactory->createInstance("com.sun.star.style.ParagraphStyle"), 
uno::UNO_QUERY);
-    uno::Reference<beans::XPropertySet> xPropSet(xStyle, uno::UNO_QUERY_THROW);
-    xPropSet->setPropertyValue("ParaBackColor", 
uno::makeAny(sal_Int32(0xFF00FF)));
-    uno::Reference<style::XStyleFamiliesSupplier> xSupplier(mxComponent, 
uno::UNO_QUERY);
-    uno::Reference<container::XNameAccess> 
xNameAccess(xSupplier->getStyleFamilies());
-    uno::Reference<container::XNameContainer> xNameCont;
-    xNameAccess->getByName("ParagraphStyles") >>= xNameCont;
-    xNameCont->insertByName("myStyle", uno::makeAny(xStyle));
-    CPPUNIT_ASSERT_EQUAL(OUString("myStyle"), xStyle->getName());
-    //Setting the properties with proper values
-    xPropSet->setPropertyValue("PageDescName", uno::makeAny(OUString("First 
Page")));
-    xPropSet->setPropertyValue("PageNumberOffset", uno::makeAny(sal_Int16(3)));
-    //Getting the properties and checking that they have proper values
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(OUString("First Page")), 
xPropSet->getPropertyValue("PageDescName"));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_Int16(3)), 
xPropSet->getPropertyValue("PageNumberOffset"));
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf79236)
-{
-    SwDoc* pDoc = createSwDoc();
-    sw::UndoManager& rUndoManager = pDoc->GetUndoManager();
-    //Getting some paragraph style
-    SwTextFormatColl* pTextFormat = pDoc->FindTextFormatCollByName(u"Text 
Body");
-    const SwAttrSet& rAttrSet = pTextFormat->GetAttrSet();
-    std::unique_ptr<SfxItemSet> pNewSet = rAttrSet.Clone();
-    sal_uInt16 initialCount = pNewSet->Count();
-    SvxAdjustItem AdjustItem = rAttrSet.GetAdjust();
-    SvxAdjust initialAdjust = AdjustItem.GetAdjust();
-    //By default the adjust is LEFT
-    CPPUNIT_ASSERT_EQUAL(SvxAdjust::Left, initialAdjust);
-    //Changing the adjust to RIGHT
-    AdjustItem.SetAdjust(SvxAdjust::Right);
-    //Checking whether the change is made or not
-    SvxAdjust modifiedAdjust = AdjustItem.GetAdjust();
-    CPPUNIT_ASSERT_EQUAL(SvxAdjust::Right, modifiedAdjust);
-    //Modifying the itemset, putting *one* item
-    pNewSet->Put(AdjustItem);
-    //The count should increment by 1
-    sal_uInt16 modifiedCount = pNewSet->Count();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(initialCount + 1), modifiedCount);
-    //Setting the updated item set on the style
-    pDoc->ChgFormat(*pTextFormat, *pNewSet);
-    //Checking the Changes
-    SwTextFormatColl* pTextFormat2 = pDoc->FindTextFormatCollByName(u"Text 
Body");
-    const SwAttrSet& rAttrSet2 = pTextFormat2->GetAttrSet();
-    const SvxAdjustItem& rAdjustItem2 = rAttrSet2.GetAdjust();
-    SvxAdjust Adjust2 = rAdjustItem2.GetAdjust();
-    //The adjust should be RIGHT as per the modifications made
-    CPPUNIT_ASSERT_EQUAL(SvxAdjust::Right, Adjust2);
-    //Undo the changes
-    rUndoManager.Undo();
-    SwTextFormatColl* pTextFormat3 = pDoc->FindTextFormatCollByName(u"Text 
Body");
-    const SwAttrSet& rAttrSet3 = pTextFormat3->GetAttrSet();
-    const SvxAdjustItem& rAdjustItem3 = rAttrSet3.GetAdjust();
-    SvxAdjust Adjust3 = rAdjustItem3.GetAdjust();
-    //The adjust should be back to default, LEFT
-    CPPUNIT_ASSERT_EQUAL(SvxAdjust::Left, Adjust3);
-    //Redo the changes
-    rUndoManager.Redo();
-    SwTextFormatColl* pTextFormat4 = pDoc->FindTextFormatCollByName(u"Text 
Body");
-    const SwAttrSet& rAttrSet4 = pTextFormat4->GetAttrSet();
-    const SvxAdjustItem& rAdjustItem4 = rAttrSet4.GetAdjust();
-    SvxAdjust Adjust4 = rAdjustItem4.GetAdjust();
-    //The adjust should be RIGHT as per the modifications made
-    CPPUNIT_ASSERT_EQUAL(SvxAdjust::Right, Adjust4);
-    //Undo the changes
-    rUndoManager.Undo();
-    SwTextFormatColl* pTextFormat5 = pDoc->FindTextFormatCollByName(u"Text 
Body");
-    const SwAttrSet& rAttrSet5 = pTextFormat5->GetAttrSet();
-    const SvxAdjustItem& rAdjustItem5 = rAttrSet5.GetAdjust();
-    SvxAdjust Adjust5 = rAdjustItem5.GetAdjust();
-    //The adjust should be back to default, LEFT
-    CPPUNIT_ASSERT_EQUAL(SvxAdjust::Left, Adjust5);
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTextSearch)
-{
-    // Create a new empty Writer document
-    SwDoc* pDoc = createSwDoc();
-    SwPaM* pCursor = pDoc->GetEditShell()->GetCursor();
-    IDocumentContentOperations & rIDCO(pDoc->getIDocumentContentOperations());
-    // Insert some text
-    rIDCO.InsertString(*pCursor, "Hello World This is a test");
-    // Use cursor to select part of text
-    for (int i = 0; i < 10; i++) {
-        pCursor->Move(fnMoveBackward);
-    }
-    pCursor->SetMark();
-    for(int i = 0; i < 4; i++) {
-        pCursor->Move(fnMoveBackward);
-    }
-    //Checking that the proper selection is made
-    CPPUNIT_ASSERT_EQUAL(OUString("This"), pCursor->GetText());
-    // Apply a "Bold" attribute to selection
-    SvxWeightItem aWeightItem(WEIGHT_BOLD, RES_CHRATR_WEIGHT);
-    rIDCO.InsertPoolItem(*pCursor, aWeightItem);
-    //making another selection of text
-    for (int i = 0; i < 7; i++) {
-        pCursor->Move(fnMoveBackward);
-    }
-    pCursor->SetMark();
-    for(int i = 0; i < 5; i++) {
-        pCursor->Move(fnMoveBackward);
-    }
-    //Checking that the proper selection is made
-    CPPUNIT_ASSERT_EQUAL(OUString("Hello"), pCursor->GetText());
-    // Apply a "Bold" attribute to selection
-    rIDCO.InsertPoolItem(*pCursor, aWeightItem);
-    //Performing Search Operation and also covering the UNO coverage for 
setProperty
-    uno::Reference<util::XSearchable> xSearch(mxComponent, uno::UNO_QUERY);
-    uno::Reference<util::XSearchDescriptor> xSearchDes = 
xSearch->createSearchDescriptor();
-    uno::Reference<util::XPropertyReplace> xProp(xSearchDes, uno::UNO_QUERY);
-    //setting some properties
-    uno::Sequence<beans::PropertyValue> aDescriptor( 
comphelper::InitPropertySequence({
-        { "CharWeight", uno::Any(float(css::awt::FontWeight::BOLD)) }
-    }));
-    xProp->setSearchAttributes(aDescriptor);
-    //receiving the defined properties and asserting them with expected 
values, covering UNO
-    uno::Sequence<beans::PropertyValue> 
aPropVal2(xProp->getSearchAttributes());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), aPropVal2.getLength());
-    CPPUNIT_ASSERT_EQUAL(OUString("CharWeight"), aPropVal2[0].Name);
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(float(css::awt::FontWeight::BOLD)), 
aPropVal2[0].Value);
-    //specifying the search attributes
-    uno::Reference<beans::XPropertySet> xPropSet(xSearchDes, 
uno::UNO_QUERY_THROW);
-    xPropSet->setPropertyValue("SearchWords", uno::makeAny(true));
-    xPropSet->setPropertyValue("SearchCaseSensitive", uno::makeAny(true));
-    //this will search all the BOLD words
-    uno::Reference<container::XIndexAccess> 
xIndex(xSearch->findAll(xSearchDes));
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xIndex->getCount());
-    //Replacing the searched string via XReplaceable
-    uno::Reference<util::XReplaceable> xReplace(mxComponent, uno::UNO_QUERY);
-    uno::Reference<util::XReplaceDescriptor> xReplaceDes = 
xReplace->createReplaceDescriptor();
-    uno::Reference<util::XPropertyReplace> xProp2(xReplaceDes, uno::UNO_QUERY);
-    xProp2->setReplaceAttributes(aDescriptor);
-    //checking that the proper attributes are there or not
-    uno::Sequence<beans::PropertyValue> 
aRepProp(xProp2->getReplaceAttributes());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), aRepProp.getLength());
-    CPPUNIT_ASSERT_EQUAL(OUString("CharWeight"), aRepProp[0].Name);
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(float(css::awt::FontWeight::BOLD)), 
aRepProp[0].Value);
-    //setting strings for replacement
-    xReplaceDes->setSearchString("test");
-    xReplaceDes->setReplaceString("task");
-    //checking the replaceString
-    CPPUNIT_ASSERT_EQUAL(OUString("task"), xReplaceDes->getReplaceString());
-    //this will replace *normal*test to *bold*task
-    sal_Int32 ReplaceCount = xReplace->replaceAll(xReplaceDes);
-    //There should be only 1 replacement since there is only one occurrence of 
"test" in the document
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), ReplaceCount);
-    //Now performing search again for BOLD words, count should be 3 due to 
replacement
-    uno::Reference<container::XIndexAccess> 
xIndex2(xReplace->findAll(xSearchDes));
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(3), xIndex2->getCount());
-    // regex tests
-    xSearchDes->setPropertyValue("SearchRegularExpression", 
uno::makeAny(true));
-    // regex: test correct matching combined with attributes like BOLD
-    xSearchDes->setSearchString(".*"); // should match all bold words in the 
text
-    xIndex.set(xReplace->findAll(xSearchDes), uno::UNO_SET_THROW);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(3), xIndex->getCount());
-    uno::Reference<text::XTextRange> xFound(xIndex->getByIndex(0), 
uno::UNO_QUERY_THROW);
-    CPPUNIT_ASSERT_EQUAL(OUString("Hello"), xFound->getString());
-    xFound.set(xIndex->getByIndex(1), uno::UNO_QUERY_THROW);
-    CPPUNIT_ASSERT_EQUAL(OUString("This"), xFound->getString());
-    xFound.set(xIndex->getByIndex(2), uno::UNO_QUERY_THROW);
-    CPPUNIT_ASSERT_EQUAL(OUString("task"), xFound->getString());
-    // regex: test anchor combined with attributes like BOLD
-    xSearchDes->setSearchString("^.*|.*$"); // should match first and last 
words (they are bold)
-    xIndex.set(xReplace->findAll(xSearchDes), uno::UNO_SET_THROW);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xIndex->getCount());
-    xFound.set(xIndex->getByIndex(0), uno::UNO_QUERY_THROW);
-    CPPUNIT_ASSERT_EQUAL(OUString("Hello"), xFound->getString());
-    xFound.set(xIndex->getByIndex(1), uno::UNO_QUERY_THROW);
-    CPPUNIT_ASSERT_EQUAL(OUString("task"), xFound->getString());
-    // regex: test look-ahead/look-behind assertions outside of the bold text
-    xSearchDes->setSearchString("(?<= ).*(?= )"); // should match second bold 
word
-    xIndex.set(xReplace->findAll(xSearchDes), uno::UNO_SET_THROW);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xIndex->getCount());
-    xFound.set(xIndex->getByIndex(0), uno::UNO_QUERY_THROW);
-    CPPUNIT_ASSERT_EQUAL(OUString("This"), xFound->getString());
-    xReplaceDes->setPropertyValue("SearchRegularExpression", 
uno::makeAny(true));
-    // regex: test correct match of paragraph start
-    xReplaceDes->setSearchString("^."); // should only match first character 
of the paragraph
-    xReplaceDes->setReplaceString("C");
-    ReplaceCount = xReplace->replaceAll(xReplaceDes);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), ReplaceCount);
-    // regex: test correct match of word start
-    xReplaceDes->setSearchString("\\b\\w"); // should match all words' first 
characters
-    xReplaceDes->setReplaceString("x&");
-    ReplaceCount = xReplace->replaceAll(xReplaceDes);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(6), ReplaceCount);
-    // regex: test negative look-behind assertion
-    xReplaceDes->setSearchString("(?<!xCelly xW)o"); // only "o" in "xCello", 
not in "xWorld"
-    xReplaceDes->setReplaceString("y");
-    ReplaceCount = xReplace->replaceAll(xReplaceDes);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), ReplaceCount);
-    // regex: test positive look-behind assertion
-    xReplaceDes->setSearchString("(?<=xCelly xWorld xTh)i"); // only "i" in 
"xThis", not in "xis"
-    xReplaceDes->setReplaceString("z");
-    ReplaceCount = xReplace->replaceAll(xReplaceDes);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), ReplaceCount);
-    // regex: use capturing group to test reference
-    xReplaceDes->setSearchString("\\b(\\w\\w\\w\\w)\\w");
-    xReplaceDes->setReplaceString("$1q"); // only fifth characters in words 
should change
-    ReplaceCount = xReplace->replaceAll(xReplaceDes);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(4), ReplaceCount);
-    // check of the end result
-    CPPUNIT_ASSERT_EQUAL(OUString("xCelqy xWorqd xThzq xis xa xtasq"),
-                         pCursor->GetNode().GetTextNode()->GetText());
-    // regex: use positive look-ahead assertion
-    xReplaceDes->setSearchString("Wor(?=qd xThzq xis xa xtasq)");
-    xReplaceDes->setReplaceString("&p"); // testing & reference
-    ReplaceCount = xReplace->replaceAll(xReplaceDes);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), ReplaceCount);
-    // regex: use negative look-ahead assertion
-    xReplaceDes->setSearchString("x(?!Worpqd xThzq xis xa xtasq)");
-    xReplaceDes->setReplaceString("m");
-    ReplaceCount = xReplace->replaceAll(xReplaceDes);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(5), ReplaceCount); // one of the 6 "x" must 
not be replaced
-    // check of the end result
-    CPPUNIT_ASSERT_EQUAL(OUString("mCelqy xWorpqd mThzq mis ma mtasq"),
-                         pCursor->GetNode().GetTextNode()->GetText());
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf69282)
-{
-    SwDoc* source = createSwDoc();
-    uno::Reference<lang::XComponent> xSourceDoc = mxComponent;
-    mxComponent.clear();
-    SwDoc* target = createSwDoc();
-    SwPageDesc* sPageDesc = source->MakePageDesc("SourceStyle");
-    SwPageDesc* tPageDesc = target->MakePageDesc("TargetStyle");
-    sPageDesc->ChgFirstShare(false);
-    CPPUNIT_ASSERT(!sPageDesc->IsFirstShared());
-    SwFrameFormat& rSourceMasterFormat = sPageDesc->GetMaster();
-    //Setting horizontal spaces on master
-    SvxLRSpaceItem horizontalSpace(RES_LR_SPACE);
-    horizontalSpace.SetLeft(11);
-    horizontalSpace.SetRight(12);
-    rSourceMasterFormat.SetFormatAttr(horizontalSpace);
-    //Setting vertical spaces on master
-    SvxULSpaceItem verticalSpace(RES_UL_SPACE);
-    verticalSpace.SetUpper(13);
-    verticalSpace.SetLower(14);
-    rSourceMasterFormat.SetFormatAttr(verticalSpace);
-    //Changing the style and copying it to target
-    source->ChgPageDesc("SourceStyle", *sPageDesc);
-    target->CopyPageDesc(*sPageDesc, *tPageDesc);
-    //Checking the set values on all Formats in target
-    SwFrameFormat& rTargetMasterFormat = tPageDesc->GetMaster();
-    SwFrameFormat& rTargetLeftFormat = tPageDesc->GetLeft();
-    SwFrameFormat& rTargetFirstMasterFormat = tPageDesc->GetFirstMaster();
-    SwFrameFormat& rTargetFirstLeftFormat = tPageDesc->GetFirstLeft();
-    //Checking horizontal spaces
-    const SvxLRSpaceItem MasterLRSpace = rTargetMasterFormat.GetLRSpace();
-    CPPUNIT_ASSERT_EQUAL(horizontalSpace.GetLeft(), MasterLRSpace.GetLeft());
-    CPPUNIT_ASSERT_EQUAL(horizontalSpace.GetRight(), MasterLRSpace.GetRight());
-    const SvxLRSpaceItem LeftLRSpace = rTargetLeftFormat.GetLRSpace();
-    CPPUNIT_ASSERT_EQUAL(horizontalSpace.GetLeft(), LeftLRSpace.GetLeft());
-    CPPUNIT_ASSERT_EQUAL(horizontalSpace.GetRight(), LeftLRSpace.GetRight());
-    const SvxLRSpaceItem FirstMasterLRSpace = 
rTargetFirstMasterFormat.GetLRSpace();
-    CPPUNIT_ASSERT_EQUAL(horizontalSpace.GetLeft(), 
FirstMasterLRSpace.GetLeft());
-    CPPUNIT_ASSERT_EQUAL(horizontalSpace.GetRight(), 
FirstMasterLRSpace.GetRight());
-    const SvxLRSpaceItem FirstLeftLRSpace = 
rTargetFirstLeftFormat.GetLRSpace();
-    CPPUNIT_ASSERT_EQUAL(horizontalSpace.GetLeft(), 
FirstLeftLRSpace.GetLeft());
-    CPPUNIT_ASSERT_EQUAL(horizontalSpace.GetRight(), 
FirstLeftLRSpace.GetRight());
-    //Checking vertical spaces
-    const SvxULSpaceItem MasterULSpace = rTargetMasterFormat.GetULSpace();
-    CPPUNIT_ASSERT_EQUAL(verticalSpace.GetUpper(), MasterULSpace.GetUpper());
-    CPPUNIT_ASSERT_EQUAL(verticalSpace.GetLower(), MasterULSpace.GetLower());
-    const SvxULSpaceItem LeftULSpace = rTargetLeftFormat.GetULSpace();
-    CPPUNIT_ASSERT_EQUAL(verticalSpace.GetUpper(), LeftULSpace.GetUpper());
-    CPPUNIT_ASSERT_EQUAL(verticalSpace.GetLower(), LeftULSpace.GetLower());
-    const SvxULSpaceItem FirstMasterULSpace = 
rTargetFirstMasterFormat.GetULSpace();
-    CPPUNIT_ASSERT_EQUAL(verticalSpace.GetUpper(), 
FirstMasterULSpace.GetUpper());
-    CPPUNIT_ASSERT_EQUAL(verticalSpace.GetLower(), 
FirstMasterULSpace.GetLower());
-    const SvxULSpaceItem FirstLeftULSpace = 
rTargetFirstLeftFormat.GetULSpace();
-    CPPUNIT_ASSERT_EQUAL(verticalSpace.GetUpper(), 
FirstLeftULSpace.GetUpper());
-    CPPUNIT_ASSERT_EQUAL(verticalSpace.GetLower(), 
FirstLeftULSpace.GetLower());
-    xSourceDoc->dispose();
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf69282WithMirror)
-{
-    SwDoc* source = createSwDoc();
-    uno::Reference<lang::XComponent> xSourceDoc = mxComponent;
-    mxComponent.clear();
-    SwDoc* target = createSwDoc();
-    SwPageDesc* sPageDesc = source->MakePageDesc("SourceStyle");
-    SwPageDesc* tPageDesc = target->MakePageDesc("TargetStyle");
-    //Enabling Mirror
-    sPageDesc->SetUseOn(UseOnPage::Mirror);
-    SwFrameFormat& rSourceMasterFormat = sPageDesc->GetMaster();
-    //Setting horizontal spaces on master
-    SvxLRSpaceItem horizontalSpace(RES_LR_SPACE);
-    horizontalSpace.SetLeft(11);
-    horizontalSpace.SetRight(12);
-    rSourceMasterFormat.SetFormatAttr(horizontalSpace);
-    //Setting vertical spaces on master
-    SvxULSpaceItem verticalSpace(RES_UL_SPACE);
-    verticalSpace.SetUpper(13);
-    verticalSpace.SetLower(14);
-    rSourceMasterFormat.SetFormatAttr(verticalSpace);
-    //Changing the style and copying it to target
-    source->ChgPageDesc("SourceStyle", *sPageDesc);
-    target->CopyPageDesc(*sPageDesc, *tPageDesc);
-    //Checking the set values on all Formats in target
-    SwFrameFormat& rTargetMasterFormat = tPageDesc->GetMaster();
-    SwFrameFormat& rTargetLeftFormat = tPageDesc->GetLeft();
-    SwFrameFormat& rTargetFirstMasterFormat = tPageDesc->GetFirstMaster();
-    SwFrameFormat& rTargetFirstLeftFormat = tPageDesc->GetFirstLeft();
-    //Checking horizontal spaces
-    const SvxLRSpaceItem MasterLRSpace = rTargetMasterFormat.GetLRSpace();
-    CPPUNIT_ASSERT_EQUAL(horizontalSpace.GetLeft(), MasterLRSpace.GetLeft());
-    CPPUNIT_ASSERT_EQUAL(horizontalSpace.GetRight(), MasterLRSpace.GetRight());
-    //mirror effect should be present
-    const SvxLRSpaceItem LeftLRSpace = rTargetLeftFormat.GetLRSpace();
-    CPPUNIT_ASSERT_EQUAL(horizontalSpace.GetRight(), LeftLRSpace.GetLeft());
-    CPPUNIT_ASSERT_EQUAL(horizontalSpace.GetLeft(), LeftLRSpace.GetRight());
-    const SvxLRSpaceItem FirstMasterLRSpace = 
rTargetFirstMasterFormat.GetLRSpace();
-    CPPUNIT_ASSERT_EQUAL(horizontalSpace.GetLeft(), 
FirstMasterLRSpace.GetLeft());
-    CPPUNIT_ASSERT_EQUAL(horizontalSpace.GetRight(), 
FirstMasterLRSpace.GetRight());
-    //mirror effect should be present
-    const SvxLRSpaceItem FirstLeftLRSpace = 
rTargetFirstLeftFormat.GetLRSpace();
-    CPPUNIT_ASSERT_EQUAL(horizontalSpace.GetRight(), 
FirstLeftLRSpace.GetLeft());
-    CPPUNIT_ASSERT_EQUAL(horizontalSpace.GetLeft(), 
FirstLeftLRSpace.GetRight());
-    //Checking vertical spaces
-    const SvxULSpaceItem MasterULSpace = rTargetMasterFormat.GetULSpace();
-    CPPUNIT_ASSERT_EQUAL(verticalSpace.GetUpper(), MasterULSpace.GetUpper());
-    CPPUNIT_ASSERT_EQUAL(verticalSpace.GetLower(), MasterULSpace.GetLower());
-    const SvxULSpaceItem LeftULSpace = rTargetLeftFormat.GetULSpace();
-    CPPUNIT_ASSERT_EQUAL(verticalSpace.GetUpper(), LeftULSpace.GetUpper());
-    CPPUNIT_ASSERT_EQUAL(verticalSpace.GetLower(), LeftULSpace.GetLower());
-    const SvxULSpaceItem FirstMasterULSpace = 
rTargetFirstMasterFormat.GetULSpace();
-    CPPUNIT_ASSERT_EQUAL(verticalSpace.GetUpper(), 
FirstMasterULSpace.GetUpper());
-    CPPUNIT_ASSERT_EQUAL(verticalSpace.GetLower(), 
FirstMasterULSpace.GetLower());
-    const SvxULSpaceItem FirstLeftULSpace = 
rTargetFirstLeftFormat.GetULSpace();
-    CPPUNIT_ASSERT_EQUAL(verticalSpace.GetUpper(), 
FirstLeftULSpace.GetUpper());
-    CPPUNIT_ASSERT_EQUAL(verticalSpace.GetLower(), 
FirstLeftULSpace.GetLower());
-    xSourceDoc->dispose();
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf78742)
-{
-    //testing with service type and any .ods file
-    OUString path = m_directories.getURLFromSrc(DATA_DIRECTORY) + 
"calc-data-source.ods";
-    SfxMedium aMedium(path, StreamMode::READ | StreamMode::SHARE_DENYWRITE);
-    SfxFilterMatcher aMatcher("com.sun.star.text.TextDocument");
-    std::shared_ptr<const SfxFilter> pFilter;
-    ErrCode filter = aMatcher.DetectFilter(aMedium, pFilter);
-    CPPUNIT_ASSERT_EQUAL(ERRCODE_IO_ABORT, filter);
-    //it should not return any Filter
-    CPPUNIT_ASSERT(!pFilter);
-    //testing without service type and any .ods file
-    SfxMedium aMedium2(path, StreamMode::READ | StreamMode::SHARE_DENYWRITE);
-    SfxFilterMatcher aMatcher2;
-    std::shared_ptr<const SfxFilter> pFilter2;
-    ErrCode filter2 = aMatcher2.DetectFilter(aMedium2, pFilter2);
-    CPPUNIT_ASSERT_EQUAL(ERRCODE_NONE, filter2);
-    //Filter should be returned with proper Name
-    CPPUNIT_ASSERT_EQUAL(OUString("calc8"), pFilter2->GetFilterName());
-    //testing with service type and any .odt file
-    OUString path2 = m_directories.getURLFromSrc(DATA_DIRECTORY) + 
"fdo69893.odt";
-    SfxMedium aMedium3(path2, StreamMode::READ | StreamMode::SHARE_DENYWRITE);
-    SfxFilterMatcher aMatcher3("com.sun.star.text.TextDocument");
-    std::shared_ptr<const SfxFilter> pFilter3;
-    ErrCode filter3 = aMatcher3.DetectFilter(aMedium3, pFilter3);
-    CPPUNIT_ASSERT_EQUAL(ERRCODE_NONE, filter3);
-    //Filter should be returned with proper Name
-    CPPUNIT_ASSERT_EQUAL(OUString("writer8"), pFilter3->GetFilterName());
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testUnoParagraph)
-{
-    SwDoc* pDoc = createSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-    //Inserting some text content in the document
-    pWrtShell->Insert("This is initial text in paragraph one");
-    pWrtShell->SplitNode();
-    //Inserting second paragraph
-    pWrtShell->Insert("This is initial text in paragraph two");
-    //now testing the SwXParagraph
-    uno::Reference<text::XTextDocument> xTextDocument(mxComponent, 
uno::UNO_QUERY);
-    uno::Reference<text::XText> xText(xTextDocument->getText());
-    uno::Reference<container::XEnumerationAccess> xParaAccess(xText, 
uno::UNO_QUERY);
-    uno::Reference<container::XEnumeration> 
xPara(xParaAccess->createEnumeration());
-    //getting first paragraph
-    uno::Reference<text::XTextContent> xFirstParaContent(xPara->nextElement(), 
uno::UNO_QUERY);
-    uno::Reference<text::XTextRange> xFirstPara(xFirstParaContent, 
uno::UNO_QUERY);
-    //testing the initial text
-    CPPUNIT_ASSERT_EQUAL(OUString("This is initial text in paragraph one"), 
xFirstPara->getString());
-    //changing the text content in first paragraph
-    xFirstPara->setString("This is modified text in paragraph one");
-    //testing the changes
-    CPPUNIT_ASSERT_EQUAL(OUString("This is modified text in paragraph one"), 
xFirstPara->getString());
-    //getting second paragraph
-    uno::Reference<text::XTextContent> 
xSecondParaContent(xPara->nextElement(), uno::UNO_QUERY);
-    uno::Reference<text::XTextRange> xSecondPara(xSecondParaContent, 
uno::UNO_QUERY);
-    //testing the initial text
-    CPPUNIT_ASSERT_EQUAL(OUString("This is initial text in paragraph two"), 
xSecondPara->getString());
-    //changing the text content in second paragraph
-    xSecondPara->setString("This is modified text in paragraph two");
-    //testing the changes
-    CPPUNIT_ASSERT_EQUAL(OUString("This is modified text in paragraph two"), 
xSecondPara->getString());
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf72788)
-{
-    //Create a new empty Writer document
-    SwDoc* pDoc = createSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-    SwPaM* pCursor = pDoc->GetEditShell()->GetCursor();
-    IDocumentContentOperations & rIDCO(pDoc->getIDocumentContentOperations());
-    //Insert some text - two paragraphs
-    rIDCO.InsertString(*pCursor, "this is text");
-    //Position of word              9876543210
-    //Position of word            0123456789
-    //Change Paragraph
-    pWrtShell->SplitNode();
-    //Insert second paragraph
-    rIDCO.InsertString(*pCursor, "more text");
-    //Position of word            012345678
-    //Make the following selection *bold*
-    //this[is text
-    //more] text
-    //Move cursor back
-    for (int i = 0; i < 5; i++) {
-        pCursor->Move(fnMoveBackward);
-    }
-    //Start selection
-    pCursor->SetMark();
-    for (int i = 0; i < 12; i++) {
-        pCursor->Move(fnMoveBackward);
-    }
-    //Check the text selection
-    CPPUNIT_ASSERT_EQUAL(OUString(u"is text" + OUStringChar(CH_TXTATR_NEWLINE) 
+ u"more"), pCursor->GetText());
-    //Apply a *Bold* attribute to selection
-    SvxWeightItem aWeightItem(WEIGHT_BOLD, RES_CHRATR_WEIGHT);
-    rIDCO.InsertPoolItem(*pCursor, aWeightItem);
-    SfxItemSet aSet( pDoc->GetAttrPool(), svl::Items<RES_CHRATR_WEIGHT, 
RES_CHRATR_WEIGHT>);
-    //Add selected text's attributes to aSet
-    pCursor->GetNode().GetTextNode()->GetParaAttr(aSet, 5, 12);
-    SfxPoolItem const * pPoolItem = aSet.GetItem(RES_CHRATR_WEIGHT);
-    //Check that bold is active on the selection and it's in aSet
-    CPPUNIT_ASSERT_EQUAL(true, (*pPoolItem == aWeightItem));
-    //Make selection to remove formatting in first paragraph
-    //[this is text
-    //]more text
-    pWrtShell->StartOfSection();
-    //Start selection
-    pCursor->SetMark();
-    for (int i = 0; i < 13; i++) {
-        pCursor->Move(fnMoveForward);
-    }
-    //Clear all the Direct Formatting ( Ctrl + M )
-    SwTextNode* pTextNode = pCursor->GetNode().GetTextNode();
-    SwIndex aSt( pTextNode, 0 );
-    sal_Int32 nEnd = pTextNode->Len();
-    pTextNode->RstTextAttr(aSt, nEnd - aSt.GetIndex());
-    //In case of Regression RstTextAttr() call will result to infinite 
recursion
-    //Check that bold is removed in first paragraph
-    aSet.ClearItem();
-    pTextNode->GetParaAttr(aSet, 5, 12);
-    SfxPoolItem const * pPoolItem2 = aSet.GetItem(RES_CHRATR_WEIGHT);
-    CPPUNIT_ASSERT_EQUAL(true, (*pPoolItem2 != aWeightItem));
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf60967)
-{
-    SwDoc* pDoc = createSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-    SwPaM* pCursor = pDoc->GetEditShell()->GetCursor();
-    sw::UndoManager& rUndoManager = pDoc->GetUndoManager();
-    pWrtShell->ChangeHeaderOrFooter(u"Default Page Style", true, true, true);
-    //Inserting table
-    SwInsertTableOptions TableOpt(SwInsertTableFlags::DefaultBorder, 0);
-    pWrtShell->InsertTable(TableOpt, 2, 2);
-    //getting the cursor's position just after the table insert
-    SwPosition aPosAfterTable(*(pCursor->GetPoint()));
-    //moving cursor to B2 (bottom right cell)
-    pCursor->Move(fnMoveBackward);
-    SwPosition aPosInTable(*(pCursor->GetPoint()));
-    //deleting paragraph following table with Ctrl+Shift+Del
-    bool val = pWrtShell->DelToEndOfSentence();
-    CPPUNIT_ASSERT_EQUAL(true, val);
-    //getting the cursor's position just after the paragraph deletion
-    SwPosition aPosAfterDel(*(pCursor->GetPoint()));
-    //moving cursor forward to check whether there is any node following the 
table, BTW there should not be any such node
-    pCursor->Move(fnMoveForward);
-    SwPosition aPosMoveAfterDel(*(pCursor->GetPoint()));
-    //checking the positions to verify that the paragraph is actually deleted
-    CPPUNIT_ASSERT_EQUAL(aPosAfterDel, aPosInTable);
-    CPPUNIT_ASSERT_EQUAL(aPosMoveAfterDel, aPosInTable);
-    //Undo the changes
-    rUndoManager.Undo();
-    {
-        //paragraph *text node* should be back
-        SwPosition aPosAfterUndo(*(pCursor->GetPoint()));
-        //after undo aPosAfterTable increases the node position by one, since 
this contains the position *text node* so aPosAfterUndo should be less than 
aPosAfterTable
-        CPPUNIT_ASSERT(aPosAfterTable > aPosAfterUndo);
-        //moving cursor forward to check whether there is any node following 
the paragraph, BTW there should not be any such node as paragraph node is the 
last one in header
-        pCursor->Move(fnMoveForward);
-        SwPosition aPosMoveAfterUndo(*(pCursor->GetPoint()));
-        //checking positions to verify that paragraph node is the last one and 
we are paragraph node only
-        CPPUNIT_ASSERT(aPosAfterTable > aPosMoveAfterUndo);
-        CPPUNIT_ASSERT_EQUAL(aPosAfterUndo, aPosMoveAfterUndo);
-    }
-    //Redo the changes
-    rUndoManager.Redo();
-    //paragraph *text node* should not be there
-    SwPosition aPosAfterRedo(*(pCursor->GetPoint()));
-    //position should be exactly same as it was after deletion of *text node*
-    CPPUNIT_ASSERT_EQUAL(aPosAfterRedo, aPosMoveAfterDel);
-    //moving the cursor forward, but it should not actually move as there is 
no *text node* after the table due to this same position is expected after move 
as it was before move
-    pCursor->Move(fnMoveForward);
-    SwPosition aPosAfterUndoMove(*(pCursor->GetPoint()));
-    CPPUNIT_ASSERT_EQUAL(aPosAfterRedo, aPosAfterUndoMove);
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testSearchWithTransliterate)
-{
-    SwDoc* pDoc = createSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-    {
-        SwNodeIndex aIdx(pDoc->GetNodes().GetEndOfContent(), -1);
-        SwPaM aPaM(aIdx);
-        pDoc->getIDocumentContentOperations().InsertString(aPaM,"This is 
paragraph one");
-        pWrtShell->SplitNode();
-    }
-    {
-        SwNodeIndex aIdx(pDoc->GetNodes().GetEndOfContent(), -1);
-        SwPaM aPaM(aIdx);
-        pDoc->getIDocumentContentOperations().InsertString(aPaM,"This is Other 
PARAGRAPH");
-    }
-    i18nutil::SearchOptions2 SearchOpt;
-    SearchOpt.algorithmType = css::util::SearchAlgorithms_ABSOLUTE;
-    SearchOpt.searchFlag = css::util::SearchFlags::ALL_IGNORE_CASE;
-    SearchOpt.searchString = "other";
-    SearchOpt.replaceString.clear();
-    SearchOpt.changedChars = 0;
-    SearchOpt.deletedChars = 0;
-    SearchOpt.insertedChars = 0;
-    SearchOpt.transliterateFlags = TransliterationFlags::IGNORE_DIACRITICS_CTL;
-    SearchOpt.AlgorithmType2 = css::util::SearchAlgorithms2::ABSOLUTE;
-    SearchOpt.WildcardEscapeCharacter = 0;
-    //transliteration option set so that at least one of the search strings is 
not found
-    sal_uLong case1 = 
pWrtShell->SearchPattern(SearchOpt,true,SwDocPositions::Start,SwDocPositions::End);
-    SwShellCursor* pShellCursor = pWrtShell->getShellCursor(true);
-    CPPUNIT_ASSERT_EQUAL(OUString(),pShellCursor->GetText());
-    CPPUNIT_ASSERT_EQUAL(0,static_cast<int>(case1));
-    SearchOpt.searchString = "paragraph";
-    SearchOpt.transliterateFlags = TransliterationFlags::IGNORE_KASHIDA_CTL;
-    //transliteration option set so that all search strings are found
-    sal_uLong case2 = 
pWrtShell->SearchPattern(SearchOpt,true,SwDocPositions::Start,SwDocPositions::End);
-    pShellCursor = pWrtShell->getShellCursor(true);
-    CPPUNIT_ASSERT_EQUAL(OUString("paragraph"),pShellCursor->GetText());
-    CPPUNIT_ASSERT_EQUAL(1,static_cast<int>(case2));
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf73660)
-{
-    SwDoc* pDoc = createSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-    OUString aData1 = "First" + OUStringChar(CHAR_SOFTHYPHEN) + "Word";
-    OUString aData2 = "Seco" + OUStringChar(CHAR_SOFTHYPHEN) + "nd";
-    OUString aData3 = OUStringChar(CHAR_SOFTHYPHEN) + "Third";
-    OUString aData4 = "Fourth" + OUStringChar(CHAR_SOFTHYPHEN);
-    pWrtShell->Insert("We are inserting some text in the document to check the 
search feature ");
-    pWrtShell->Insert(aData1 + " ");
-    pWrtShell->Insert(aData2 + " ");
-    pWrtShell->Insert(aData3 + " ");
-    pWrtShell->Insert(aData4 + " ");
-    pWrtShell->Insert("Fifth ");
-    pWrtShell->Insert("Now we have enough text let's test search for all the 
cases");
-    //searching for all 5 strings entered with soft-hyphen, search string 
contains no soft-hyphen
-    i18nutil::SearchOptions2 searchOpt;
-    searchOpt.algorithmType = css::util::SearchAlgorithms_REGEXP;
-    searchOpt.searchFlag = css::util::SearchFlags::NORM_WORD_ONLY;
-    //case 1
-    searchOpt.searchString = "First";
-    CPPUNIT_ASSERT_EQUAL(sal_uLong(1), 
pWrtShell->SearchPattern(searchOpt,true,SwDocPositions::Start,SwDocPositions::End));
-    //case 2
-    searchOpt.searchString = "Second";
-    CPPUNIT_ASSERT_EQUAL(sal_uLong(1), 
pWrtShell->SearchPattern(searchOpt,true,SwDocPositions::Start,SwDocPositions::End));
-    //case 3
-    searchOpt.searchString = "Third";
-    CPPUNIT_ASSERT_EQUAL(sal_uLong(1), 
pWrtShell->SearchPattern(searchOpt,true,SwDocPositions::Start,SwDocPositions::End));
-    //case 4
-    searchOpt.searchString = "Fourth";
-    CPPUNIT_ASSERT_EQUAL(sal_uLong(1), 
pWrtShell->SearchPattern(searchOpt,true,SwDocPositions::Start,SwDocPositions::End));
-    //case 5
-    searchOpt.searchString = "Fifth";
-    CPPUNIT_ASSERT_EQUAL(sal_uLong(1), 
pWrtShell->SearchPattern(searchOpt,true,SwDocPositions::Start,SwDocPositions::End));
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testNewDocModifiedState)
-{
-    //creating a new doc
-    SwDoc* pDoc = new SwDoc();
-    //getting the state of the document via IDocumentState
-    IDocumentState& rState(pDoc->getIDocumentState());
-    //the state should not be modified, no modifications yet
-    CPPUNIT_ASSERT(!(rState.IsModified()));
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf77342)
-{
-    SwDoc* pDoc = createSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-    SwPaM* pCursor = pDoc->GetEditShell()->GetCursor();
-    //inserting first footnote
-    pWrtShell->InsertFootnote("");
-    SwFieldType* pField = pWrtShell->GetFieldType(0, SwFieldIds::GetRef);
-    SwGetRefFieldType* pRefType = static_cast<SwGetRefFieldType*>(pField);
-    //moving cursor to the starting of document
-    pWrtShell->StartOfSection();
-    //inserting reference field 1
-    SwGetRefField aField1(pRefType, "", "", REF_FOOTNOTE, sal_uInt16(0), 
REF_CONTENT);
-    pWrtShell->InsertField2(aField1);
-    //inserting second footnote
-    pWrtShell->InsertFootnote("");
-    pWrtShell->StartOfSection();
-    pCursor->Move(fnMoveForward);
-    //inserting reference field 2
-    SwGetRefField aField2(pRefType, "", "", REF_FOOTNOTE, sal_uInt16(1), 
REF_CONTENT);
-    pWrtShell->InsertField2(aField2);
-    //inserting third footnote
-    pWrtShell->InsertFootnote("");
-    pWrtShell->StartOfSection();
-    pCursor->Move(fnMoveForward);
-    pCursor->Move(fnMoveForward);
-    //inserting reference field 3
-    SwGetRefField aField3(pRefType, "", "", REF_FOOTNOTE, sal_uInt16(2), 
REF_CONTENT);
-    pWrtShell->InsertField2(aField3);
-    //updating the fields
-    IDocumentFieldsAccess& rField(pDoc->getIDocumentFieldsAccess());
-    rField.UpdateExpFields(nullptr, true);
-    //creating new clipboard doc
-    rtl::Reference<SwDoc> xClpDoc(new SwDoc());
-    xClpDoc->SetClipBoard(true);
-    xClpDoc->getIDocumentFieldsAccess().LockExpFields();
-    //selecting reference field 2 and reference field 3 and footnote 1 and 
footnote 2
-    //selection is such that more than one and not all footnotes and ref 
fields are selected
-    pCursor->Move(fnMoveBackward);
-    pCursor->Move(fnMoveBackward);
-    //start marking
-    pCursor->SetMark();
-    pCursor->Move(fnMoveForward);
-    pCursor->Move(fnMoveForward);
-    pCursor->Move(fnMoveForward);
-    //copying the selection to clipboard
-    pWrtShell->Copy(*xClpDoc);
-    //deleting selection mark after copy
-    pCursor->DeleteMark();
-    //checking that the footnotes reference fields have same values after copy 
operation
-    uno::Any aAny;
-    sal_uInt16 aFormat;
-    //reference field 1
-    pWrtShell->StartOfSection();
-    SwField* pRef1 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pRef1->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pRef1->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(0)), aAny);
-    //reference field 2
-    pCursor->Move(fnMoveForward);
-    SwField* pRef2 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pRef2->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pRef2->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(1)), aAny);
-    //reference field 3
-    pCursor->Move(fnMoveForward);
-    SwField* pRef3 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pRef3->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pRef3->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(2)), aAny);
-    //moving cursor to the end of the document
-    pWrtShell->EndOfSection();
-    //pasting the copied selection at current cursor position
-    pWrtShell->Paste(*xClpDoc);
-    //checking the fields, both new and old, for proper values
-    pWrtShell->StartOfSection();
-    //old reference field 1
-    SwField* pOldRef11 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pOldRef11->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pOldRef11->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(0)), aAny);
-    //old reference field 2
-    pCursor->Move(fnMoveForward);
-    SwField* pOldRef12 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pOldRef12->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pOldRef12->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(1)), aAny);
-    //old reference field 3
-    pCursor->Move(fnMoveForward);
-    SwField* pOldRef13 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pOldRef13->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pOldRef13->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(2)), aAny);
-    //old footnote 1
-    pCursor->Move(fnMoveForward);
-    SwTextNode* pTextNd1 = pCursor->GetNode().GetTextNode();
-    SwTextAttr* const pFootnote1 = 
pTextNd1->GetTextAttrForCharAt(pCursor->GetPoint()->nContent.GetIndex(), 
RES_TXTATR_FTN);
-    const SwFormatFootnote& rFootnote1(pFootnote1->GetFootnote());
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(1), rFootnote1.GetNumber());
-    SwTextFootnote* pTFNote1 = static_cast<SwTextFootnote*> (pFootnote1);
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(2), pTFNote1->GetSeqRefNo());
-    //old footnote 2
-    pCursor->Move(fnMoveForward);
-    SwTextNode* pTextNd2 = pCursor->GetNode().GetTextNode();
-    SwTextAttr* const pFootnote2 = 
pTextNd2->GetTextAttrForCharAt(pCursor->GetPoint()->nContent.GetIndex(), 
RES_TXTATR_FTN);
-    const SwFormatFootnote& rFootnote2(pFootnote2->GetFootnote());
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(2), rFootnote2.GetNumber());
-    SwTextFootnote* pTFNote2 = static_cast<SwTextFootnote*> (pFootnote2);
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(1), pTFNote2->GetSeqRefNo());
-    //old footnote 3
-    pCursor->Move(fnMoveForward);
-    SwTextNode* pTextNd3 = pCursor->GetNode().GetTextNode();
-    SwTextAttr* const pFootnote3 = 
pTextNd3->GetTextAttrForCharAt(pCursor->GetPoint()->nContent.GetIndex(), 
RES_TXTATR_FTN);
-    const SwFormatFootnote& rFootnote3(pFootnote3->GetFootnote());
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(3), rFootnote3.GetNumber());
-    SwTextFootnote* pTFNote3 = static_cast<SwTextFootnote*> (pFootnote3);
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(0), pTFNote3->GetSeqRefNo());
-    //new reference field 1
-    pCursor->Move(fnMoveForward);
-    SwField* pNewRef11 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pNewRef11->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pNewRef11->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(1)), aAny);
-    //new reference field 2
-    pCursor->Move(fnMoveForward);
-    SwField* pNewRef12 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pNewRef12->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pNewRef12->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(3)), aAny);
-    //new footnote 1
-    pCursor->Move(fnMoveForward);
-    SwTextNode* pTextNd4 = pCursor->GetNode().GetTextNode();
-    SwTextAttr* const pFootnote4 = 
pTextNd4->GetTextAttrForCharAt(pCursor->GetPoint()->nContent.GetIndex(), 
RES_TXTATR_FTN);
-    const SwFormatFootnote& rFootnote4(pFootnote4->GetFootnote());
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(4), rFootnote4.GetNumber());
-    SwTextFootnote* pTFNote4 = static_cast<SwTextFootnote*> (pFootnote4);
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(3), pTFNote4->GetSeqRefNo());
-    //moving the cursor to the starting of document
-    pWrtShell->StartOfSection();
-    //pasting the selection again at current cursor position
-    pWrtShell->Paste(*xClpDoc);
-    //checking the fields, both new and old, for proper values
-    pWrtShell->StartOfSection();
-    //new reference field 1
-    SwField* pNewRef21 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pNewRef21->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pNewRef21->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(1)), aAny);
-    //new reference field 2
-    pCursor->Move(fnMoveForward);
-    SwField* pNewRef22 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pNewRef22->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pNewRef22->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(4)), aAny);
-    //new footnote 1
-    pCursor->Move(fnMoveForward);
-    SwTextNode* pTextNd11 = pCursor->GetNode().GetTextNode();
-    SwTextAttr* const pFootnote11 = 
pTextNd11->GetTextAttrForCharAt(pCursor->GetPoint()->nContent.GetIndex(), 
RES_TXTATR_FTN);
-    const SwFormatFootnote& rFootnote11(pFootnote11->GetFootnote());
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(1), rFootnote11.GetNumber());
-    SwTextFootnote* pTFNote11 = static_cast<SwTextFootnote*> (pFootnote11);
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(4), pTFNote11->GetSeqRefNo());
-    //old reference field 1
-    pCursor->Move(fnMoveForward);
-    SwField* pOldRef21 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pOldRef21->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pOldRef21->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(0)), aAny);
-    //old reference field 2
-    pCursor->Move(fnMoveForward);
-    SwField* pOldRef22 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pOldRef22->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pOldRef22->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(1)), aAny);
-    //old reference field 3
-    pCursor->Move(fnMoveForward);
-    SwField* pOldRef23 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pOldRef23->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pOldRef23->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(2)), aAny);
-    //old footnote 1
-    pCursor->Move(fnMoveForward);
-    SwTextNode* pTextNd12 = pCursor->GetNode().GetTextNode();
-    SwTextAttr* const pFootnote12 = 
pTextNd12->GetTextAttrForCharAt(pCursor->GetPoint()->nContent.GetIndex(), 
RES_TXTATR_FTN);
-    const SwFormatFootnote& rFootnote12(pFootnote12->GetFootnote());
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(2), rFootnote12.GetNumber());
-    SwTextFootnote* pTFNote12 = static_cast<SwTextFootnote*> (pFootnote12);
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(2), pTFNote12->GetSeqRefNo());
-    //old footnote 2
-    pCursor->Move(fnMoveForward);
-    SwTextNode* pTextNd13 = pCursor->GetNode().GetTextNode();
-    SwTextAttr* const pFootnote13 = 
pTextNd13->GetTextAttrForCharAt(pCursor->GetPoint()->nContent.GetIndex(), 
RES_TXTATR_FTN);
-    const SwFormatFootnote& rFootnote13(pFootnote13->GetFootnote());
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(3), rFootnote13.GetNumber());
-    SwTextFootnote* pTFNote13 = static_cast<SwTextFootnote*> (pFootnote13);
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(1), pTFNote13->GetSeqRefNo());
-    //old footnote 3
-    pCursor->Move(fnMoveForward);
-    SwTextNode* pTextNd14 = pCursor->GetNode().GetTextNode();
-    SwTextAttr* const pFootnote14 = 
pTextNd14->GetTextAttrForCharAt(pCursor->GetPoint()->nContent.GetIndex(), 
RES_TXTATR_FTN);
-    const SwFormatFootnote& rFootnote14(pFootnote14->GetFootnote());
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(4), rFootnote14.GetNumber());
-    SwTextFootnote* pTFNote14 = static_cast<SwTextFootnote*> (pFootnote14);
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(0), pTFNote14->GetSeqRefNo());
-    //old reference field 4
-    pCursor->Move(fnMoveForward);
-    SwField* pOldRef24 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pOldRef24->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pOldRef24->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(1)), aAny);
-    //old reference field 5
-    pCursor->Move(fnMoveForward);
-    SwField* pOldRef25 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pOldRef25->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pOldRef25->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(3)), aAny);
-    //old footnote 4
-    pCursor->Move(fnMoveForward);
-    SwTextNode* pTextNd15 = pCursor->GetNode().GetTextNode();
-    SwTextAttr* const pFootnote15 = 
pTextNd15->GetTextAttrForCharAt(pCursor->GetPoint()->nContent.GetIndex(), 
RES_TXTATR_FTN);
-    const SwFormatFootnote& rFootnote15(pFootnote15->GetFootnote());
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(5), rFootnote15.GetNumber());
-    SwTextFootnote* pTFNote15 = static_cast<SwTextFootnote*> (pFootnote15);
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(3), pTFNote15->GetSeqRefNo());
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf63553)
-{
-    SwDoc* pDoc = createSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-    SwPaM* pCursor = pDoc->GetEditShell()->GetCursor();
-    //inserting sequence field 1
-    SwSetExpFieldType* pSeqType = 
static_cast<SwSetExpFieldType*>(pWrtShell->GetFieldType(SwFieldIds::SetExp, 
"Illustration"));
-    SwSetExpField aSetField1(pSeqType, "", SVX_NUM_ARABIC);
-    pWrtShell->InsertField2(aSetField1);
-    SwGetRefFieldType* pRefType = 
static_cast<SwGetRefFieldType*>(pWrtShell->GetFieldType(0, SwFieldIds::GetRef));
-    //moving cursor to the starting of document
-    pWrtShell->StartOfSection();
-    //inserting reference field 1
-    SwGetRefField aGetField1(pRefType, "Illustration", "", REF_SEQUENCEFLD, 
sal_uInt16(0), REF_CONTENT);
-    pWrtShell->InsertField2(aGetField1);
-    //now we have ref1-seq1
-    //moving the cursor
-    pCursor->Move(fnMoveForward);
-    //inserting sequence field 2
-    SwSetExpField aSetField2(pSeqType, "", SVX_NUM_ARABIC);
-    pWrtShell->InsertField2(aSetField2);
-    //moving the cursor
-    pWrtShell->StartOfSection();
-    pCursor->Move(fnMoveForward);
-    //inserting reference field 2
-    SwGetRefField aGetField2(pRefType, "Illustration", "", REF_SEQUENCEFLD, 
sal_uInt16(1), REF_CONTENT);
-    pWrtShell->InsertField2(aGetField2);
-    //now we have ref1-ref2-seq1-seq2
-    //moving the cursor
-    pCursor->Move(fnMoveForward);
-    pCursor->Move(fnMoveForward);
-    //inserting sequence field 3
-    SwSetExpField aSetField3(pSeqType, "", SVX_NUM_ARABIC);
-    pWrtShell->InsertField2(aSetField3);
-    pWrtShell->StartOfSection();
-    pCursor->Move(fnMoveForward);
-    pCursor->Move(fnMoveForward);
-    //inserting reference field 3
-    SwGetRefField aGetField3(pRefType, "Illustration", "", REF_SEQUENCEFLD, 
sal_uInt16(2), REF_CONTENT);
-    pWrtShell->InsertField2(aGetField3);
-    //now after insertion we have ref1-ref2-ref3-seq1-seq2-seq3
-    //updating the fields
-    IDocumentFieldsAccess& rField(pDoc->getIDocumentFieldsAccess());
-    rField.UpdateExpFields(nullptr, true);
-    //creating new clipboard doc
-    rtl::Reference<SwDoc> xClpDoc( new SwDoc() );
-    xClpDoc->SetClipBoard(true);
-    xClpDoc->getIDocumentFieldsAccess().LockExpFields();
-    //selecting reference field 2 and 3 and sequence field 1 and 2
-    //selection is such that more than one and not all sequence fields and 
reference fields are selected
-    //ref1-[ref2-ref3-seq1-seq2]-seq3
-    pWrtShell->StartOfSection();
-    pCursor->Move(fnMoveForward);
-    //start marking
-    pCursor->SetMark();
-    pCursor->Move(fnMoveForward);
-    pCursor->Move(fnMoveForward);
-    pCursor->Move(fnMoveForward);
-    pCursor->Move(fnMoveForward);
-    //copying the selection to clipboard
-    pWrtShell->Copy(*xClpDoc);
-    //deleting selection mark after copy
-    pCursor->DeleteMark();
-    //checking whether the sequence and reference fields have same values 
after copy operation
-    uno::Any aAny;
-    sal_uInt16 aFormat;
-    //reference field 1
-    pWrtShell->StartOfSection();
-    SwField* pRef1 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pRef1->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pRef1->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(0)), aAny);
-    //reference field 2
-    pCursor->Move(fnMoveForward);
-    SwField* pRef2 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pRef2->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pRef2->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(1)), aAny);
-    //reference field 3
-    pCursor->Move(fnMoveForward);
-    SwField* pRef3 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pRef3->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pRef3->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(2)), aAny);
-    //sequence field 1
-    pCursor->Move(fnMoveForward);
-    SwSetExpField* pSeqF1 = static_cast<SwSetExpField*> 
(SwCursorShell::GetFieldAtCursor(pCursor, true));
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(0), pSeqF1->GetSeqNumber());
-    CPPUNIT_ASSERT_EQUAL(OUString("Number range Illustration"), 
pSeqF1->GetFieldName());
-    //sequence field 2
-    pCursor->Move(fnMoveForward);
-    SwSetExpField* pSeqF2 = static_cast<SwSetExpField*> 
(SwCursorShell::GetFieldAtCursor(pCursor, true));
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(1), pSeqF2->GetSeqNumber());
-    CPPUNIT_ASSERT_EQUAL(OUString("Number range Illustration"), 
pSeqF2->GetFieldName());
-    //sequence field 3
-    pCursor->Move(fnMoveForward);
-    SwSetExpField* pSeqF3 = static_cast<SwSetExpField*> 
(SwCursorShell::GetFieldAtCursor(pCursor, true));
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(2), pSeqF3->GetSeqNumber());
-    CPPUNIT_ASSERT_EQUAL(OUString("Number range Illustration"), 
pSeqF3->GetFieldName());
-    //moving cursor to the end of the document
-    pWrtShell->EndOfSection();
-    //pasting the copied selection at current cursor position
-    pWrtShell->Paste(*xClpDoc);
-    //checking the fields, both new and old, for proper values
-    pWrtShell->StartOfSection();
-    //now we have ref1-ref2-ref3-seq1-seq2-seq3-nref1-nref2-nseq1-nseq2
-    //old reference field 1
-    SwField* pOldRef11 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pOldRef11->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pOldRef11->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(0)), aAny);
-    //old reference field 2
-    pCursor->Move(fnMoveForward);
-    SwField* pOldRef12 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pOldRef12->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pOldRef12->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(1)), aAny);
-    //old reference field 3
-    pCursor->Move(fnMoveForward);
-    SwField* pOldRef13 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pOldRef13->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pOldRef13->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(2)), aAny);
-    //old sequence field 1
-    pCursor->Move(fnMoveForward);
-    SwSetExpField* pSeq1 = static_cast<SwSetExpField*> 
(SwCursorShell::GetFieldAtCursor(pCursor, true));
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(0), pSeq1->GetSeqNumber());
-    CPPUNIT_ASSERT_EQUAL(OUString("Number range Illustration"), 
pSeq1->GetFieldName());
-    //old sequence field 2
-    pCursor->Move(fnMoveForward);
-    SwSetExpField* pSeq2 = static_cast<SwSetExpField*> 
(SwCursorShell::GetFieldAtCursor(pCursor, true));
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(1), pSeq2->GetSeqNumber());
-    CPPUNIT_ASSERT_EQUAL(OUString("Number range Illustration"), 
pSeq2->GetFieldName());
-    //old sequence field 3
-    pCursor->Move(fnMoveForward);
-    SwSetExpField* pSeq3 = static_cast<SwSetExpField*> 
(SwCursorShell::GetFieldAtCursor(pCursor, true));
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(2), pSeq3->GetSeqNumber());
-    CPPUNIT_ASSERT_EQUAL(OUString("Number range Illustration"), 
pSeq3->GetFieldName());
-    //new reference field 1
-    pCursor->Move(fnMoveForward);
-    SwField* pNewRef11 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pNewRef11->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pNewRef11->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(4)), aAny);
-    //new reference field 2
-    pCursor->Move(fnMoveForward);
-    SwField* pNewRef12 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pNewRef12->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pNewRef12->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(2)), aAny);
-    //new sequence field 1
-    pCursor->Move(fnMoveForward);
-    SwSetExpField* pNewSeq1 = static_cast<SwSetExpField*> 
(SwCursorShell::GetFieldAtCursor(pCursor, true));
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(3), pNewSeq1->GetSeqNumber());
-    CPPUNIT_ASSERT_EQUAL(OUString("Number range Illustration"), 
pNewSeq1->GetFieldName());
-    //new sequence field 2
-    pCursor->Move(fnMoveForward);
-    SwSetExpField* pNewSeq2 = static_cast<SwSetExpField*> 
(SwCursorShell::GetFieldAtCursor(pCursor, true));
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(4), pNewSeq2->GetSeqNumber());
-    CPPUNIT_ASSERT_EQUAL(OUString("Number range Illustration"), 
pNewSeq2->GetFieldName());
-    //moving the cursor to the starting of document
-    pWrtShell->StartOfSection();
-    //pasting the selection again at current cursor position
-    pWrtShell->Paste(*xClpDoc);
-    //checking the fields, both new and old, for proper values
-    pWrtShell->StartOfSection();
-    //now we have 
[nnref1-nnref2-nnseq1-nnseq2]-ref1-[ref2-ref3-seq1-seq2]-seq3-[nref1-nref2-nseq1-nseq2]
-    //new reference field 1
-    SwField* pNewRef21 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pNewRef21->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pNewRef21->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(6)), aAny);
-    //new reference field 2
-    pCursor->Move(fnMoveForward);
-    SwField* pNewRef22 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pNewRef22->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pNewRef22->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(2)), aAny);
-    //new sequence field 1
-    pCursor->Move(fnMoveForward);
-    SwSetExpField* pNewSeq11 = static_cast<SwSetExpField*> 
(SwCursorShell::GetFieldAtCursor(pCursor, true));
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(5), pNewSeq11->GetSeqNumber());
-    CPPUNIT_ASSERT_EQUAL(OUString("Number range Illustration"), 
pNewSeq11->GetFieldName());
-    //new sequence field 2
-    pCursor->Move(fnMoveForward);
-    SwSetExpField* pNewSeq12 = static_cast<SwSetExpField*> 
(SwCursorShell::GetFieldAtCursor(pCursor, true));
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(6), pNewSeq12->GetSeqNumber());
-    CPPUNIT_ASSERT_EQUAL(OUString("Number range Illustration"), 
pNewSeq12->GetFieldName());
-    //old reference field 1
-    pCursor->Move(fnMoveForward);
-    SwField* pOldRef21 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pOldRef21->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pOldRef21->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(0)), aAny);
-    //old reference field 2
-    pCursor->Move(fnMoveForward);
-    SwField* pOldRef22 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pOldRef22->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pOldRef22->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(1)), aAny);
-    //old reference field 3
-    pCursor->Move(fnMoveForward);
-    SwField* pOldRef23 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pOldRef23->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pOldRef23->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(2)), aAny);
-    //old sequence field 1
-    pCursor->Move(fnMoveForward);
-    SwSetExpField* pOldSeq11 = static_cast<SwSetExpField*> 
(SwCursorShell::GetFieldAtCursor(pCursor, true));
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(0), pOldSeq11->GetSeqNumber());
-    CPPUNIT_ASSERT_EQUAL(OUString("Number range Illustration"), 
pOldSeq11->GetFieldName());
-    //old sequence field 2
-    pCursor->Move(fnMoveForward);
-    SwSetExpField* pOldSeq12 = static_cast<SwSetExpField*> 
(SwCursorShell::GetFieldAtCursor(pCursor, true));
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(1), pOldSeq12->GetSeqNumber());
-    CPPUNIT_ASSERT_EQUAL(OUString("Number range Illustration"), 
pOldSeq12->GetFieldName());
-    //old sequence field 3
-    pCursor->Move(fnMoveForward);
-    SwSetExpField* pOldSeq13 = static_cast<SwSetExpField*> 
(SwCursorShell::GetFieldAtCursor(pCursor, true));
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(2), pOldSeq13->GetSeqNumber());
-    CPPUNIT_ASSERT_EQUAL(OUString("Number range Illustration"), 
pOldSeq13->GetFieldName());
-    //old reference field 4
-    pCursor->Move(fnMoveForward);
-    SwField* pOldRef24 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pOldRef24->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pOldRef24->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(4)), aAny);
-    //old reference field 5
-    pCursor->Move(fnMoveForward);
-    SwField* pOldRef25 = SwCursorShell::GetFieldAtCursor(pCursor, true);
-    aFormat = pOldRef25->GetFormat();
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(REF_CONTENT), aFormat);
-    pOldRef25->QueryValue(aAny, sal_uInt16(FIELD_PROP_SHORT1));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_uInt16(2)), aAny);
-    //old sequence field 4
-    pCursor->Move(fnMoveForward);
-    SwSetExpField* pOldSeq14 = static_cast<SwSetExpField*> 
(SwCursorShell::GetFieldAtCursor(pCursor, true));
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(3), pOldSeq14->GetSeqNumber());
-    CPPUNIT_ASSERT_EQUAL(OUString("Number range Illustration"), 
pOldSeq14->GetFieldName());
-    //old sequence field 5
-    pCursor->Move(fnMoveForward);
-    SwSetExpField* pOldSeq15 = static_cast<SwSetExpField*> 
(SwCursorShell::GetFieldAtCursor(pCursor, true));
-    CPPUNIT_ASSERT_EQUAL(sal_uInt16(4), pOldSeq15->GetSeqNumber());
-    CPPUNIT_ASSERT_EQUAL(OUString("Number range Illustration"), 
pOldSeq15->GetFieldName());
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf74230)
-{
-    createSwDoc();
-    //exporting the empty document to ODT via TempFile
-    uno::Sequence<beans::PropertyValue> aDescriptor;
-    utl::TempFile aTempFile;
-    uno::Reference<frame::XStorable> xStorable(mxComponent, uno::UNO_QUERY);
-    xStorable->storeToURL(aTempFile.GetURL(), aDescriptor);
-    CPPUNIT_ASSERT(aTempFile.IsValid());
-    //loading an XML DOM of the "styles.xml" of the TempFile
-    xmlDocUniquePtr pXmlDoc = 
parseExportInternal(aTempFile.GetURL(),"styles.xml");
-    //pXmlDoc should not be null
-    CPPUNIT_ASSERT(pXmlDoc);
-    //asserting XPath in loaded XML DOM
-    assertXPath(pXmlDoc, 
"//office:styles/style:default-style[@style:family='graphic']/style:graphic-properties[@svg:stroke-color='#3465a4']");
-    assertXPath(pXmlDoc, 
"//office:styles/style:default-style[@style:family='graphic']/style:graphic-properties[@draw:fill-color='#729fcf']");
-    //deleting the TempFile
-    aTempFile.EnableKillingFile();
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf74363)
-{
-    SwDoc* pDoc = createSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-    //testing autocorrect of initial capitals on start of first paragraph
-    SwAutoCorrect corr(*SvxAutoCorrCfg::Get().GetAutoCorrect());
-    //Inserting one all-lowercase word into the first paragraph
-    pWrtShell->Insert("testing");
-    const sal_Unicode cChar = ' ';
-    pWrtShell->AutoCorrect(corr, cChar);
-    //The word should be capitalized due to autocorrect
-    SwNodeOffset nIndex = pWrtShell->GetCursor()->GetNode().GetIndex();
-    CPPUNIT_ASSERT_EQUAL(OUString("Testing "), 
static_cast<SwTextNode*>(pDoc->GetNodes()[nIndex])->GetText());
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf80663)
-{
-    SwDoc* pDoc = createSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-    //Inserting 2x2 Table
-    sw::UndoManager& rUndoManager = pDoc->GetUndoManager();
-    SwInsertTableOptions TableOpt(SwInsertTableFlags::DefaultBorder, 0);
-    pWrtShell->InsertTable(TableOpt, 2, 2);
-    //Checking for the number of rows and columns
-    uno::Reference<text::XTextTable> xTable(getParagraphOrTable(1), 
uno::UNO_QUERY);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getColumns()->getCount());
-    //Deleting the first row
-    pWrtShell->StartOfSection(); //moves the cursor to the start of Doc
-    pWrtShell->SelTableRow(); //selects the first row
-    pWrtShell->DeleteRow();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getColumns()->getCount());
-    //Undo changes
-    rUndoManager.Undo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getColumns()->getCount());
-    //Redo changes
-    rUndoManager.Redo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getColumns()->getCount());
-    //Undo changes
-    rUndoManager.Undo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getColumns()->getCount());
-    //Deleting the second row
-    pWrtShell->GoNextCell(); //moves the cursor to next cell
-    pWrtShell->SelTableRow(); //selects the second row
-    pWrtShell->DeleteRow();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getColumns()->getCount());
-    //Undo changes
-    rUndoManager.Undo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getColumns()->getCount());
-    //Redo changes
-    rUndoManager.Redo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getColumns()->getCount());
-    //Undo changes
-    rUndoManager.Undo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getColumns()->getCount());
-    //Deleting the first column
-    pWrtShell->StartOfSection(); //moves the cursor to the start of Doc
-    pWrtShell->SelTableCol(); //selects first column
-    pWrtShell->DeleteCol();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-    //Undo changes
-    rUndoManager.Undo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getColumns()->getCount());
-    //Redo changes
-    rUndoManager.Redo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-    //Undo changes
-    rUndoManager.Undo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getColumns()->getCount());
-    //Deleting the second column
-    pWrtShell->StartOfSection(); //moves the cursor to the start of Doc
-    pWrtShell->GoNextCell(); //moves the cursor to next cell
-    pWrtShell->SelTableCol(); //selects second column
-    pWrtShell->DeleteCol();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-    //Undo changes
-    rUndoManager.Undo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getColumns()->getCount());
-    //Redo changes
-    rUndoManager.Redo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-    //Undo changes
-    rUndoManager.Undo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getColumns()->getCount());
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf57197)
-{
-    SwDoc* pDoc = createSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-    //Inserting 1x1 Table
-    sw::UndoManager& rUndoManager = pDoc->GetUndoManager();
-    SwInsertTableOptions TableOpt(SwInsertTableFlags::DefaultBorder, 0);
-    pWrtShell->InsertTable(TableOpt, 1, 1);
-    //Checking for the number of rows and columns
-    uno::Reference<text::XTextTable> xTable(getParagraphOrTable(1), 
uno::UNO_QUERY);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-    //Inserting one row before the existing row
-    pWrtShell->StartOfSection(); //moves the cursor to the start of Doc
-    pWrtShell->InsertRow(1, false);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-    //Undo changes
-    rUndoManager.Undo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-    //Redo changes
-    rUndoManager.Redo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-    //Undo changes
-    rUndoManager.Undo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-    //Inserting one row after the existing row
-    pWrtShell->StartOfSection(); //moves the cursor to the start of Doc
-    pWrtShell->InsertRow(1, true);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-    //Undo changes
-    rUndoManager.Undo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-    //Redo changes
-    rUndoManager.Redo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-    //Undo changes
-    rUndoManager.Undo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-    //Inserting one column before the existing column
-    pWrtShell->StartOfSection(); //moves the cursor to the start of Doc
-    pWrtShell->InsertCol(1, false);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getColumns()->getCount());
-     //Undo changes
-    rUndoManager.Undo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-    //Redo changes
-    rUndoManager.Redo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getColumns()->getCount());
-    //Undo changes
-    rUndoManager.Undo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-    //Inserting one column after the existing column
-    pWrtShell->StartOfSection(); //moves the cursor to the start of Doc
-    pWrtShell->InsertCol(1, true);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getColumns()->getCount());
-    //Undo changes
-    rUndoManager.Undo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-    //Redo changes
-    rUndoManager.Redo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xTable->getColumns()->getCount());
-    //Undo changes
-    rUndoManager.Undo();
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf131990)
-{
-    SwDoc* pDoc = createSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-
-    CPPUNIT_ASSERT(!pWrtShell->Up( false, 1, true ));
-    CPPUNIT_ASSERT(!pWrtShell->Down( false, 1, true ));
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf90808)
-{
-    createSwDoc();
-    uno::Reference<text::XTextDocument> xTextDocument(mxComponent, 
uno::UNO_QUERY);
-    uno::Reference<text::XTextRange> xTextRange = xTextDocument->getText();
-    uno::Reference<text::XText> xText = xTextRange->getText();
-    uno::Reference<text::XParagraphCursor> xCursor(xText->createTextCursor(), 
uno::UNO_QUERY);
-    //inserting text into document so that the paragraph is not empty
-    xText->setString("Hello World!");
-    uno::Reference<lang::XMultiServiceFactory> xFact(mxComponent, 
uno::UNO_QUERY);
-    //creating bookmark 1
-    uno::Reference<text::XTextContent> 
xHeadingBookmark1(xFact->createInstance("com.sun.star.text.Bookmark"), 
uno::UNO_QUERY);
-    uno::Reference<container::XNamed> xHeadingName1(xHeadingBookmark1, 
uno::UNO_QUERY);
-    xHeadingName1->setName("__RefHeading__1");
-    //moving cursor to the starting of paragraph
-    xCursor->gotoStartOfParagraph(false);
-    //inserting the bookmark in paragraph
-    xText->insertTextContent(xCursor, xHeadingBookmark1, true);
-    //creating bookmark 2
-    uno::Reference<text::XTextContent> 
xHeadingBookmark2(xFact->createInstance("com.sun.star.text.Bookmark"), 
uno::UNO_QUERY);
-    uno::Reference<container::XNamed> xHeadingName2(xHeadingBookmark2, 
uno::UNO_QUERY);
-    xHeadingName2->setName("__RefHeading__2");
-    //inserting the bookmark in same paragraph, at the end
-    //only one bookmark of this type is allowed in each paragraph an exception 
of com.sun.star.lang.IllegalArgumentException must be thrown when inserting the 
other bookmark in same paragraph
-    xCursor->gotoEndOfParagraph(true);
-    CPPUNIT_ASSERT_THROW(xText->insertTextContent(xCursor, xHeadingBookmark2, 
true), css::lang::IllegalArgumentException);
-    //now testing for __RefNumPara__
-    //creating bookmark 1
-    uno::Reference<text::XTextContent> 
xNumBookmark1(xFact->createInstance("com.sun.star.text.Bookmark"), 
uno::UNO_QUERY);
-    uno::Reference<container::XNamed> xNumName1(xNumBookmark1, uno::UNO_QUERY);
-    xNumName1->setName("__RefNumPara__1");
-    //moving cursor to the starting of paragraph
-    xCursor->gotoStartOfParagraph(false);
-    //inserting the bookmark in paragraph
-    xText->insertTextContent(xCursor, xNumBookmark1, true);
-    //creating bookmark 2
-    uno::Reference<text::XTextContent> 
xNumBookmark2(xFact->createInstance("com.sun.star.text.Bookmark"), 
uno::UNO_QUERY);
-    uno::Reference<container::XNamed> xNumName2(xNumBookmark2, uno::UNO_QUERY);
-    xNumName2->setName("__RefNumPara__2");
-    //inserting the bookmark in same paragraph, at the end
-    //only one bookmark of this type is allowed in each paragraph an exception 
of com.sun.star.lang.IllegalArgumentException must be thrown when inserting the 
other bookmark in same paragraph
-    xCursor->gotoEndOfParagraph(true);
-    CPPUNIT_ASSERT_THROW(xText->insertTextContent(xCursor, xNumBookmark2, 
true), css::lang::IllegalArgumentException);
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf97601)
-{
-    // Instructions from the bugreport to trigger an infinite loop.
-    createSwDoc(DATA_DIRECTORY, "tdf97601.odt");
-    uno::Reference<text::XTextEmbeddedObjectsSupplier> 
xEmbeddedObjectsSupplier(mxComponent, uno::UNO_QUERY);
-    uno::Reference<container::XNameAccess> xEmbeddedObjects = 
xEmbeddedObjectsSupplier->getEmbeddedObjects();
-    uno::Reference<beans::XPropertySet> xChart;
-    xEmbeddedObjects->getByName("myChart") >>= xChart;
-    uno::Reference<chart2::data::XDataSource> xChartComponent;
-    xChart->getPropertyValue("Component") >>= xChartComponent;
-    uno::Sequence< uno::Reference<chart2::data::XLabeledDataSequence> > 
aDataSequences = xChartComponent->getDataSequences();
-    uno::Reference<document::XEmbeddedObjectSupplier2> xChartState(xChart, 
uno::UNO_QUERY);
-    xChartState->getExtendedControlOverEmbeddedObject()->changeState(1);
-    uno::Reference<util::XModifiable> 
xDataSequenceModifiable(aDataSequences[2]->getValues(), uno::UNO_QUERY);
-    xDataSequenceModifiable->setModified(true);
-
-    // Make sure that the chart is marked as modified.
-    uno::Reference<util::XModifiable> xModifiable(xChartComponent, 
uno::UNO_QUERY);
-    CPPUNIT_ASSERT_EQUAL(true, bool(xModifiable->isModified()));
-    calcLayout();
-    // This never returned.
-    Scheduler::ProcessEventsToIdle();
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf75137)
-{
-    SwDoc* pDoc = createSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-    SwShellCursor* pShellCursor = pWrtShell->getShellCursor(true);
-    pWrtShell->InsertFootnote("This is first footnote");
-    SwNodeOffset firstIndex = pShellCursor->GetNode().GetIndex();
-    pShellCursor->GotoFootnoteAnchor();
-    pWrtShell->InsertFootnote("This is second footnote");
-    pWrtShell->Up(false);
-    SwNodeOffset secondIndex = pShellCursor->GetNode().GetIndex();
-    pWrtShell->Down(false);
-    SwNodeOffset thirdIndex = pShellCursor->GetNode().GetIndex();
-    CPPUNIT_ASSERT_EQUAL(firstIndex, thirdIndex);
-    CPPUNIT_ASSERT(firstIndex != secondIndex);
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf83798)
-{
-    SwDoc* pDoc = createSwDoc(DATA_DIRECTORY, "tdf83798.odt");
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-    pWrtShell->GotoNextTOXBase();
-    const SwTOXBase* pTOXBase = pWrtShell->GetCurTOX();
-    pWrtShell->UpdateTableOf(*pTOXBase);
-    SwPaM* pCursor = pDoc->GetEditShell()->GetCursor();
-    pCursor->SetMark();
-    pCursor->Move(fnMoveForward, GoInNode);
-    pCursor->Move(fnMoveBackward, GoInContent);
-    CPPUNIT_ASSERT_EQUAL(OUString("Table of Contents"), pCursor->GetText());
-    pCursor->Move(fnMoveForward, GoInContent);
-    pCursor->DeleteMark();
-    pCursor->SetMark();
-    pCursor->Move(fnMoveForward, GoInContent);
-    CPPUNIT_ASSERT_EQUAL(OUString("1"), pCursor->GetText());
-    pCursor->DeleteMark();
-    pCursor->Move(fnMoveForward, GoInNode);
-    pCursor->SetMark();
-    pCursor->Move(fnMoveForward, GoInContent);
-    pCursor->Move(fnMoveForward, GoInContent);
-    pCursor->Move(fnMoveForward, GoInContent);
-    CPPUNIT_ASSERT_EQUAL(OUString("1.A"), pCursor->GetText());
-    pCursor->DeleteMark();
-    pCursor->Move(fnMoveForward, GoInNode);
-    pCursor->SetMark();
-    pCursor->Move(fnMoveForward, GoInContent);
-    CPPUNIT_ASSERT_EQUAL(OUString("2"), pCursor->GetText());
-    pCursor->DeleteMark();
-    pCursor->Move(fnMoveForward, GoInNode);
-    pCursor->SetMark();
-    pCursor->Move(fnMoveForward, GoInContent);
-    pCursor->Move(fnMoveForward, GoInContent);
-    pCursor->Move(fnMoveForward, GoInContent);
-    CPPUNIT_ASSERT_EQUAL(OUString("2.A"), pCursor->GetText());
-    pCursor->DeleteMark();
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf89714)
-{
-    createSwDoc();
-    uno::Reference<lang::XMultiServiceFactory> xFact(mxComponent, 
uno::UNO_QUERY);
-    uno::Reference<uno::XInterface> 
xInterface(xFact->createInstance("com.sun.star.text.Defaults"), uno::UNO_QUERY);
-    uno::Reference<beans::XPropertyState> xPropState(xInterface, 
uno::UNO_QUERY);
-    //enabled Paragraph Orphan and Widows by default starting in LO5.1
-    CPPUNIT_ASSERT_EQUAL( uno::makeAny(sal_Int8(2)), 
xPropState->getPropertyDefault("ParaOrphans") );
-    CPPUNIT_ASSERT_EQUAL( uno::makeAny(sal_Int8(2)), 
xPropState->getPropertyDefault("ParaWidows")  );
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf130287)
-{
-    //create a new writer document
-    SwDoc* pDoc = createSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-    //insert a 1-cell table in the newly created document
-    SwInsertTableOptions TableOpt(SwInsertTableFlags::DefaultBorder, 0);
-    pWrtShell->InsertTable(TableOpt, 1, 1);
-    //checking for the row and column
-    uno::Reference<text::XTextTable> xTable(getParagraphOrTable(1), 
uno::UNO_QUERY);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getColumns()->getCount());
-    uno::Reference<table::XCell> xCell = xTable->getCellByName("A1");
-    uno::Reference<text::XText> xCellText(xCell, uno::UNO_QUERY);
-    uno::Reference<text::XTextRange> xParagraph = getParagraphOfText(1, 
xCellText);
-    // they were 2 (orphan/widow control enabled unnecessarily in Table 
Contents paragraph style)
-    CPPUNIT_ASSERT_EQUAL( sal_Int8(0), getProperty<sal_Int8>(xParagraph, 
"ParaOrphans"));
-    CPPUNIT_ASSERT_EQUAL( sal_Int8(0), getProperty<sal_Int8>(xParagraph, 
"ParaWidows"));
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testPropertyDefaults)
-{
-    createSwDoc();
-    uno::Reference<lang::XMultiServiceFactory> xFact(mxComponent, 
uno::UNO_QUERY);
-    uno::Reference<uno::XInterface> 
xInterface(xFact->createInstance("com.sun.star.text.Defaults"), uno::UNO_QUERY);
-    uno::Reference<beans::XPropertySet> xPropSet(xInterface, 
uno::UNO_QUERY_THROW);
-    uno::Reference<beans::XPropertyState> xPropState(xInterface, 
uno::UNO_QUERY);
-    //testing CharFontName from style::CharacterProperties
-    //getting property default
-    uno::Any aCharFontName = xPropState->getPropertyDefault("CharFontName");
-    //asserting property default and defaults received from 
"css.text.Defaults" service
-    CPPUNIT_ASSERT_EQUAL(xPropSet->getPropertyValue("CharFontName"), 
aCharFontName);
-    //changing the default value
-    xPropSet->setPropertyValue("CharFontName", 
uno::makeAny(OUString("Symbol")));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(OUString("Symbol")), 
xPropSet->getPropertyValue("CharFontName"));
-    //resetting the value to default
-    xPropState->setPropertyToDefault("CharFontName");
-    CPPUNIT_ASSERT_EQUAL(xPropSet->getPropertyValue("CharFontName"), 
aCharFontName);
-    //testing CharHeight from style::CharacterProperties
-    //getting property default
-    uno::Any aCharHeight = xPropState->getPropertyDefault("CharHeight");
-    //asserting property default and defaults received from 
"css.text.Defaults" service
-    CPPUNIT_ASSERT_EQUAL(xPropSet->getPropertyValue("CharHeight"), 
aCharHeight);
-    //changing the default value
-    xPropSet->setPropertyValue("CharHeight", uno::makeAny(float(14)));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(float(14)), 
xPropSet->getPropertyValue("CharHeight"));
-    //resetting the value to default
-    xPropState->setPropertyToDefault("CharHeight");
-    CPPUNIT_ASSERT_EQUAL(xPropSet->getPropertyValue("CharHeight"), 
aCharHeight);
-    //testing CharWeight from style::CharacterProperties
-    uno::Any aCharWeight = xPropSet->getPropertyValue("CharWeight");
-    //changing the default value
-    xPropSet->setPropertyValue("CharWeight", 
uno::makeAny(float(awt::FontWeight::BOLD)));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(float(awt::FontWeight::BOLD)), 
xPropSet->getPropertyValue("CharWeight"));
-    //resetting the value to default
-    xPropState->setPropertyToDefault("CharWeight");
-    CPPUNIT_ASSERT_EQUAL(xPropSet->getPropertyValue("CharWeight"), 
aCharWeight);
-    //testing CharUnderline from style::CharacterProperties
-    uno::Any aCharUnderline = xPropSet->getPropertyValue("CharUnderline");
-    //changing the default value
-    xPropSet->setPropertyValue("CharUnderline", 
uno::makeAny(sal_Int16(awt::FontUnderline::SINGLE)));
-    CPPUNIT_ASSERT_EQUAL(uno::makeAny(sal_Int16(awt::FontUnderline::SINGLE)), 
xPropSet->getPropertyValue("CharUnderline"));
-    //resetting the value to default
-    xPropState->setPropertyToDefault("CharUnderline");
-    CPPUNIT_ASSERT_EQUAL(xPropSet->getPropertyValue("CharUnderline"), 
aCharUnderline);
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTableBackgroundColor)
-{
-    SwDoc* pDoc = createSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-    SwInsertTableOptions TableOpt(SwInsertTableFlags::DefaultBorder, 0);
-    pWrtShell->InsertTable(TableOpt, 3, 3); //Inserting Table
-    //Checking Rows and Columns of Inserted Table
-    uno::Reference<text::XTextTable> xTable(getParagraphOrTable(1), 
uno::UNO_QUERY);
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(3), xTable->getRows()->getCount());
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(3), xTable->getColumns()->getCount());
-    pWrtShell->StartOfSection();
-    pWrtShell->SelTableRow(); //Selecting First Row
-    pWrtShell->ClearMark();
-    //Modifying the color of Table Box
-    pWrtShell->SetBoxBackground(SvxBrushItem(Color(sal_Int32(0xFF00FF)), 
sal_Int16(RES_BACKGROUND)));
-    //Checking cells for background color only A1 should be modified
-    uno::Reference<table::XCell> xCell;
-    xCell = xTable->getCellByName("A1");
-    CPPUNIT_ASSERT_EQUAL(Color(0xFF00FF), Color(ColorTransparency, 
getProperty<sal_Int32>(xCell, "BackColor")));
-    xCell = xTable->getCellByName("A2");
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(-1), getProperty<sal_Int32>(xCell, 
"BackColor"));
-    xCell = xTable->getCellByName("A3");
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(-1), getProperty<sal_Int32>(xCell, 
"BackColor"));
-    xCell = xTable->getCellByName("B1");
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(-1), getProperty<sal_Int32>(xCell, 
"BackColor"));
-    xCell = xTable->getCellByName("B2");
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(-1), getProperty<sal_Int32>(xCell, 
"BackColor"));
-    xCell = xTable->getCellByName("B3");
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(-1), getProperty<sal_Int32>(xCell, 
"BackColor"));
-    xCell = xTable->getCellByName("C1");
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(-1), getProperty<sal_Int32>(xCell, 
"BackColor"));
-    xCell = xTable->getCellByName("C2");
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(-1), getProperty<sal_Int32>(xCell, 
"BackColor"));
-    xCell = xTable->getCellByName("C3");
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(-1), getProperty<sal_Int32>(xCell, 
"BackColor"));
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf88899)
-{
-    createSwDoc();
-    uno::Reference<document::XDocumentPropertiesSupplier> 
xDocumentPropertiesSupplier(mxComponent, uno::UNO_QUERY);
-    uno::Reference<document::XDocumentProperties> 
xProps(xDocumentPropertiesSupplier->getDocumentProperties());
-    uno::Reference<beans::XPropertyContainer> xUserProps = 
xProps->getUserDefinedProperties();
-    css::util::DateTime aDateTime = {sal_uInt32(1234567), sal_uInt16(3), 
sal_uInt16(3), sal_uInt16(3), sal_uInt16(10), sal_uInt16(11), sal_uInt16(2014), 
true};
-    xUserProps->addProperty("dateTime", 
sal_Int16(beans::PropertyAttribute::OPTIONAL), uno::makeAny(aDateTime));
-    uno::Reference<lang::XMultiServiceFactory> xFact(mxComponent, 
uno::UNO_QUERY);
-    uno::Reference<text::XTextField> 
xTextField(xFact->createInstance("com.sun.star.text.textfield.docinfo.Custom"), 
uno::UNO_QUERY);
-    //Setting Name Property
-    uno::Reference<beans::XPropertySet> xPropSet(xTextField, 
uno::UNO_QUERY_THROW);
-    xPropSet->setPropertyValue("Name", uno::makeAny(OUString("dateTime")));
-    //Setting NumberFormat
-    uno::Reference<util::XNumberFormatsSupplier> 
xNumberFormatsSupplier(mxComponent, uno::UNO_QUERY);
-    uno::Reference<util::XNumberFormatTypes> 
xNumFormat(xNumberFormatsSupplier->getNumberFormats(), uno::UNO_QUERY);
-    css::lang::Locale alocale;
-    alocale.Language = "en";
-    alocale.Country = "US";
-    sal_Int16 key = 
xNumFormat->getStandardFormat(util::NumberFormat::DATETIME, alocale);
-    xPropSet->setPropertyValue("NumberFormat", uno::makeAny(key));
-    //Inserting Text Content
-    uno::Reference<text::XTextDocument> xTextDocument(mxComponent, 
uno::UNO_QUERY);
-    uno::Reference<text::XTextRange> xTextRange = xTextDocument->getText();
-    uno::Reference<text::XText> xText = xTextRange->getText();
-    xText->insertTextContent(xTextRange, xTextField, true);
-    //Retrieving the contents for verification
-    CPPUNIT_ASSERT_EQUAL(OUString("11/10/14 03:03 AM"), 
xTextField->getPresentation(false));
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf90362)
-{
-    SwDoc* pDoc = createSwDoc(DATA_DIRECTORY, "tdf90362.fodt");
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-    // Ensure correct initial setting
-    std::shared_ptr<comphelper::ConfigurationChanges> batch(
-        comphelper::ConfigurationChanges::create());
-    officecfg::Office::Writer::Cursor::Option::IgnoreProtectedArea::set(false, 
batch);
-    batch->commit();
-    // First check if the end of the second paragraph is indeed protected.
-    pWrtShell->EndPara();
-    pWrtShell->Down(/*bSelect=*/false);
-    CPPUNIT_ASSERT_EQUAL(true, pWrtShell->HasReadonlySel());
-
-    // Then enable ignoring of protected areas and make sure that this time 
the cursor is read-write.
-    officecfg::Office::Writer::Cursor::Option::IgnoreProtectedArea::set(true, 
batch);
-    batch->commit();
-    CPPUNIT_ASSERT_EQUAL(false, pWrtShell->HasReadonlySel());
-    // Clean up, otherwise following tests will have that option set
-    officecfg::Office::Writer::Cursor::Option::IgnoreProtectedArea::set(false, 
batch);
-    batch->commit();
-}
-
-CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testUndoDelAsCharTdf107512)
-{
-    SwDoc * pDoc(createSwDoc());
-    sw::UndoManager & rUndoManager(pDoc->GetUndoManager());
-    IDocumentContentOperations & rIDCO(pDoc->getIDocumentContentOperations());
-    SwCursorShell * pShell(pDoc->GetEditShell());
-    SfxItemSet frameSet(pDoc->GetAttrPool(), svl::Items<RES_FRMATR_BEGIN, 
RES_FRMATR_END-1>);
-    SfxItemSet grfSet(pDoc->GetAttrPool(), svl::Items<RES_GRFATR_BEGIN, 
RES_GRFATR_END-1>);
-    rIDCO.InsertString(*pShell->GetCursor(), "foo");
-    pShell->ClearMark();
-    SwFormatAnchor anchor(RndStdIds::FLY_AS_CHAR);
-    frameSet.Put(anchor);
-    GraphicObject grf;
-    pShell->SttEndDoc(true);
-    CPPUNIT_ASSERT(rIDCO.InsertGraphicObject(*pShell->GetCursor(), grf, 
&frameSet, &grfSet));
-    pShell->SttEndDoc(false);
-    CPPUNIT_ASSERT(rIDCO.InsertGraphicObject(*pShell->GetCursor(), grf, 
&frameSet, &grfSet));
-    CPPUNIT_ASSERT_EQUAL(size_t(2), pDoc->GetFlyCount(FLYCNTTYPE_GRF));
-    SvxCharHiddenItem hidden(true, RES_CHRATR_HIDDEN);
-    pShell->SelectTextModel(1, 4);
-    rIDCO.InsertPoolItem(*pShell->GetCursor(), hidden);
-    // now we have "\1foo\1" with the "foo" hidden
-    
CPPUNIT_ASSERT(pShell->GetCursor()->GetNode().GetTextNode()->GetTextAttrForCharAt(0,
 RES_TXTATR_FLYCNT));
-    
CPPUNIT_ASSERT(pShell->GetCursor()->GetNode().GetTextNode()->GetTextAttrForCharAt(4,
 RES_TXTATR_FLYCNT));
-    CPPUNIT_ASSERT_EQUAL(OUString(OUStringChar(CH_TXTATR_BREAKWORD) + u"foo" + 
OUStringChar(CH_TXTATR_BREAKWORD)), 
pShell->GetCursor()->GetNode().GetTextNode()->GetText());
-    SfxPoolItem const* pItem;
-    SfxItemSet query(pDoc->GetAttrPool(), svl::Items<RES_CHRATR_HIDDEN, 
RES_CHRATR_HIDDEN>);
-    pShell->GetCursor()->GetNode().GetTextNode()->GetParaAttr(query, 1, 4);
-    CPPUNIT_ASSERT_EQUAL(SfxItemState::SET, 
query.GetItemState(RES_CHRATR_HIDDEN, false, &pItem));
-    CPPUNIT_ASSERT(static_cast<SvxCharHiddenItem const*>(pItem)->GetValue());
-    query.ClearItem(RES_CHRATR_HIDDEN);
-
-    // delete from the start
-    pShell->SelectTextModel(0, 4);
-    rIDCO.DeleteAndJoin(*pShell->GetCursor());
-    
CPPUNIT_ASSERT(pShell->GetCursor()->GetNode().GetTextNode()->GetTextAttrForCharAt(0,
 RES_TXTATR_FLYCNT));
-    CPPUNIT_ASSERT_EQUAL(size_t(1), pDoc->GetFlyCount(FLYCNTTYPE_GRF));
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), 
pShell->GetCursor()->GetNode().GetTextNode()->Len());
-    pShell->GetCursor()->GetNode().GetTextNode()->GetParaAttr(query, 0, 1);
-    CPPUNIT_ASSERT_EQUAL(SfxItemState::DEFAULT, 
query.GetItemState(RES_CHRATR_HIDDEN, false, &pItem));
-    query.ClearItem(RES_CHRATR_HIDDEN);
-    rUndoManager.Undo();
-    
CPPUNIT_ASSERT(pShell->GetCursor()->GetNode().GetTextNode()->GetTextAttrForCharAt(0,
 RES_TXTATR_FLYCNT));
-    
CPPUNIT_ASSERT(pShell->GetCursor()->GetNode().GetTextNode()->GetTextAttrForCharAt(4,
 RES_TXTATR_FLYCNT));
-    CPPUNIT_ASSERT_EQUAL(size_t(2), pDoc->GetFlyCount(FLYCNTTYPE_GRF));
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(5), 
pShell->GetCursor()->GetNode().GetTextNode()->Len());
-    CPPUNIT_ASSERT_EQUAL(OUString(OUStringChar(CH_TXTATR_BREAKWORD) + u"foo" + 
OUStringChar(CH_TXTATR_BREAKWORD)), 
pShell->GetCursor()->GetNode().GetTextNode()->GetText());
-    pShell->GetCursor()->GetNode().GetTextNode()->GetParaAttr(query, 0, 1);
-    CPPUNIT_ASSERT_EQUAL(SfxItemState::DEFAULT, 
query.GetItemState(RES_CHRATR_HIDDEN, false, &pItem));
-    query.ClearItem(RES_CHRATR_HIDDEN);
-    pShell->GetCursor()->GetNode().GetTextNode()->GetParaAttr(query, 1, 4);
-    CPPUNIT_ASSERT_EQUAL(SfxItemState::SET, 
query.GetItemState(RES_CHRATR_HIDDEN, false, &pItem));
-    CPPUNIT_ASSERT(static_cast<SvxCharHiddenItem const*>(pItem)->GetValue());
-    query.ClearItem(RES_CHRATR_HIDDEN);
-    rUndoManager.Redo();
-    
CPPUNIT_ASSERT(pShell->GetCursor()->GetNode().GetTextNode()->GetTextAttrForCharAt(0,
 RES_TXTATR_FLYCNT));
-    CPPUNIT_ASSERT_EQUAL(size_t(1), pDoc->GetFlyCount(FLYCNTTYPE_GRF));
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), 
pShell->GetCursor()->GetNode().GetTextNode()->Len());
-    pShell->GetCursor()->GetNode().GetTextNode()->GetParaAttr(query, 0, 1);
-    CPPUNIT_ASSERT_EQUAL(SfxItemState::DEFAULT, 
query.GetItemState(RES_CHRATR_HIDDEN, false, &pItem));
-    query.ClearItem(RES_CHRATR_HIDDEN);
-    rUndoManager.Undo();
-    
CPPUNIT_ASSERT(pShell->GetCursor()->GetNode().GetTextNode()->GetTextAttrForCharAt(0,
 RES_TXTATR_FLYCNT));
-    
CPPUNIT_ASSERT(pShell->GetCursor()->GetNode().GetTextNode()->GetTextAttrForCharAt(4,
 RES_TXTATR_FLYCNT));
-    CPPUNIT_ASSERT_EQUAL(size_t(2), pDoc->GetFlyCount(FLYCNTTYPE_GRF));
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(5), 
pShell->GetCursor()->GetNode().GetTextNode()->Len());
-    CPPUNIT_ASSERT_EQUAL(OUString(OUStringChar(CH_TXTATR_BREAKWORD) + u"foo" + 
OUStringChar(CH_TXTATR_BREAKWORD)), 
pShell->GetCursor()->GetNode().GetTextNode()->GetText());
-    pShell->GetCursor()->GetNode().GetTextNode()->GetParaAttr(query, 0, 1);
-    CPPUNIT_ASSERT_EQUAL(SfxItemState::DEFAULT, 
query.GetItemState(RES_CHRATR_HIDDEN, false, &pItem));
-    query.ClearItem(RES_CHRATR_HIDDEN);
-    pShell->GetCursor()->GetNode().GetTextNode()->GetParaAttr(query, 1, 4);
-    CPPUNIT_ASSERT_EQUAL(SfxItemState::SET, 
query.GetItemState(RES_CHRATR_HIDDEN, false, &pItem));
-    CPPUNIT_ASSERT(static_cast<SvxCharHiddenItem const*>(pItem)->GetValue());
-    query.ClearItem(RES_CHRATR_HIDDEN);
-
-    // delete from the end
-    pShell->SelectTextModel(1, 5);
-    rIDCO.DeleteAndJoin(*pShell->GetCursor());
-    
CPPUNIT_ASSERT(pShell->GetCursor()->GetNode().GetTextNode()->GetTextAttrForCharAt(0,
 RES_TXTATR_FLYCNT));
-    CPPUNIT_ASSERT_EQUAL(size_t(1), pDoc->GetFlyCount(FLYCNTTYPE_GRF));
-    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), 
pShell->GetCursor()->GetNode().GetTextNode()->Len());
-    pShell->GetCursor()->GetNode().GetTextNode()->GetParaAttr(query, 4, 5);
-    CPPUNIT_ASSERT_EQUAL(SfxItemState::DEFAULT, 
query.GetItemState(RES_CHRATR_HIDDEN, false, &pItem));

... etc. - the rest is truncated

Reply via email to