chart2/qa/extras/chart2export3.cxx  |  182 +++++++------------------------
 sw/qa/extras/uiwriter/uiwriter.cxx  |   20 +--
 sw/qa/extras/uiwriter/uiwriter2.cxx |   42 ++-----
 sw/qa/extras/uiwriter/uiwriter3.cxx |  207 ++++++++----------------------------
 sw/qa/extras/uiwriter/uiwriter5.cxx |    3 
 sw/qa/extras/uiwriter/uiwriter8.cxx |   42 +------
 6 files changed, 123 insertions(+), 373 deletions(-)

New commits:
commit bbe8dd159213db374a6d5ca03d9040d479bbe36e
Author:     Xisco Fauli <xiscofa...@libreoffice.org>
AuthorDate: Tue Feb 28 11:33:21 2023 +0100
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Tue Feb 28 14:28:55 2023 +0000

    CppunitTest_chart2_export3: use CPPUNIT_TEST_FIXTURE()
    
    This suite is large enough so that avoiding the
    declaration/registration/definition of each test manually saves a lot of
    space.
    
    Change-Id: I8f0017eccadf2ca5ea57ea3c1f8bea357b0c05f7
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/147961
    Tested-by: Jenkins
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>

diff --git a/chart2/qa/extras/chart2export3.cxx 
b/chart2/qa/extras/chart2export3.cxx
index dd081f8e5b9b..bdbef4bff2dd 100644
--- a/chart2/qa/extras/chart2export3.cxx
+++ b/chart2/qa/extras/chart2export3.cxx
@@ -29,98 +29,6 @@ protected:
     virtual void registerNamespaces(xmlXPathContextPtr& pXmlXPathCtx) override;
 public:
     Chart2ExportTest3() : ChartTest("/chart2/qa/extras/data/") {}
-
-    void testTdf108107();
-    void testTdf114139();
-    void testTdf64224();
-    void testChartTitlePropertiesColorFillDOCX();
-    void testChartTitlePropertiesGradientFillDOCX();
-    void testChartTitlePropertiesBitmapFillDOCX();
-    void testColorGradientWithTransparencyDOCX();
-    void testColorGradientWithTransparencyODS();
-    void testColorGradientStopXLSX();
-    void testRadialColorGradientDOCX();
-    void testBarChartDataPointPropDOCX();
-    void testFdo83058dlblPos();
-    void testAutoTitleDelXLSX();
-    void testDispBlanksAsXLSX();
-    void testMarkerColorXLSX();
-    void testRoundedCornersXLSX();
-    void testAxisNumberFormatXLSX();
-    void testDataPointLabelNumberFormatXLSX();
-    void testDataLabelDefaultValuesXLSX();
-    void testDataLabelFillColor();
-    void testTitleOverlayXLSX();
-    void testInvertIfNegativeXLSX();
-    void testBubble3DXLSX();
-    void testNoMarkerXLSX();
-    void testTitleManualLayoutXLSX();
-    void testPlotAreaManualLayoutXLSX();
-    void testLegendManualLayoutXLSX();
-    void testChartSubTitle();
-    void testChartMainWithSubTitle();
-    void testAutoTitleDeleted();
-    void testChartTitlePropertiesColorFillXLSX();
-    void testChartTitlePropertiesGradientFillXLSX();
-    void testChartTitlePropertiesBitmapFillXLSX();
-    void testBarChartDataPointPropXLSX();
-    void testDataseriesOverlapStackedChartXLSX();
-    void testAxisCharacterPropertiesXLSX();
-    void testTitleCharacterPropertiesXLSX();
-    void testPlotVisOnlyXLSX();
-    void testBarChartVaryColorsXLSX();
-    void testTdf96161();
-    void testTableOnPage3();
-    void testMultipleAxisXLSX();
-    void testSecondaryAxisXLSX();
-    void testBarChartSecondaryAxisXLSX();
-
-    CPPUNIT_TEST_SUITE(Chart2ExportTest3);
-    CPPUNIT_TEST(testTdf108107);
-    CPPUNIT_TEST(testTdf114139);
-    CPPUNIT_TEST(testTdf64224);
-    CPPUNIT_TEST(testChartTitlePropertiesColorFillDOCX);
-    CPPUNIT_TEST(testChartTitlePropertiesGradientFillDOCX);
-    CPPUNIT_TEST(testChartTitlePropertiesBitmapFillDOCX);
-    CPPUNIT_TEST(testColorGradientWithTransparencyDOCX);
-    CPPUNIT_TEST(testColorGradientWithTransparencyODS);
-    CPPUNIT_TEST(testColorGradientStopXLSX);
-    CPPUNIT_TEST(testRadialColorGradientDOCX);
-    CPPUNIT_TEST(testBarChartDataPointPropDOCX);
-    CPPUNIT_TEST(testFdo83058dlblPos);
-    CPPUNIT_TEST(testAutoTitleDelXLSX);
-    CPPUNIT_TEST(testDispBlanksAsXLSX);
-    CPPUNIT_TEST(testMarkerColorXLSX);
-    CPPUNIT_TEST(testRoundedCornersXLSX);
-    CPPUNIT_TEST(testAxisNumberFormatXLSX);
-    CPPUNIT_TEST(testDataPointLabelNumberFormatXLSX);
-    CPPUNIT_TEST(testDataLabelDefaultValuesXLSX);
-    CPPUNIT_TEST(testDataLabelFillColor);
-    CPPUNIT_TEST(testTitleOverlayXLSX);
-    CPPUNIT_TEST(testInvertIfNegativeXLSX);
-    CPPUNIT_TEST(testBubble3DXLSX);
-    CPPUNIT_TEST(testNoMarkerXLSX);
-    CPPUNIT_TEST(testTitleManualLayoutXLSX);
-    CPPUNIT_TEST(testPlotAreaManualLayoutXLSX);
-    CPPUNIT_TEST(testLegendManualLayoutXLSX);
-    CPPUNIT_TEST(testChartSubTitle);
-    CPPUNIT_TEST(testChartMainWithSubTitle);
-    CPPUNIT_TEST(testAutoTitleDeleted);
-    CPPUNIT_TEST(testChartTitlePropertiesColorFillXLSX);
-    CPPUNIT_TEST(testChartTitlePropertiesGradientFillXLSX);
-    CPPUNIT_TEST(testChartTitlePropertiesBitmapFillXLSX);
-    CPPUNIT_TEST(testBarChartDataPointPropXLSX);
-    CPPUNIT_TEST(testDataseriesOverlapStackedChartXLSX);
-    CPPUNIT_TEST(testAxisCharacterPropertiesXLSX);
-    CPPUNIT_TEST(testTitleCharacterPropertiesXLSX);
-    CPPUNIT_TEST(testPlotVisOnlyXLSX);
-    CPPUNIT_TEST(testBarChartVaryColorsXLSX);
-    CPPUNIT_TEST(testTdf96161);
-    CPPUNIT_TEST(testTableOnPage3);
-    CPPUNIT_TEST(testMultipleAxisXLSX);
-    CPPUNIT_TEST(testSecondaryAxisXLSX);
-    CPPUNIT_TEST(testBarChartSecondaryAxisXLSX);
-    CPPUNIT_TEST_SUITE_END();
 };
 
 void Chart2ExportTest3::registerNamespaces(xmlXPathContextPtr& pXmlXPathCtx)
@@ -128,7 +36,7 @@ void 
Chart2ExportTest3::registerNamespaces(xmlXPathContextPtr& pXmlXPathCtx)
     XmlTestTools::registerOOXMLNamespaces(pXmlXPathCtx);
 }
 
-void Chart2ExportTest3::testTdf108107()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testTdf108107)
 {
     loadFromURL(u"xlsx/tdf108107.xlsx");
 
@@ -142,7 +50,7 @@ void Chart2ExportTest3::testTdf108107()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:lineChart/c:ser/c:dLbls/c:dLbl[1]/c:txPr/a:p/a:pPr/a:defRPr",
 "sz", "2000");
 }
 
-void Chart2ExportTest3::testTdf114139()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testTdf114139)
 {
     loadFromURL(u"xlsx/tdf114139.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -154,7 +62,7 @@ void Chart2ExportTest3::testTdf114139()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:spPr/a:solidFill", 0);
 }
 
-void Chart2ExportTest3::testTdf64224()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testTdf64224)
 {
     loadFromURL(u"ods/tdf64224.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -165,7 +73,7 @@ void Chart2ExportTest3::testTdf64224()
     assertXPath(pXmlDoc, "/c:chartSpace/c:spPr/a:solidFill", 0);
 }
 
-void Chart2ExportTest3::testChartTitlePropertiesColorFillDOCX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testChartTitlePropertiesColorFillDOCX)
 {
     loadFromURL(u"docx/testChartTitlePropertiesColorFill.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart","Office Open XML 
Text");
@@ -174,7 +82,7 @@ void 
Chart2ExportTest3::testChartTitlePropertiesColorFillDOCX()
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:title/c:spPr/a:ln/a:noFill", 
1);
 }
 
-void Chart2ExportTest3::testChartTitlePropertiesGradientFillDOCX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, 
testChartTitlePropertiesGradientFillDOCX)
 {
     loadFromURL(u"docx/testChartTitlePropertiesGradientFill.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart","Office Open XML 
Text");
@@ -184,7 +92,7 @@ void 
Chart2ExportTest3::testChartTitlePropertiesGradientFillDOCX()
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:title/c:spPr/a:ln/a:noFill", 
1);
 }
 
-void Chart2ExportTest3::testChartTitlePropertiesBitmapFillDOCX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testChartTitlePropertiesBitmapFillDOCX)
 {
     loadFromURL(u"docx/testChartTitlePropertiesBitmapFill.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart","Office Open XML 
Text");
@@ -194,7 +102,7 @@ void 
Chart2ExportTest3::testChartTitlePropertiesBitmapFillDOCX()
 }
 
 
-void Chart2ExportTest3::testColorGradientWithTransparencyDOCX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testColorGradientWithTransparencyDOCX)
 {
     // Test color gradient (two color) with gradient transparency
     loadFromURL(u"docx/testColorGradientWithTransparency.docx");
@@ -206,7 +114,7 @@ void 
Chart2ExportTest3::testColorGradientWithTransparencyDOCX()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:spPr/a:gradFill/a:gsLst/a:gs[2]/a:srgbClr/a:alpha",
 "val", "90196");
 }
 
-void Chart2ExportTest3::testColorGradientWithTransparencyODS()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testColorGradientWithTransparencyODS)
 {
     // Test color gradient (two color) with simple transparency
     loadFromURL(u"ods/testColorGradientWithTransparency.ods");
@@ -218,7 +126,7 @@ void 
Chart2ExportTest3::testColorGradientWithTransparencyODS()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:spPr/a:gradFill/a:gsLst/a:gs[2]/a:srgbClr/a:alpha",
 "val", "60000");
 }
 
-void Chart2ExportTest3::testColorGradientStopXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testColorGradientStopXLSX)
 {
     // Test color gradient (two color) stop of the first color
     loadFromURL(u"xlsx/tdf128619.xlsx");
@@ -230,7 +138,7 @@ void Chart2ExportTest3::testColorGradientStopXLSX()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:spPr/a:gradFill/a:gsLst/a:gs[2]",
 "pos", "100000");
 }
 
-void Chart2ExportTest3::testRadialColorGradientDOCX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testRadialColorGradientDOCX)
 {
     loadFromURL(u"docx/tdf128794.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
@@ -241,7 +149,7 @@ void Chart2ExportTest3::testRadialColorGradientDOCX()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:spPr/a:gradFill/a:lin", "ang", "13500000");
 }
 
-void Chart2ExportTest3::testBarChartDataPointPropDOCX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testBarChartDataPointPropDOCX)
 {
     loadFromURL(u"docx/testBarChartDataPointPropDOCX.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
@@ -259,7 +167,7 @@ void Chart2ExportTest3::testBarChartDataPointPropDOCX()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[2]/c:spPr/a:ln/a:solidFill/a:srgbClr",
 "val", "000000");
 }
 
-void Chart2ExportTest3::testFdo83058dlblPos()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testFdo83058dlblPos)
 {
     loadFromURL(u"docx/fdo83058_dlblPos.docx");
 
@@ -274,7 +182,7 @@ void Chart2ExportTest3::testFdo83058dlblPos()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser[1]/c:dLbls[1]/c:dLbl[5]/c:dLblPos",
 "val", "outEnd");
 }
 
-void Chart2ExportTest3::testAutoTitleDelXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testAutoTitleDelXLSX)
 {
     loadFromURL(u"xlsx/autotitledel_2007.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart","Calc Office Open 
XML");
@@ -282,7 +190,7 @@ void Chart2ExportTest3::testAutoTitleDelXLSX()
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:autoTitleDeleted", "val", 
"0");
 }
 
-void Chart2ExportTest3::testDispBlanksAsXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testDispBlanksAsXLSX)
 {
     loadFromURL(u"xlsx/dispBlanksAs_2007.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart","Calc Office Open 
XML");
@@ -290,7 +198,7 @@ void Chart2ExportTest3::testDispBlanksAsXLSX()
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:dispBlanksAs", "val", "gap");
 }
 
-void Chart2ExportTest3::testMarkerColorXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testMarkerColorXLSX)
 {
     loadFromURL(u"xlsx/markerColor.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -298,7 +206,7 @@ void Chart2ExportTest3::testMarkerColorXLSX()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser/c:marker/c:spPr/a:solidFill/a:srgbClr",
 "val", "92d050");
 }
 
-void Chart2ExportTest3::testRoundedCornersXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testRoundedCornersXLSX)
 {
     loadFromURL(u"xlsx/markerColor.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -306,7 +214,7 @@ void Chart2ExportTest3::testRoundedCornersXLSX()
     assertXPath(pXmlDoc, "/c:chartSpace/c:roundedCorners", "val", "0");
 }
 
-void Chart2ExportTest3::testAxisNumberFormatXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testAxisNumberFormatXLSX)
 {
     loadFromURL(u"ods/axis_number_format.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -319,7 +227,7 @@ void Chart2ExportTest3::testAxisNumberFormatXLSX()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:valAx[2]/c:numFmt", "sourceLinked", "1");
 }
 
-void Chart2ExportTest3::testDataPointLabelNumberFormatXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testDataPointLabelNumberFormatXLSX)
 {
     // FIXME: validation error in OOXML export: Errors: 1
     skipValidation();
@@ -345,7 +253,7 @@ void Chart2ExportTest3::testDataPointLabelNumberFormatXLSX()
     }
 }
 
-void Chart2ExportTest3::testDataLabelDefaultValuesXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testDataLabelDefaultValuesXLSX)
 {
     loadFromURL(u"xlsx/data_label.xlsx");
     Reference< chart2::XChartDocument> xDoc = getChartDocFromSheet(0, 
mxComponent);
@@ -362,7 +270,7 @@ void Chart2ExportTest3::testDataLabelDefaultValuesXLSX()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dLbls/c:dLblPos", "val", 
"outEnd");
 }
 
-void Chart2ExportTest3::testDataLabelFillColor()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testDataLabelFillColor)
 {
     loadFromURL(u"xlsx/data_labels_fill_color.xlsx");
     Reference< chart2::XChartDocument> xDoc = getChartDocFromSheet(0, 
mxComponent);
@@ -377,7 +285,7 @@ void Chart2ExportTest3::testDataLabelFillColor()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dLbls/c:spPr/a:solidFill/a:srgbClr",
 "val", "F79646");
 }
 
-void Chart2ExportTest3::testTitleOverlayXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testTitleOverlayXLSX)
 {
     loadFromURL(u"xlsx/chart_title.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -385,7 +293,7 @@ void Chart2ExportTest3::testTitleOverlayXLSX()
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:title/c:overlay", "val", 
"0");
 }
 
-void Chart2ExportTest3::testInvertIfNegativeXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testInvertIfNegativeXLSX)
 {
     loadFromURL(u"xlsx/bar_chart_simple.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -393,7 +301,7 @@ void Chart2ExportTest3::testInvertIfNegativeXLSX()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:invertIfNegative", "val", 
"0");
 }
 
-void Chart2ExportTest3::testBubble3DXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testBubble3DXLSX)
 {
     loadFromURL(u"xlsx/bubble_chart_simple.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -403,7 +311,7 @@ void Chart2ExportTest3::testBubble3DXLSX()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:bubbleChart/c:ser[3]/c:bubble3D", "val", 
"0");
 }
 
-void Chart2ExportTest3::testNoMarkerXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testNoMarkerXLSX)
 {
     loadFromURL(u"xlsx/no_marker.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -413,7 +321,7 @@ void Chart2ExportTest3::testNoMarkerXLSX()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:lineChart/c:marker", "val", "0");
 }
 
-void Chart2ExportTest3::testTitleManualLayoutXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testTitleManualLayoutXLSX)
 {
     loadFromURL(u"xlsx/title_manual_layout.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -436,7 +344,7 @@ void Chart2ExportTest3::testTitleManualLayoutXLSX()
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:bodyPr", 
"rot", "1200000");
 }
 
-void Chart2ExportTest3::testPlotAreaManualLayoutXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testPlotAreaManualLayoutXLSX)
 {
     loadFromURL(u"xlsx/plot_area_manual_layout.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -469,7 +377,7 @@ void Chart2ExportTest3::testPlotAreaManualLayoutXLSX()
     CPPUNIT_ASSERT(nH != nW);
 }
 
-void Chart2ExportTest3::testLegendManualLayoutXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testLegendManualLayoutXLSX)
 {
     loadFromURL(u"xlsx/legend_manual_layout.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -505,7 +413,7 @@ void Chart2ExportTest3::testLegendManualLayoutXLSX()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:legend/c:txPr/a:p/a:pPr/a:defRPr", "sz", "900");
 }
 
-void Chart2ExportTest3::testChartSubTitle()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testChartSubTitle)
 {
     loadFromURL(u"ods/testChartSubTitle.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -519,7 +427,7 @@ void Chart2ExportTest3::testChartSubTitle()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:solidFill/a:srgbClr", "val", "b2b2b2");
 }
 
-void Chart2ExportTest3::testChartMainWithSubTitle()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testChartMainWithSubTitle)
 {
     loadFromURL(u"ods/testChartMainWithSubTitle.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -534,7 +442,7 @@ void Chart2ExportTest3::testChartMainWithSubTitle()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:solidFill/a:srgbClr", "val", "81d41a");
 }
 
-void Chart2ExportTest3::testAutoTitleDeleted()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testAutoTitleDeleted)
 {
     loadFromURL(u"xlsx/testAutoTitleDeleted.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -542,7 +450,7 @@ void Chart2ExportTest3::testAutoTitleDeleted()
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:autoTitleDeleted", "val", 
"1");
 }
 
-void Chart2ExportTest3::testChartTitlePropertiesColorFillXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testChartTitlePropertiesColorFillXLSX)
 {
     loadFromURL(u"xlsx/testChartTitlePropertiesColorFill.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -551,7 +459,7 @@ void 
Chart2ExportTest3::testChartTitlePropertiesColorFillXLSX()
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:title/c:spPr/a:ln/a:noFill", 
1);
 }
 
-void Chart2ExportTest3::testChartTitlePropertiesGradientFillXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, 
testChartTitlePropertiesGradientFillXLSX)
 {
     loadFromURL(u"xlsx/testChartTitlePropertiesGradientFill.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -561,7 +469,7 @@ void 
Chart2ExportTest3::testChartTitlePropertiesGradientFillXLSX()
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:title/c:spPr/a:ln/a:noFill", 
1);
 }
 
-void Chart2ExportTest3::testChartTitlePropertiesBitmapFillXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testChartTitlePropertiesBitmapFillXLSX)
 {
     loadFromURL(u"xlsx/testChartTitlePropertiesBitmapFill.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -570,7 +478,7 @@ void 
Chart2ExportTest3::testChartTitlePropertiesBitmapFillXLSX()
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:title/c:spPr/a:ln/a:noFill", 
1);
 }
 
-void Chart2ExportTest3::testBarChartDataPointPropXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testBarChartDataPointPropXLSX)
 {
     loadFromURL(u"xlsx/testBarChartDataPointPropXLSX.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -626,7 +534,7 @@ void checkSheetForGapWidthAndOverlap(uno::Reference< 
chart2::XChartDocument > co
 
 }
 
-void Chart2ExportTest3::testDataseriesOverlapStackedChartXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testDataseriesOverlapStackedChartXLSX)
 {
     loadFromURL(u"xlsx/testDataseriesOverlapStackedChart.xlsx");
 
@@ -647,7 +555,7 @@ void 
Chart2ExportTest3::testDataseriesOverlapStackedChartXLSX()
     checkSheetForGapWidthAndOverlap(xChartDoc, 100, 100);
 }
 
-void Chart2ExportTest3::testAxisCharacterPropertiesXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testAxisCharacterPropertiesXLSX)
 {
     loadFromURL(u"xlsx/axis_character_properties.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -664,7 +572,7 @@ void Chart2ExportTest3::testAxisCharacterPropertiesXLSX()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:valAx/c:txPr/a:p/a:pPr/a:defRPr/a:solidFill/a:srgbClr",
 "val", "ff0000");
 }
 
-void Chart2ExportTest3::testTitleCharacterPropertiesXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testTitleCharacterPropertiesXLSX)
 {
     loadFromURL(u"xlsx/title_character_properties.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -677,7 +585,7 @@ void Chart2ExportTest3::testTitleCharacterPropertiesXLSX()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p/a:r/a:rPr", "b", "1");
 }
 
-void Chart2ExportTest3::testPlotVisOnlyXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testPlotVisOnlyXLSX)
 {
     loadFromURL(u"xlsx/hidden_cells.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -686,7 +594,7 @@ void Chart2ExportTest3::testPlotVisOnlyXLSX()
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotVisOnly", "val", "0");
 }
 
-void Chart2ExportTest3::testBarChartVaryColorsXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testBarChartVaryColorsXLSX)
 {
     loadFromURL(u"xlsx/tdf90876.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -695,7 +603,7 @@ void Chart2ExportTest3::testBarChartVaryColorsXLSX()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:varyColors", "val", "0");
 }
 
-void Chart2ExportTest3::testTdf96161()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testTdf96161)
 {
     loadFromURL(u"ods/tdf96161.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -704,7 +612,7 @@ void Chart2ExportTest3::testTdf96161()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:lineChart/c:varyColors", "val", "0");
 }
 
-void Chart2ExportTest3::testTableOnPage3()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testTableOnPage3)
 {
     loadFromURL(u"docx/TableOnPage3.docx");
 
@@ -724,7 +632,7 @@ void Chart2ExportTest3::testTableOnPage3()
     CPPUNIT_ASSERT_EQUAL(OUString("If oversubscription relative to allowance 
holds steady at average oversubscription level B15-B17"), aColumnDesc[3]);
 }
 
-void Chart2ExportTest3::testMultipleAxisXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testMultipleAxisXLSX)
 {
     loadFromURL(u"ods/multiple_axis.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -739,7 +647,7 @@ void Chart2ExportTest3::testMultipleAxisXLSX()
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:valAx/c:axPos[@val='r']", 1);
 }
 
-void Chart2ExportTest3::testSecondaryAxisXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testSecondaryAxisXLSX)
 {
     loadFromURL(u"ods/secondary_axis.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -755,7 +663,7 @@ void Chart2ExportTest3::testSecondaryAxisXLSX()
     assertXPathContent(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:lineChart[2]/c:ser[1]/c:tx/c:strRef/c:strCache/c:pt/c:v",
 "a");
 }
 
-void Chart2ExportTest3::testBarChartSecondaryAxisXLSX()
+CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testBarChartSecondaryAxisXLSX)
 {
     loadFromURL(u"xlsx/testSecondaryAxis.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
@@ -773,8 +681,6 @@ void Chart2ExportTest3::testBarChartSecondaryAxisXLSX()
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:valAx[2]/c:axId", 
"val", YValueIdOf2Barchart);
 }
 
-CPPUNIT_TEST_SUITE_REGISTRATION(Chart2ExportTest3);
-
 CPPUNIT_PLUGIN_IMPLEMENT();
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
commit 6ee7245960837b6376b49f7c33eef966770022f4
Author:     Xisco Fauli <xiscofa...@libreoffice.org>
AuthorDate: Tue Feb 28 10:44:12 2023 +0100
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Tue Feb 28 14:28:41 2023 +0000

    CppunitTest_sw_uiwriter*: use uno commands for copy/cut/paste
    
    In order to unify the code and to make sure
    Scheduler::ProcessEventsToIdle() is always called afterwards
    See 9027920783dd04db925c41b559abe6442cedf39e
    "improve reliability of CppunitTest_sw_uiwriter3
    something in the paste stuff seems to need UI events to be
    processed"
    
    Initially, these uno commands were replaced in
    9d08a0cea018226ce155104d8df146dc2a412aac
    "avoid uno:Paste in tests
    clipboard is a shared resource (except for svp) so interleaved
    tests are not guaranteed to get out what they put in"
    
    However, this is no longer a problem since
    e25ba7dc57229d1cb9794abd1ca23c0d87ebecb3
    "use a dummy clipboard when running unit tests
    so the multiple unit tests don't stomp on each other.
    
    This fixes a couple of things in my earlier attempt
    (*) actually set the env variable on Windows
    (*) don't use a global variable to test the env var, because that
    variable might be initialised BEFORE the env var is actually set"
    
    Change-Id: Ifae66e522b0a1e57fa1fa6d16980c6491b397f7c
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/147957
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>
    Tested-by: Jenkins
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>

diff --git a/sw/qa/extras/uiwriter/uiwriter.cxx 
b/sw/qa/extras/uiwriter/uiwriter.cxx
index d9ded7755c9f..654f1f3d2281 100644
--- a/sw/qa/extras/uiwriter/uiwriter.cxx
+++ b/sw/qa/extras/uiwriter/uiwriter.cxx
@@ -225,8 +225,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf149595)
     {
         pWrtShell->Down(false);
         pWrtShell->EndPara(/*bSelect=*/true);
-        rtl::Reference<SwTransferable> pTransfer = new 
SwTransferable(*pWrtShell);
-        pTransfer->Cut();
+        dispatchCommand(mxComponent, ".uno:Cut", {});
 
         // one shape is anchored in the middle, others at the start/end/at-para
         
CPPUNIT_ASSERT(pWrtShell->GetLayout()->GetLower()->GetLower()->GetLower()->GetDrawObjs()
 == nullptr);
@@ -234,8 +233,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf149595)
         CPPUNIT_ASSERT_EQUAL(size_t(3), 
pWrtShell->GetLayout()->GetLower()->GetLower()->GetLower()->GetNext()->GetDrawObjs()->size());
 
         pWrtShell->Up(false);
-        TransferableDataHelper aHelper(pTransfer);
-        SwTransferable::Paste(*pWrtShell, aHelper);
+        dispatchCommand(mxComponent, ".uno:Paste", {});
 
         
CPPUNIT_ASSERT(pWrtShell->GetLayout()->GetLower()->GetLower()->GetLower()->GetDrawObjs()
 != nullptr);
         CPPUNIT_ASSERT_EQUAL(size_t(1), 
pWrtShell->GetLayout()->GetLower()->GetLower()->GetLower()->GetDrawObjs()->size());
@@ -257,8 +255,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf149595)
         pWrtShell->Down(false);
         pWrtShell->SttPara(/*bSelect=*/false);
         pWrtShell->EndPara(/*bSelect=*/true);
-        rtl::Reference<SwTransferable> pTransfer = new 
SwTransferable(*pWrtShell);
-        pTransfer->Cut();
+        dispatchCommand(mxComponent, ".uno:Cut", {});
 
         
CPPUNIT_ASSERT(pWrtShell->GetLayout()->GetLower()->GetLower()->GetLower()->GetDrawObjs()
 == nullptr);
         
CPPUNIT_ASSERT(pWrtShell->GetLayout()->GetLower()->GetLower()->GetLower()->GetNext()->GetDrawObjs()
 != nullptr);
@@ -266,8 +263,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf149595)
         CPPUNIT_ASSERT_EQUAL(size_t(3), 
pWrtShell->GetLayout()->GetLower()->GetLower()->GetLower()->GetNext()->GetDrawObjs()->size());
 
         pWrtShell->Up(false);
-        TransferableDataHelper aHelper(pTransfer);
-        SwTransferable::Paste(*pWrtShell, aHelper);
+        dispatchCommand(mxComponent, ".uno:Paste", {});
 
         
CPPUNIT_ASSERT(pWrtShell->GetLayout()->GetLower()->GetLower()->GetLower()->GetDrawObjs()
 != nullptr);
         CPPUNIT_ASSERT_EQUAL(size_t(1), 
pWrtShell->GetLayout()->GetLower()->GetLower()->GetLower()->GetDrawObjs()->size());
@@ -314,16 +310,12 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf149548)
         }
     }
 
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> pTransfer = new SwTransferable(*pWrtShell);
-    pTransfer->Copy();
+    dispatchCommand(mxComponent, ".uno:Copy", {});
 
-    TransferableDataHelper aHelper(pTransfer);
     // this was a use-after-free on nodes deleted by Copy
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Paste", {});
 }
 
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testBookmarkCopy)
diff --git a/sw/qa/extras/uiwriter/uiwriter2.cxx 
b/sw/qa/extras/uiwriter/uiwriter2.cxx
index c3f20d2f1390..8cd8c9176742 100644
--- a/sw/qa/extras/uiwriter/uiwriter2.cxx
+++ b/sw/qa/extras/uiwriter/uiwriter2.cxx
@@ -146,8 +146,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest2, testTdf101534)
     SwDoc* pDoc = getSwDoc();
     SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
     pWrtShell->EndPara(/*bSelect=*/true);
-    rtl::Reference<SwTransferable> pTransfer = new SwTransferable(*pWrtShell);
-    pTransfer->Copy();
+    dispatchCommand(mxComponent, ".uno:Copy", {});
 
     // Go to the second paragraph, assert that we have margins as direct
     // formatting.
@@ -161,8 +160,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest2, testTdf101534)
 
     // Make sure that direct formatting is preserved during paste.
     pWrtShell->EndPara(/*bSelect=*/false);
-    TransferableDataHelper aHelper(pTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Paste", {});
     aSet.ClearItem();
     pWrtShell->GetCurAttr(aSet);
     // This failed, direct formatting was lost.
@@ -413,7 +411,6 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest2, testTdf136704)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest2, testTdf134250)
 {
     createSwDoc("tdf134250.fodt");
-    SwDoc* pDoc = getSwDoc();
 
     uno::Reference<text::XTextTablesSupplier> xTextTablesSupplier(mxComponent, 
uno::UNO_QUERY);
     uno::Reference<container::XIndexAccess> 
xTables(xTextTablesSupplier->getTextTables(),
@@ -435,16 +432,9 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest2, testTdf134250)
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    // .uno:Copy without touching shared clipboard
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Copy();
-
-    // .uno:Paste without touching shared clipboard
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Copy", {});
 
-    Scheduler::ProcessEventsToIdle();
+    dispatchCommand(mxComponent, ".uno:Paste", {});
 
     CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTables->getCount());
     CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xSections->getCount());
@@ -1341,8 +1331,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest2, testTdf54819)
     SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
     pWrtShell->EndPara(/*bSelect=*/true);
     pWrtShell->Right(SwCursorSkipMode::Chars, /*bSelect=*/true, 1, 
/*bBasicCall=*/false);
-    rtl::Reference<SwTransferable> pTransfer = new SwTransferable(*pWrtShell);
-    pTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     // remaining paragraph keeps its original style
     CPPUNIT_ASSERT_EQUAL(OUString("Standard"),
@@ -1388,8 +1377,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest2, 
testTdf54819_keep_numbering_with_Undo)
     pWrtShell->Down(/*bSelect=*/false);
     pWrtShell->EndPara(/*bSelect=*/true);
     pWrtShell->Right(SwCursorSkipMode::Chars, /*bSelect=*/true, 1, 
/*bBasicCall=*/false);
-    rtl::Reference<SwTransferable> pTransfer = new SwTransferable(*pWrtShell);
-    pTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     // solved problem: changing paragraph style after deletion
     CPPUNIT_ASSERT_EQUAL(OUString("Standard"),
@@ -1483,8 +1471,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest2, 
testTdf119571_keep_numbering_with_Undo)
     pWrtShell->Right(SwCursorSkipMode::Chars, /*bSelect=*/true, 2, 
/*bBasicCall=*/false);
     pWrtShell->EndPara(/*bSelect=*/true);
     pWrtShell->Right(SwCursorSkipMode::Chars, /*bSelect=*/true, 1, 
/*bBasicCall=*/false);
-    rtl::Reference<SwTransferable> pTransfer = new SwTransferable(*pWrtShell);
-    pTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     // solved problem: changing paragraph style after deletion
     CPPUNIT_ASSERT_EQUAL(OUString("Heading 1"),
@@ -1586,8 +1573,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest2, 
testTdf119571_keep_numbering_with_Reject)
     pWrtShell->Right(SwCursorSkipMode::Chars, /*bSelect=*/true, 2, 
/*bBasicCall=*/false);
     pWrtShell->EndPara(/*bSelect=*/true);
     pWrtShell->Right(SwCursorSkipMode::Chars, /*bSelect=*/true, 1, 
/*bBasicCall=*/false);
-    rtl::Reference<SwTransferable> pTransfer = new SwTransferable(*pWrtShell);
-    pTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     // solved problem: changing paragraph style after deletion
     CPPUNIT_ASSERT_EQUAL(OUString("Heading 1"),
@@ -2016,8 +2002,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest2, testTdf119571)
     pWrtShell->Right(SwCursorSkipMode::Chars, /*bSelect=*/false, 1, 
/*bBasicCall=*/false);
     pWrtShell->EndPara(/*bSelect=*/true);
     pWrtShell->Right(SwCursorSkipMode::Chars, /*bSelect=*/true, 1, 
/*bBasicCall=*/false);
-    rtl::Reference<SwTransferable> pTransfer = new SwTransferable(*pWrtShell);
-    pTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     // second paragraph changes its style in "Show changes" mode
     CPPUNIT_ASSERT_EQUAL(OUString("Heading 1"),
@@ -2050,8 +2035,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest2, testTdf144058)
     pWrtShell->Down(/*bSelect=*/true);
     pWrtShell->Down(/*bSelect=*/true);
     pWrtShell->Down(/*bSelect=*/true);
-    rtl::Reference<SwTransferable> pTransfer = new SwTransferable(*pWrtShell);
-    pTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     // accept all: tables are deleted
     dispatchCommand(mxComponent, ".uno:AcceptAllTrackedChanges", {});
@@ -2103,8 +2087,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest2, testTdf119019)
     pWrtShell->Down(/*bSelect=*/false);
     pWrtShell->EndPara(/*bSelect=*/false);
     pWrtShell->Left(SwCursorSkipMode::Chars, /*bSelect=*/true, 7, 
/*bBasicCall=*/false);
-    rtl::Reference<SwTransferable> pTransfer = new SwTransferable(*pWrtShell);
-    pTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     // check tracked text deletion
     CPPUNIT_ASSERT_EQUAL(OUString("tellus."), getRun(getParagraph(2), 
3)->getString());
@@ -2144,8 +2127,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest2, testTdf119824)
     pWrtShell->Down(/*bSelect=*/false);
     pWrtShell->EndPara(/*bSelect=*/false);
     pWrtShell->Left(SwCursorSkipMode::Chars, /*bSelect=*/true, 5, 
/*bBasicCall=*/false);
-    rtl::Reference<SwTransferable> pTransfer = new SwTransferable(*pWrtShell);
-    pTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     // check tracking of the new text deletion
     CPPUNIT_ASSERT_EQUAL(OUString("orci."), getRun(getParagraph(3), 
7)->getString());
diff --git a/sw/qa/extras/uiwriter/uiwriter3.cxx 
b/sw/qa/extras/uiwriter/uiwriter3.cxx
index df6ef8268df3..f81232ddca62 100644
--- a/sw/qa/extras/uiwriter/uiwriter3.cxx
+++ b/sw/qa/extras/uiwriter/uiwriter3.cxx
@@ -532,22 +532,18 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf148868)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf129382)
 {
     createSwDoc("tdf129382.docx");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     CPPUNIT_ASSERT_EQUAL(8, getShapes());
     CPPUNIT_ASSERT_EQUAL(2, getPages());
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     CPPUNIT_ASSERT_EQUAL(3, getShapes());
     CPPUNIT_ASSERT_EQUAL(1, getPages());
 
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Paste", {});
 
     CPPUNIT_ASSERT_EQUAL(8, getShapes());
     CPPUNIT_ASSERT_EQUAL(2, getPages());
@@ -563,20 +559,16 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf129382)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf135662)
 {
     createSwDoc("tdf135662.odt");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     CPPUNIT_ASSERT_EQUAL(2, getShapes());
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     CPPUNIT_ASSERT_EQUAL(0, getShapes());
 
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Paste", {});
 
     // Without the fix in place, this test would have failed with
     // - Expected: 2
@@ -587,8 +579,6 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf135662)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf134227)
 {
     createSwDoc("tdf134227.docx");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     CPPUNIT_ASSERT_EQUAL(4, getShapes());
 
@@ -596,13 +586,11 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf134227)
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
     // Without the fix in place, it would have crashed here
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     CPPUNIT_ASSERT_EQUAL(0, getShapes());
 
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Paste", {});
 
     CPPUNIT_ASSERT_EQUAL(4, getShapes());
 
@@ -629,8 +617,6 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf139638)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf135412)
 {
     createSwDoc("tdf135412.docx");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     CPPUNIT_ASSERT_EQUAL(4, getShapes());
     uno::Reference<text::XTextRange> xShape(getShape(1), uno::UNO_QUERY);
@@ -638,13 +624,11 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf135412)
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     CPPUNIT_ASSERT_EQUAL(0, getShapes());
 
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Paste", {});
 
     CPPUNIT_ASSERT_EQUAL(4, getShapes());
 
@@ -756,8 +740,6 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf135061)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf132911)
 {
     createSwDoc("tdf132911.odt");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     uno::Reference<text::XTextTablesSupplier> xTextTablesSupplier(mxComponent, 
uno::UNO_QUERY);
     uno::Reference<container::XIndexAccess> 
xIndexAccess(xTextTablesSupplier->getTextTables(),
@@ -767,23 +749,18 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf132911)
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Cut();
-    Scheduler::ProcessEventsToIdle();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     CPPUNIT_ASSERT_EQUAL(sal_Int32(0), xIndexAccess->getCount());
     CPPUNIT_ASSERT_EQUAL(0, getShapes());
 
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
-    Scheduler::ProcessEventsToIdle();
+    dispatchCommand(mxComponent, ".uno:Paste", {});
 
     CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xIndexAccess->getCount());
     CPPUNIT_ASSERT_EQUAL(4, getShapes());
 
     // Without the fix in place, it would have crashed here
-    SwTransferable::Paste(*pWrtShell, aHelper);
-    Scheduler::ProcessEventsToIdle();
+    dispatchCommand(mxComponent, ".uno:Paste", {});
     CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xIndexAccess->getCount());
     CPPUNIT_ASSERT_EQUAL(8, getShapes());
 
@@ -795,13 +772,11 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf132911)
     CPPUNIT_ASSERT_EQUAL(sal_Int32(0), xIndexAccess->getCount());
     CPPUNIT_ASSERT_EQUAL(0, getShapes());
 
-    SwTransferable::Paste(*pWrtShell, aHelper);
-    Scheduler::ProcessEventsToIdle();
+    dispatchCommand(mxComponent, ".uno:Paste", {});
     CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xIndexAccess->getCount());
     CPPUNIT_ASSERT_EQUAL(4, getShapes());
 
-    SwTransferable::Paste(*pWrtShell, aHelper);
-    Scheduler::ProcessEventsToIdle();
+    dispatchCommand(mxComponent, ".uno:Paste", {});
     CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xIndexAccess->getCount());
     CPPUNIT_ASSERT_EQUAL(8, getShapes());
 
@@ -978,16 +953,13 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf135056)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf132597)
 {
     createSwDoc("tdf132597.odt");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     CPPUNIT_ASSERT_EQUAL(1, getShapes());
     CPPUNIT_ASSERT_EQUAL(1, getPages());
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Copy();
+    dispatchCommand(mxComponent, ".uno:Copy", {});
 
     // Paste special as RTF
     uno::Sequence<beans::PropertyValue> aPropertyValues = 
comphelper::InitPropertySequence(
@@ -1005,15 +977,12 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf132597)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf139737)
 {
     createSwDoc("tdf139737.fodt");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     uno::Reference<frame::XModel> xModel(mxComponent, uno::UNO_QUERY);
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Copy();
+    dispatchCommand(mxComponent, ".uno:Copy", {});
 
     // Paste special as RTF
     uno::Sequence<beans::PropertyValue> aPropertyValues = 
comphelper::InitPropertySequence(
@@ -1133,8 +1102,6 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf147206)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf144840)
 {
     createSwDoc("tdf144840.odt");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     CPPUNIT_ASSERT_EQUAL(1, getPages());
     uno::Reference<text::XTextTablesSupplier> xTextTablesSupplier(mxComponent, 
uno::UNO_QUERY);
@@ -1144,8 +1111,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf144840)
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     CPPUNIT_ASSERT_EQUAL(sal_Int32(0), xIndexAccess->getCount());
 
@@ -1173,15 +1139,12 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf144840)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf131963)
 {
     createSwDoc("tdf131963.docx");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     CPPUNIT_ASSERT_EQUAL(11, getPages());
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Copy();
+    dispatchCommand(mxComponent, ".uno:Copy", {});
 
     // Paste special as RTF
     uno::Sequence<beans::PropertyValue> aPropertyValues = 
comphelper::InitPropertySequence(
@@ -1198,15 +1161,12 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf131963)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf132596)
 {
     createSwDoc("tdf132596.docx");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     CPPUNIT_ASSERT_EQUAL(2, getPages());
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Copy();
+    dispatchCommand(mxComponent, ".uno:Copy", {});
 
     // Paste special as RTF
     uno::Sequence<beans::PropertyValue> aPropertyValues = 
comphelper::InitPropertySequence(
@@ -1223,30 +1183,26 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf132596)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf126626)
 {
     createSwDoc("tdf126626.docx");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     CPPUNIT_ASSERT_EQUAL(2, getShapes());
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Copy();
+    dispatchCommand(mxComponent, ".uno:Copy", {});
 
     CPPUNIT_ASSERT_EQUAL(2, getShapes());
 
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Paste", {});
     CPPUNIT_ASSERT_EQUAL(2, getShapes());
 
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Paste", {});
     CPPUNIT_ASSERT_EQUAL(4, getShapes());
 
     dispatchCommand(mxComponent, ".uno:Undo", {});
     CPPUNIT_ASSERT_EQUAL(2, getShapes());
 
     // without the fix, it crashes
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Paste", {});
     CPPUNIT_ASSERT_EQUAL(4, getShapes());
 }
 
@@ -1276,23 +1232,18 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf133967)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf132187)
 {
     createSwDoc("tdf132187.odt");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     CPPUNIT_ASSERT_EQUAL(1, getPages());
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Copy();
+    dispatchCommand(mxComponent, ".uno:Copy", {});
 
     dispatchCommand(mxComponent, ".uno:GoToEndOfDoc", {});
 
-    TransferableDataHelper aHelper(xTransfer);
     for (sal_Int32 i = 0; i < 10; ++i)
     {
-        SwTransferable::Paste(*pWrtShell, aHelper);
-        Scheduler::ProcessEventsToIdle();
+        dispatchCommand(mxComponent, ".uno:Paste", {});
     }
 
     //without the fix in place, this test would fail with:
@@ -1365,13 +1316,11 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf135733)
     pWrtShell->Down(/*bSelect=*/true);
     pWrtShell->Down(/*bSelect=*/true);
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     pWrtShell->SttPg(/*bSelect=*/false);
 
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Paste", {});
 
     CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xIndexAccess->getCount());
     CPPUNIT_ASSERT_EQUAL(1, getPages());
@@ -1394,20 +1343,16 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf135733)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf128739)
 {
     createSwDoc("tdf128739.docx");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     CPPUNIT_ASSERT_EQUAL(OUString("Fehler: Verweis nicht gefunden"), 
getParagraph(1)->getString());
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     CPPUNIT_ASSERT_EQUAL(OUString(""), getParagraph(1)->getString());
 
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Paste", {});
     CPPUNIT_ASSERT_EQUAL(OUString("Fehler: Verweis nicht gefunden"), 
getParagraph(1)->getString());
 
     // without the fix, it crashes
@@ -1418,20 +1363,16 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf128739)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf124722)
 {
     createSwDoc("tdf124722.rtf");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     CPPUNIT_ASSERT_EQUAL(22, getPages());
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Copy();
+    dispatchCommand(mxComponent, ".uno:Copy", {});
 
     CPPUNIT_ASSERT_EQUAL(22, getPages());
 
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Paste", {});
     CPPUNIT_ASSERT_EQUAL(43, getPages());
 
     dispatchCommand(mxComponent, ".uno:Undo", {});
@@ -1629,8 +1570,6 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf133990)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf126504)
 {
     createSwDoc("tdf126504.odt");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     uno::Reference<text::XTextTablesSupplier> xTextTablesSupplier(mxComponent, 
uno::UNO_QUERY);
     uno::Reference<container::XIndexAccess> 
xIndexAccess(xTextTablesSupplier->getTextTables(),
@@ -1642,14 +1581,11 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf126504)
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Copy();
+    dispatchCommand(mxComponent, ".uno:Copy", {});
 
     dispatchCommand(mxComponent, ".uno:GoToEndOfPage", {});
 
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
-    Scheduler::ProcessEventsToIdle();
+    dispatchCommand(mxComponent, ".uno:Paste", {});
 
     CPPUNIT_ASSERT_EQUAL(sal_Int32(4), xIndexAccess->getCount());
     CPPUNIT_ASSERT_EQUAL(1, getPages());
@@ -1674,8 +1610,6 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf126504)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf133982)
 {
     createSwDoc("tdf133982.docx");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     uno::Reference<text::XTextTablesSupplier> xTextTablesSupplier(mxComponent, 
uno::UNO_QUERY);
     uno::Reference<container::XIndexAccess> 
xIndexAccess(xTextTablesSupplier->getTextTables(),
@@ -1687,21 +1621,17 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf133982)
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
     //Without the fix in place, it would have crashed here
-    xTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
     CPPUNIT_ASSERT_EQUAL(sal_Int32(0), xIndexAccess->getCount());
 
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Paste", {});
     CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xIndexAccess->getCount());
 }
 
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf134253)
 {
     createSwDoc("tdf134253.odt");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     uno::Reference<text::XTextTablesSupplier> xTextTablesSupplier(mxComponent, 
uno::UNO_QUERY);
     uno::Reference<container::XIndexAccess> 
xIndexAccess(xTextTablesSupplier->getTextTables(),
@@ -1714,10 +1644,8 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf134253)
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Copy();
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Copy", {});
+    dispatchCommand(mxComponent, ".uno:Paste", {});
 
     //Without the fix in place, it would have crashed here
     dispatchCommand(mxComponent, ".uno:Undo", {});
@@ -1973,8 +1901,6 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf124397)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf108124)
 {
     createSwDoc("tdf108124.odt");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     uno::Reference<text::XTextGraphicObjectsSupplier> 
xTextGraphicObjectsSupplier(mxComponent,
                                                                                
   uno::UNO_QUERY);
@@ -1985,11 +1911,9 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf108124)
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Copy();
+    dispatchCommand(mxComponent, ".uno:Copy", {});
 
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Paste", {});
 
     CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xIndexAccess->getCount());
 
@@ -2021,8 +1945,6 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf107975)
     // This test also covers tdf#117185 tdf#110442
 
     createSwDoc("tdf107975.odt");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
     SwXTextDocument* pTextDoc = 
dynamic_cast<SwXTextDocument*>(mxComponent.get());
 
     uno::Reference<text::XTextGraphicObjectsSupplier> 
xTextGraphicObjectsSupplier(mxComponent,
@@ -2039,15 +1961,11 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf107975)
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Copy();
+    dispatchCommand(mxComponent, ".uno:Copy", {});
 
     //Position the mouse cursor (caret) after "ABC" below the blue image
     dispatchCommand(mxComponent, ".uno:GoRight", {});
-    {
-        TransferableDataHelper aHelper(xTransfer);
-        SwTransferable::Paste(*pWrtShell, aHelper);
-    }
+    dispatchCommand(mxComponent, ".uno:Paste", {});
 
     // without the fix, it crashes
     CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xIndexAccess->getCount());
@@ -2076,17 +1994,11 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf107975)
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    xTransfer.set(new SwTransferable(*pWrtShell));
-    xTransfer->Copy();
+    dispatchCommand(mxComponent, ".uno:Copy", {});
 
     //Position the mouse cursor (caret) after "ABC" below the blue image
     dispatchCommand(mxComponent, ".uno:GoRight", {});
-    {
-        TransferableDataHelper aHelper(xTransfer);
-        SwTransferable::Paste(*pWrtShell, aHelper);
-    }
-    // the following line makes the test more reliable, no idea why
-    Scheduler::ProcessEventsToIdle();
+    dispatchCommand(mxComponent, ".uno:Paste", {});
 
     // without the fix, it crashes
     CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xIndexAccess->getCount());
@@ -2209,15 +2121,12 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf130746)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf129805)
 {
     createSwDoc("tdf129805.docx");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     CPPUNIT_ASSERT_EQUAL(OUString("x"), getParagraph(1)->getString());
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
     // without the fix in place, it would crash here
-    xTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
     CPPUNIT_ASSERT_EQUAL(OUString(""), getParagraph(1)->getString());
 
     dispatchCommand(mxComponent, ".uno:Undo", {});
@@ -2227,26 +2136,20 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf129805)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf130685)
 {
     createSwDoc("tdf130685.odt");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     CPPUNIT_ASSERT_EQUAL(2, getPages());
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Cut();
-    Scheduler::ProcessEventsToIdle();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     CPPUNIT_ASSERT_EQUAL(1, getPages());
 
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Paste", {});
+    dispatchCommand(mxComponent, ".uno:Paste", {});
 
     // Without fix in place, this test would have failed with:
     //- Expected: 2
     //- Actual  : 4
-    Scheduler::ProcessEventsToIdle();
     CPPUNIT_ASSERT_EQUAL(2, getPages());
 
     dispatchCommand(mxComponent, ".uno:Undo", {});
@@ -2292,8 +2195,6 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf104649)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf134931)
 {
     createSwDoc("tdf134931.odt");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     uno::Reference<text::XTextTablesSupplier> xTextTablesSupplier(mxComponent, 
uno::UNO_QUERY);
     uno::Reference<container::XIndexAccess> 
xIndexAccess(xTextTablesSupplier->getTextTables(),
@@ -2303,17 +2204,13 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf134931)
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Copy();
-    Scheduler::ProcessEventsToIdle();
+    dispatchCommand(mxComponent, ".uno:Copy", {});
 
     dispatchCommand(mxComponent, ".uno:GoDown", {});
 
-    TransferableDataHelper aHelper(xTransfer);
     for (sal_Int32 i = 0; i < 10; ++i)
     {
-        SwTransferable::Paste(*pWrtShell, aHelper);
-        Scheduler::ProcessEventsToIdle();
+        dispatchCommand(mxComponent, ".uno:Paste", {});
     }
 
     CPPUNIT_ASSERT_EQUAL(sal_Int32(11), xIndexAccess->getCount());
@@ -2329,8 +2226,6 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf134931)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf130680)
 {
     createSwDoc("tdf130680.odt");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     uno::Reference<text::XTextTablesSupplier> xTextTablesSupplier(mxComponent, 
uno::UNO_QUERY);
     uno::Reference<container::XIndexAccess> 
xIndexAccess(xTextTablesSupplier->getTextTables(),
@@ -2342,14 +2237,12 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf130680)
     rtl::Reference<SwDoc> xClpDoc(new SwDoc());
     xClpDoc->SetClipBoard(true);
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
     // without the fix, it crashes
-    xTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     CPPUNIT_ASSERT_EQUAL(sal_Int32(0), xIndexAccess->getCount());
 
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Paste", {});
     CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xIndexAccess->getCount());
     xClpDoc.clear();
 
diff --git a/sw/qa/extras/uiwriter/uiwriter5.cxx 
b/sw/qa/extras/uiwriter/uiwriter5.cxx
index 615f77e42f20..791ed35ae3b4 100644
--- a/sw/qa/extras/uiwriter/uiwriter5.cxx
+++ b/sw/qa/extras/uiwriter/uiwriter5.cxx
@@ -1063,8 +1063,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest5, testTdf125310)
     pWrtShell->Right(SwCursorSkipMode::Chars, /*bSelect=*/false, 1, 
/*bBasicCall=*/false);
     pWrtShell->EndPara(/*bSelect=*/true);
     pWrtShell->Right(SwCursorSkipMode::Chars, /*bSelect=*/true, 1, 
/*bBasicCall=*/false);
-    rtl::Reference<SwTransferable> pTransfer = new SwTransferable(*pWrtShell);
-    pTransfer->Cut();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     // copied paragraph style
     CPPUNIT_ASSERT_EQUAL(OUString("Heading 1"),
diff --git a/sw/qa/extras/uiwriter/uiwriter8.cxx 
b/sw/qa/extras/uiwriter/uiwriter8.cxx
index 9e5bb3856c30..b37af6899df2 100644
--- a/sw/qa/extras/uiwriter/uiwriter8.cxx
+++ b/sw/qa/extras/uiwriter/uiwriter8.cxx
@@ -65,8 +65,6 @@ public:
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest8, testTdf131684)
 {
     createSwDoc("tdf131684.docx");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     uno::Reference<text::XTextTablesSupplier> xTextTablesSupplier(mxComponent, 
uno::UNO_QUERY);
     uno::Reference<container::XIndexAccess> 
xIndexAccess(xTextTablesSupplier->getTextTables(),
@@ -78,16 +76,13 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest8, testTdf131684)
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Cut();
-    Scheduler::ProcessEventsToIdle();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
     CPPUNIT_ASSERT_EQUAL(sal_Int32(0), xIndexAccess->getCount());
 
     dispatchCommand(mxComponent, ".uno:Undo", {});
     CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xIndexAccess->getCount());
 
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
+    dispatchCommand(mxComponent, ".uno:Paste", {});
     CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xIndexAccess->getCount());
 
     // without the fix, it crashes
@@ -125,7 +120,6 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest8, testTdf132744)
 {
     createSwDoc("tdf132744.odt");
     SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
 
     // disable change tracking to cut the table
     pDoc->getIDocumentRedlineAccess().SetRedlineFlags(RedlineFlags::ShowDelete
@@ -138,15 +132,11 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest8, testTdf132744)
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Cut();
-    Scheduler::ProcessEventsToIdle();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     CPPUNIT_ASSERT_EQUAL(0, getShapes());
 
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
-    Scheduler::ProcessEventsToIdle();
+    dispatchCommand(mxComponent, ".uno:Paste", {});
 
     //Without the fix in place, the image wouldn't be pasted
     CPPUNIT_ASSERT_EQUAL(1, getShapes());
@@ -1238,10 +1228,7 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest8, testTdf134626)
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Copy();
-    Scheduler::ProcessEventsToIdle();
-    TransferableDataHelper aHelper(xTransfer);
+    dispatchCommand(mxComponent, ".uno:Copy", {});
 
     // Create a new document
     createSwDoc();
@@ -1252,13 +1239,11 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest8, testTdf134626)
     // Without the fix in place, this test would have crashed here
     for (sal_Int32 i = 0; i < 5; ++i)
     {
-        SwTransferable::Paste(*pWrtShell, aHelper);
-        Scheduler::ProcessEventsToIdle();
+        dispatchCommand(mxComponent, ".uno:Paste", {});
 
         CPPUNIT_ASSERT_EQUAL(OUString("Apple"), getParagraph(1)->getString());
 
-        SwTransferable::Paste(*pWrtShell, aHelper);
-        Scheduler::ProcessEventsToIdle();
+        dispatchCommand(mxComponent, ".uno:Paste", {});
 
         CPPUNIT_ASSERT_EQUAL(OUString("AppleApple"), 
getParagraph(1)->getString());
 
@@ -1849,28 +1834,21 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest8, testTdf135623)
 CPPUNIT_TEST_FIXTURE(SwUiWriterTest8, testTdf133490)
 {
     createSwDoc("tdf133490.odt");
-    SwDoc* pDoc = getSwDoc();
-    SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
     SwXTextDocument* pTextDoc = 
dynamic_cast<SwXTextDocument*>(mxComponent.get());
 
     CPPUNIT_ASSERT_EQUAL(1, getShapes());
 
     dispatchCommand(mxComponent, ".uno:SelectAll", {});
 
-    rtl::Reference<SwTransferable> xTransfer = new SwTransferable(*pWrtShell);
-    xTransfer->Cut();
-    Scheduler::ProcessEventsToIdle();
+    dispatchCommand(mxComponent, ".uno:Cut", {});
 
     CPPUNIT_ASSERT_EQUAL(0, getShapes());
 
-    TransferableDataHelper aHelper(xTransfer);
-    SwTransferable::Paste(*pWrtShell, aHelper);
-    Scheduler::ProcessEventsToIdle();
+    dispatchCommand(mxComponent, ".uno:Paste", {});
 
     CPPUNIT_ASSERT_EQUAL(1, getShapes());
 
-    SwTransferable::Paste(*pWrtShell, aHelper);
-    Scheduler::ProcessEventsToIdle();
+    dispatchCommand(mxComponent, ".uno:Paste", {});
 
     CPPUNIT_ASSERT_EQUAL(2, getShapes());
 

Reply via email to