chart2/CppunitTest_chart2_dump.mk             |    1 
 chart2/CppunitTest_chart2_geometry.mk         |    1 
 chart2/CppunitTest_chart2_pivot_chart_test.mk |    1 
 chart2/CppunitTest_chart2_trendcalculators.mk |    1 
 chart2/CppunitTest_chart2_xshape.mk           |    1 
 chart2/export_setup.mk                        |    1 
 chart2/import_setup.mk                        |    1 
 chart2/qa/extras/PivotChartTest.cxx           |   24 -
 chart2/qa/extras/chart2_trendcalculators.cxx  |    8 
 chart2/qa/extras/chart2dump/chart2dump.cxx    |   25 -
 chart2/qa/extras/chart2export.cxx             |  159 +++++++-----
 chart2/qa/extras/chart2export2.cxx            |  334 +++++++++++++++-----------
 chart2/qa/extras/chart2export3.cxx            |  111 ++++----
 chart2/qa/extras/chart2geometry.cxx           |   37 +-
 chart2/qa/extras/chart2import.cxx             |  164 ++++++------
 chart2/qa/extras/chart2import2.cxx            |   83 +++---
 chart2/qa/extras/charttest.hxx                |  107 --------
 chart2/qa/extras/xshape/chart2xshape.cxx      |   29 +-
 sc/qa/extras/vba-macro-test.cxx               |    3 
 sw/qa/core/macros-test.cxx                    |    3 
 test/source/unoapi_test.cxx                   |    6 
 21 files changed, 575 insertions(+), 525 deletions(-)

New commits:
commit 51d366712c55c61bea5169c238098d7007e4ce20
Author:     Xisco Fauli <xiscofa...@libreoffice.org>
AuthorDate: Tue Oct 25 14:51:02 2022 +0200
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Tue Oct 25 17:03:53 2022 +0200

    ChartTest: inherit from UnoApiTest
    
    Change-Id: Ie826b66364f61bdab555228ca3a348f86b34847f
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141824
    Tested-by: Jenkins
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>

diff --git a/chart2/CppunitTest_chart2_dump.mk 
b/chart2/CppunitTest_chart2_dump.mk
index e0bc8647011d..fa46774d762b 100644
--- a/chart2/CppunitTest_chart2_dump.mk
+++ b/chart2/CppunitTest_chart2_dump.mk
@@ -42,6 +42,7 @@ $(eval $(call gb_CppunitTest_use_libraries,chart2_dump, \
     sd \
     sfx \
     sot \
+    subsequenttest \
     svl \
     svt \
     svx \
diff --git a/chart2/CppunitTest_chart2_geometry.mk 
b/chart2/CppunitTest_chart2_geometry.mk
index d9813dd898a7..9b9ff34b5335 100644
--- a/chart2/CppunitTest_chart2_geometry.mk
+++ b/chart2/CppunitTest_chart2_geometry.mk
@@ -42,6 +42,7 @@ $(eval $(call gb_CppunitTest_use_libraries,chart2_geometry, \
     sd \
     sfx \
     sot \
+    subsequenttest \
     svl \
     svt \
     svx \
diff --git a/chart2/CppunitTest_chart2_pivot_chart_test.mk 
b/chart2/CppunitTest_chart2_pivot_chart_test.mk
index 92f92126c757..cd8157a5ad53 100644
--- a/chart2/CppunitTest_chart2_pivot_chart_test.mk
+++ b/chart2/CppunitTest_chart2_pivot_chart_test.mk
@@ -42,6 +42,7 @@ $(eval $(call 
gb_CppunitTest_use_libraries,chart2_pivot_chart_test, \
     sd \
     sfx \
     sot \
+    subsequenttest \
     svl \
     svt \
     svx \
diff --git a/chart2/CppunitTest_chart2_trendcalculators.mk 
b/chart2/CppunitTest_chart2_trendcalculators.mk
index 9d8c5f9c1d0f..87c76ab10383 100644
--- a/chart2/CppunitTest_chart2_trendcalculators.mk
+++ b/chart2/CppunitTest_chart2_trendcalculators.mk
@@ -42,6 +42,7 @@ $(eval $(call 
gb_CppunitTest_use_libraries,chart2_trendcalculators, \
     sd \
     sfx \
     sot \
+    subsequenttest \
     svl \
     svt \
     svx \
diff --git a/chart2/CppunitTest_chart2_xshape.mk 
b/chart2/CppunitTest_chart2_xshape.mk
index c985436c57c7..e964891e88d7 100644
--- a/chart2/CppunitTest_chart2_xshape.mk
+++ b/chart2/CppunitTest_chart2_xshape.mk
@@ -42,6 +42,7 @@ $(eval $(call gb_CppunitTest_use_libraries,chart2_xshape, \
     sd \
     sfx \
     sot \
+    subsequenttest \
     svl \
     svt \
     svx \
diff --git a/chart2/export_setup.mk b/chart2/export_setup.mk
index be07efc5ad9d..b2bcf751111e 100644
--- a/chart2/export_setup.mk
+++ b/chart2/export_setup.mk
@@ -45,6 +45,7 @@ $(eval $(call gb_CppunitTest_use_libraries,chart2_export$(1), 
\
     sd \
     sfx \
     sot \
+    subsequenttest \
     svl \
     svt \
     svx \
diff --git a/chart2/import_setup.mk b/chart2/import_setup.mk
index 2f27fffb9bc1..fb004d9830f4 100644
--- a/chart2/import_setup.mk
+++ b/chart2/import_setup.mk
@@ -45,6 +45,7 @@ $(eval $(call gb_CppunitTest_use_libraries,chart2_import$(1), 
\
     sd \
     sfx \
     sot \
+    subsequenttest \
     svl \
     svt \
     svx \
diff --git a/chart2/qa/extras/PivotChartTest.cxx 
b/chart2/qa/extras/PivotChartTest.cxx
index 60dd561cb632..682dba753d11 100644
--- a/chart2/qa/extras/PivotChartTest.cxx
+++ b/chart2/qa/extras/PivotChartTest.cxx
@@ -34,7 +34,8 @@ namespace com::sun::star::util { class XNumberFormats; }
 class PivotChartTest : public ChartTest
 {
 public:
-    PivotChartTest() : ChartTest()
+    PivotChartTest()
+        : ChartTest("/chart2/qa/extras/data/")
     {}
 
     void testRoundtrip();
@@ -316,7 +317,7 @@ void PivotChartTest::testRoundtrip()
 
     std::vector<double> aReference2 { 101879.458079, 178636.929704, 
314626.484864 };
 
-    load(u"/chart2/qa/extras/data/ods/", u"PivotChartRoundTrip.ods");
+    loadFromURL(u"ods/PivotChartRoundTrip.ods");
 
     xChartDoc = getPivotChartDocFromSheet(1, mxComponent);
     CPPUNIT_ASSERT(xChartDoc.is());
@@ -351,7 +352,7 @@ void PivotChartTest::testRoundtrip()
         CPPUNIT_ASSERT_EQUAL(OUString("Total"), lclGetLabel(xChartDoc, 0));
     }
 
-    reload("calc8");
+    saveAndReload("calc8");
 
     xChartDoc = getPivotChartDocFromSheet(1, mxComponent);
     CPPUNIT_ASSERT(xChartDoc.is());
@@ -371,7 +372,7 @@ void PivotChartTest::testChangePivotTable()
     uno::Sequence<uno::Any> xSequence;
     Reference<chart2::XChartDocument> xChartDoc;
 
-    load(u"/chart2/qa/extras/data/ods/", u"PivotTableExample.ods");
+    loadFromURL(u"ods/PivotTableExample.ods");
 
     // Check we have the Pivot Table
     OUString sPivotTableName("DataPilot1");
@@ -528,8 +529,7 @@ void PivotChartTest::testPivotChartWithOneColumnField()
 
     // SETUP DATA and PIVOT TABLE
 
-    if (!mxComponent.is())
-        mxComponent = loadFromDesktop("private:factory/scalc");
+    mxComponent = loadFromDesktop("private:factory/scalc");
 
     uno::Reference<sheet::XSpreadsheetDocument> xSheetDoc(mxComponent, 
uno::UNO_QUERY_THROW);
 
@@ -610,8 +610,7 @@ void PivotChartTest::testPivotChartWithOneRowField()
 
     // SETUP DATA and PIVOT TABLE
 
-    if (!mxComponent.is())
-        mxComponent = loadFromDesktop("private:factory/scalc");
+    mxComponent = loadFromDesktop("private:factory/scalc");
 
     uno::Reference<sheet::XSpreadsheetDocument> xSheetDoc(mxComponent, 
uno::UNO_QUERY_THROW);
 
@@ -670,8 +669,7 @@ void 
PivotChartTest::testPivotTableDataProvider_PivotTableFields()
 {
     // SETUP DATA and PIVOT TABLE
 
-    if (!mxComponent.is())
-        mxComponent = loadFromDesktop("private:factory/scalc");
+    mxComponent = loadFromDesktop("private:factory/scalc");
 
     uno::Reference<sheet::XSpreadsheetDocument> xSheetDoc(mxComponent, 
uno::UNO_QUERY_THROW);
 
@@ -778,8 +776,7 @@ void PivotChartTest::testPivotChartRowFieldInOutlineMode()
 {
     // SETUP DATA and PIVOT TABLE
 
-    if (!mxComponent.is())
-        mxComponent = loadFromDesktop("private:factory/scalc");
+    mxComponent = loadFromDesktop("private:factory/scalc");
 
     uno::Reference<sheet::XSpreadsheetDocument> xSheetDoc(mxComponent, 
uno::UNO_QUERY_THROW);
 
@@ -908,8 +905,7 @@ void PivotChartTest::testPivotChartWithDateRowField()
 {
     // SETUP DATA and PIVOT TABLE
 
-    if (!mxComponent.is())
-        mxComponent = loadFromDesktop("private:factory/scalc");
+    mxComponent = loadFromDesktop("private:factory/scalc");
 
     uno::Reference<sheet::XSpreadsheetDocument> xSheetDoc(mxComponent, 
uno::UNO_QUERY_THROW);
 
diff --git a/chart2/qa/extras/chart2_trendcalculators.cxx 
b/chart2/qa/extras/chart2_trendcalculators.cxx
index 6562bb835cd8..263201daad7c 100644
--- a/chart2/qa/extras/chart2_trendcalculators.cxx
+++ b/chart2/qa/extras/chart2_trendcalculators.cxx
@@ -24,6 +24,10 @@ constexpr sal_Int32 SHEET_EXPONENTIAL2 = 5;
 class Chart2TrendCalculators : public ChartTest
 {
 public:
+    Chart2TrendCalculators()
+        : ChartTest("/chart2/qa/extras/data/")
+    {}
+
     void setUp() override;
     void tearDown() override;
 
@@ -44,7 +48,6 @@ public:
     CPPUNIT_TEST_SUITE_END();
 
 private:
-
     Reference<chart2::XRegressionCurve> m_xCurve;
     Reference< chart2::XRegressionCurveCalculator > 
m_xRegressionCurveCalculator;
 
@@ -52,13 +55,12 @@ private:
     void checkCalculator(
         const Sequence< double >& xValues, const Sequence< double >& yValues,
         const OUString& sExpectedFormula );
-
 };
 
 void Chart2TrendCalculators::setUp()
 {
     ChartTest::setUp();
-    load(u"/chart2/qa/extras/data/ods/", u"trend_calculators.ods");
+    loadFromURL(u"ods/trend_calculators.ods");
 }
 
 void Chart2TrendCalculators::tearDown()
diff --git a/chart2/qa/extras/chart2dump/chart2dump.cxx 
b/chart2/qa/extras/chart2dump/chart2dump.cxx
index d3ec24de68e9..030a536f320a 100644
--- a/chart2/qa/extras/chart2dump/chart2dump.cxx
+++ b/chart2/qa/extras/chart2dump/chart2dump.cxx
@@ -88,6 +88,7 @@ class Chart2DumpTest : public ChartTest
 {
 protected:
     Chart2DumpTest(bool bDumpMode)
+        : ChartTest("/chart2/qa/extras/chart2dump/data/")
     {
         m_bDumpMode = bDumpMode;
     }
@@ -107,7 +108,6 @@ protected:
 
     virtual OUString getTestName() { return OUString(); }
     OUString const & getTestFileName() const { return m_sTestFileName; }
-    OUString getTestFileDirName() const { return 
"/chart2/qa/extras/chart2dump/data/"; }
     OUString getReferenceDirName()
     {
         return "/chart2/qa/extras/chart2dump/reference/" + 
getTestName().toAsciiLowerCase() + "/";
@@ -269,7 +269,7 @@ DECLARE_DUMP_TEST(ChartDataTest, Chart2DumpTest, false)
     for (const OUString& aTestFile : aTestFiles)
     {
         setTestFileName(aTestFile);
-        load(getTestFileDirName(), getTestFileName());
+        loadFromURL(getTestFileName());
         uno::Reference< chart::XChartDocument > xChartDoc 
(getChartDocFromSheet(0, mxComponent), UNO_QUERY_THROW);
 
         // Check title
@@ -382,7 +382,7 @@ DECLARE_DUMP_TEST(LegendTest, Chart2DumpTest, false)
     for (const OUString& aTestFile : aTestFiles)
     {
         setTestFileName(aTestFile);
-        load(getTestFileDirName(), getTestFileName());
+        loadFromURL(getTestFileName());
         uno::Reference< chart::XChartDocument > 
xChartDoc(getChartDocFromDrawImpress(0, 0), UNO_SET_THROW);
         uno::Reference<drawing::XDrawPageSupplier> 
xDrawPageSupplier(xChartDoc, uno::UNO_QUERY);
         uno::Reference<drawing::XDrawPage> xDrawPage = 
xDrawPageSupplier->getDrawPage();
@@ -476,7 +476,7 @@ DECLARE_DUMP_TEST(GridTest, Chart2DumpTest, false)
     for (const OUString& sTestFile : aTestFiles)
     {
         setTestFileName(sTestFile);
-        load(getTestFileDirName(), getTestFileName());
+        loadFromURL(getTestFileName());
         uno::Reference< chart::XChartDocument > 
xChartDoc(getChartDocFromSheet(0, mxComponent), UNO_QUERY_THROW);
         uno::Reference<drawing::XDrawPageSupplier> 
xDrawPageSupplier(xChartDoc, uno::UNO_QUERY);
         uno::Reference<drawing::XDrawPage> xDrawPage = 
xDrawPageSupplier->getDrawPage();
@@ -548,7 +548,7 @@ DECLARE_DUMP_TEST(AxisGeometryTest, Chart2DumpTest, false)
     for (const OUString& sTestFile : aTestFiles)
     {
         setTestFileName(sTestFile);
-        load(getTestFileDirName(), getTestFileName());
+        loadFromURL(getTestFileName());
         uno::Reference< chart::XChartDocument > 
xChartDoc(getChartDocFromDrawImpress(0, 0), UNO_SET_THROW);
         uno::Reference<drawing::XDrawPageSupplier> 
xDrawPageSupplier(xChartDoc, uno::UNO_QUERY);
         uno::Reference<drawing::XDrawPage> xDrawPage = 
xDrawPageSupplier->getDrawPage();
@@ -621,7 +621,7 @@ DECLARE_DUMP_TEST(AxisLabelTest, Chart2DumpTest, false)
     for (const OUString& sTestFile : aTestFiles)
     {
         setTestFileName(sTestFile);
-        load(getTestFileDirName(), getTestFileName());
+        loadFromURL(getTestFileName());
         uno::Reference< chart::XChartDocument > 
xChartDoc(getChartDocFromDrawImpress(0, 0), UNO_SET_THROW);
         uno::Reference<drawing::XDrawPageSupplier> 
xDrawPageSupplier(xChartDoc, uno::UNO_QUERY);
         uno::Reference<drawing::XDrawPage> xDrawPage = 
xDrawPageSupplier->getDrawPage();
@@ -704,7 +704,7 @@ DECLARE_DUMP_TEST(ColumnBarChartTest, Chart2DumpTest, false)
     for (const OUString& sTestFile : aTestFiles)
     {
         setTestFileName(sTestFile);
-        load(getTestFileDirName(), getTestFileName());
+        loadFromURL(getTestFileName());
         uno::Reference< chart::XChartDocument > 
xChartDoc(getChartDocFromSheet(0, mxComponent), UNO_QUERY_THROW);
         uno::Reference<drawing::XDrawPageSupplier> 
xDrawPageSupplier(xChartDoc, uno::UNO_QUERY);
         uno::Reference<drawing::XDrawPage> xDrawPage = 
xDrawPageSupplier->getDrawPage();
@@ -774,7 +774,7 @@ DECLARE_DUMP_TEST(ChartWallTest, Chart2DumpTest, false)
     for (const OUString& sTestFile : aTestFiles)
     {
         setTestFileName(sTestFile);
-        load(getTestFileDirName(), getTestFileName());
+        loadFromURL(getTestFileName());
         uno::Reference< chart::XChartDocument > 
xChartDoc(getChartDocFromDrawImpress(0, 0), UNO_SET_THROW);
         uno::Reference<drawing::XDrawPageSupplier> 
xDrawPageSupplier(xChartDoc, uno::UNO_QUERY);
         uno::Reference<drawing::XDrawPage> xDrawPage = 
xDrawPageSupplier->getDrawPage();
@@ -822,7 +822,6 @@ DECLARE_DUMP_TEST(ChartWallTest, Chart2DumpTest, false)
         sal_Int32 nChartWallLineWidth = 0;
         xPropSet->getPropertyValue("LineWidth") >>= nChartWallLineWidth;
         CPPUNIT_DUMP_ASSERT_NUMBERS_EQUAL(nChartWallLineWidth);
-
     }
 }
 
@@ -840,7 +839,7 @@ DECLARE_DUMP_TEST(PieChartTest, Chart2DumpTest, false)
     for (const OUString& sTestFile : aTestFiles)
     {
         setTestFileName(sTestFile);
-        load(getTestFileDirName(), getTestFileName());
+        loadFromURL(getTestFileName());
         uno::Reference< chart::XChartDocument > 
xChartDoc(getChartDocFromSheet(0, mxComponent), UNO_QUERY_THROW);
         uno::Reference<drawing::XDrawPageSupplier> 
xDrawPageSupplier(xChartDoc, uno::UNO_QUERY);
         uno::Reference<drawing::XDrawPage> xDrawPage = 
xDrawPageSupplier->getDrawPage();
@@ -913,7 +912,7 @@ DECLARE_DUMP_TEST(AreaChartTest, Chart2DumpTest, false)
     for (const OUString& sTestFile : aTestFiles)
     {
         setTestFileName(sTestFile);
-        load(getTestFileDirName(), getTestFileName());
+        loadFromURL(getTestFileName());
         uno::Reference< chart::XChartDocument > 
xChartDoc(getChartDocFromSheet(0, mxComponent), UNO_QUERY_THROW);
         uno::Reference<drawing::XDrawPageSupplier> 
xDrawPageSupplier(xChartDoc, uno::UNO_QUERY);
         uno::Reference<drawing::XDrawPage> xDrawPage = 
xDrawPageSupplier->getDrawPage();
@@ -986,7 +985,7 @@ DECLARE_DUMP_TEST(PointLineChartTest, Chart2DumpTest, false)
     for (const OUString& sTestFile : aTestFiles)
     {
         setTestFileName(sTestFile);
-        load(getTestFileDirName(), getTestFileName());
+        loadFromURL(getTestFileName());
         uno::Reference< chart::XChartDocument > 
xChartDoc(getChartDocFromSheet(0, mxComponent), UNO_QUERY_THROW);
         uno::Reference<drawing::XDrawPageSupplier> 
xDrawPageSupplier(xChartDoc, uno::UNO_QUERY);
         uno::Reference<drawing::XDrawPage> xDrawPage = 
xDrawPageSupplier->getDrawPage();
@@ -1078,7 +1077,7 @@ DECLARE_DUMP_TEST(PointLineChartTest, Chart2DumpTest, 
false)
 DECLARE_DUMP_TEST( PivotChartDataButtonTest, Chart2DumpTest, false )
 {
     setTestFileName( "pivotchart_data_button.ods" );
-    load( getTestFileDirName(), getTestFileName() );
+    loadFromURL(getTestFileName());
 
     // Check that we have pivot chart in the document
     uno::Reference<table::XTablePivotCharts> xTablePivotCharts = 
getTablePivotChartsFromSheet( 1, mxComponent );
diff --git a/chart2/qa/extras/chart2export.cxx 
b/chart2/qa/extras/chart2export.cxx
index eb5071fab1a6..f58796a3219c 100644
--- a/chart2/qa/extras/chart2export.cxx
+++ b/chart2/qa/extras/chart2export.cxx
@@ -28,7 +28,7 @@ protected:
 
     virtual void registerNamespaces(xmlXPathContextPtr& pXmlXPathCtx) override;
 public:
-    Chart2ExportTest() : ChartTest() {}
+    Chart2ExportTest() : ChartTest("/chart2/qa/extras/data/") {}
 
     void testErrorBarXLSX();
     void testErrorBarPropXLSX();
@@ -297,7 +297,7 @@ void checkTrendlinesInChart(uno::Reference< 
chart2::XChartDocument > const & xCh
 // improve the test
 void Chart2ExportTest::testErrorBarXLSX()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"error_bar.ods");
+    loadFromURL(u"ods/error_bar.ods");
     {
         // make sure the ODS import was successful
         uno::Reference< chart2::XChartDocument > xChartDoc = 
getChartDocFromSheet( 0, mxComponent );
@@ -314,7 +314,7 @@ void Chart2ExportTest::testErrorBarXLSX()
         testErrorBar(xErrorBarYProps);
     }
 
-    reload("Calc Office Open XML");
+    saveAndReload("Calc Office Open XML");
     {
         uno::Reference< chart2::XChartDocument > xChartDoc = 
getChartDocFromSheet( 0, mxComponent );
         CPPUNIT_ASSERT(xChartDoc.is());
@@ -333,7 +333,7 @@ void Chart2ExportTest::testErrorBarXLSX()
 
 void Chart2ExportTest::testErrorBarPropXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"testErrorBarProp.xlsx");
+    loadFromURL(u"xlsx/testErrorBarProp.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart","Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -355,32 +355,32 @@ void Chart2ExportTest::testTrendline()
     // Validation fails with
     // Error: tag name "chart:symbol-image" is not allowed. Possible tag names 
are: <label-separator>
     mbSkipValidation = true;
-    load(u"/chart2/qa/extras/data/ods/", u"trendline.ods");
+    loadFromURL(u"ods/trendline.ods");
     checkTrendlinesInChart(getChartDocFromSheet( 0, mxComponent));
-    reload("calc8");
+    saveAndReload("calc8");
     checkTrendlinesInChart(getChartDocFromSheet( 0, mxComponent));
 }
 
 void Chart2ExportTest::testTrendlineOOXML()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"trendline.ods");
+    loadFromURL(u"ods/trendline.ods");
     checkTrendlinesInChart(getChartDocFromSheet( 0, mxComponent));
-    reload("Calc Office Open XML");
+    saveAndReload("Calc Office Open XML");
     checkTrendlinesInChart(getChartDocFromSheet( 0, mxComponent));
 }
 
 void Chart2ExportTest::testTrendlineXLS()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"trendline.ods");
+    loadFromURL(u"ods/trendline.ods");
     checkTrendlinesInChart(getChartDocFromSheet( 0, mxComponent));
-    reload("MS Excel 97");
+    saveAndReload("MS Excel 97");
     checkTrendlinesInChart(getChartDocFromSheet( 0, mxComponent));
 }
 
 void Chart2ExportTest::testMovingAverage()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"moving-type.ods");
-    reload("calc8");
+    loadFromURL(u"ods/moving-type.ods");
+    saveAndReload("calc8");
 
     uno::Reference< chart2::XChartDocument > xChartDoc = getChartDocFromSheet( 
0, mxComponent);
     CPPUNIT_ASSERT(xChartDoc.is());
@@ -414,7 +414,7 @@ void Chart2ExportTest::testStockChart()
      * an attribute val of index should start from 1 and not from 0.
      * Which was problem area.
      */
-    load(u"/chart2/qa/extras/data/docx/", u"testStockChart.docx");
+    loadFromURL(u"docx/testStockChart.docx");
 
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
@@ -429,7 +429,7 @@ void Chart2ExportTest::testStockChart()
 
 void Chart2ExportTest::testBarChart()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"testBarChart.docx");
+    loadFromURL(u"docx/testBarChart.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -440,14 +440,14 @@ void Chart2ExportTest::testCrosses()
 {
     // test crosses val="autoZero" with DOCX
     {
-        load(u"/chart2/qa/extras/data/docx/", u"Bar_horizontal_cone.docx");
+        loadFromURL(u"docx/Bar_horizontal_cone.docx");
         xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office 
Open XML Text");
 
         assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:catAx/c:crosses", "val", "autoZero");
     }
     // tdf#142351: test crossesAt val="-50" with XLSX
     {
-        load(u"/chart2/qa/extras/data/xlsx/", u"tdf142351.xlsx");
+        loadFromURL(u"xlsx/tdf142351.xlsx");
         xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office 
Open XML");
         CPPUNIT_ASSERT(pXmlDoc);
 
@@ -457,7 +457,7 @@ void Chart2ExportTest::testCrosses()
 
 void Chart2ExportTest::testScatterChartTextXValues()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"scatter-chart-text-x-values.docx");
+    loadFromURL(u"docx/scatter-chart-text-x-values.docx");
 
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), 
uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
@@ -505,7 +505,7 @@ void Chart2ExportTest::testScatterChartTextXValues()
 
 void Chart2ExportTest::testScatterXAxisValues()
 {
-    load(u"/chart2/qa/extras/data/odt/", u"tdf114657.odt");
+    loadFromURL(u"odt/tdf114657.odt");
 
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
@@ -519,7 +519,7 @@ void Chart2ExportTest::testScatterXAxisValues()
 
 void Chart2ExportTest::testScatterXAxisCategories()
 {
-    load(u"/chart2/qa/extras/data/odt/", u"tdf131143.odt");
+    loadFromURL(u"odt/tdf131143.odt");
 
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
@@ -530,7 +530,7 @@ void Chart2ExportTest::testScatterXAxisCategories()
 
 void Chart2ExportTest::testChartDataTable()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"testChartDataTable.docx");
+    loadFromURL(u"docx/testChartDataTable.docx");
 
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
@@ -541,7 +541,7 @@ void Chart2ExportTest::testChartDataTable()
 
 void Chart2ExportTest::testChartExternalData()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"testMultipleChart.docx");
+    loadFromURL(u"docx/testMultipleChart.docx");
 
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
@@ -556,7 +556,7 @@ void Chart2ExportTest::testEmbeddingsGrabBag()
    // after saving file.
    // This test case tests whether embeddings files grabbagged properly in 
correct object.
 
-   load(u"/chart2/qa/extras/data/docx/", u"testMultiplechartembeddings.docx" );
+   loadFromURL(u"docx/testMultiplechartembeddings.docx" );
    uno::Reference<text::XTextDocument> xTextDocument(mxComponent, 
uno::UNO_QUERY);
    uno::Reference<beans::XPropertySet> xTextDocumentPropertySet(xTextDocument, 
uno::UNO_QUERY);
    uno::Sequence<beans::PropertyValue> aGrabBag(0);
@@ -591,7 +591,11 @@ void Chart2ExportTest::testEmbeddingsGrabBag()
 
 void Chart2ExportTest::testAreaChartLoad()
 {
-    load (u"/chart2/qa/extras/data/docx/", u"testAreaChartLoad.docx");
+    loadFromURL(u"docx/testAreaChartLoad.docx");
+
+    // FIXME: validation error in OOXML export: Errors: 1
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart","Office Open XML 
Text");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:areaChart/c:ser/c:dLbls/c:showVal", "val", 
"1");
@@ -610,7 +614,7 @@ void Chart2ExportTest::testUpDownBars()
 
 void Chart2ExportTest::testDoughnutChart()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"doughnutChart.docx");
+    loadFromURL(u"docx/doughnutChart.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -619,7 +623,7 @@ void Chart2ExportTest::testDoughnutChart()
 
 void Chart2ExportTest::testDisplayUnits()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"DisplayUnits.docx");
+    loadFromURL(u"docx/DisplayUnits.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -637,7 +641,7 @@ void Chart2ExportTest::testDisplayUnits()
 
 void Chart2ExportTest::testFdo74115WallBitmapFill()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"fdo74115_WallBitmapFill.docx");
+    loadFromURL(u"docx/fdo74115_WallBitmapFill.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:spPr/a:blipFill");
@@ -645,7 +649,11 @@ void Chart2ExportTest::testFdo74115WallBitmapFill()
 
 void Chart2ExportTest::testPieChartWallLineStyle()
 {
-    load(u"/chart2/qa/extras/data/odt/", u"testPieChartWallLineStyle.odt");
+    loadFromURL(u"odt/testPieChartWallLineStyle.odt");
+
+    // FIXME: validation error in OOXML export: Errors: 9
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:spPr/a:ln/a:noFill");
@@ -655,7 +663,7 @@ void Chart2ExportTest::testPieChartWallLineStyle()
 
 void Chart2ExportTest::testFdo78290LineChartMarkerX()
 {
-    load(u"/chart2/qa/extras/data/docx/", 
u"fdo78290_Line_Chart_Marker_x.docx");
+    loadFromURL(u"docx/fdo78290_Line_Chart_Marker_x.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace[1]/c:chart[1]/c:plotArea[1]/c:lineChart[1]/c:ser[1]/c:marker[1]/c:symbol[1]","val","x");
@@ -666,7 +674,7 @@ void Chart2ExportTest::testFdo78290LineChartMarkerX()
 
 void Chart2ExportTest::testFdo78290ScatterChartMarkerX()
 {
-    load(u"/chart2/qa/extras/data/docx/", 
u"fdo78290_Scatter_Chart_Marker_x.docx");
+    loadFromURL(u"docx/fdo78290_Scatter_Chart_Marker_x.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace[1]/c:chart[1]/c:plotArea[1]/c:scatterChart[1]/c:ser[1]/c:marker[1]/c:symbol[1]","val","x");
@@ -678,7 +686,7 @@ void Chart2ExportTest::testFdo78290ScatterChartMarkerX()
 
 void Chart2ExportTest::testFdo78290CombinationChartMarkerX()
 {
-    load(u"/chart2/qa/extras/data/docx/", 
u"fdo78290_Combination_Chart_Marker_x.docx");
+    loadFromURL(u"docx/fdo78290_Combination_Chart_Marker_x.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace[1]/c:chart[1]/c:plotArea[1]/c:lineChart[1]/c:ser[1]/c:marker[1]/c:symbol[1]","val","x");
@@ -688,7 +696,7 @@ void Chart2ExportTest::testFdo78290CombinationChartMarkerX()
 void Chart2ExportTest::testTdf126115IndividualMarker()
 {
     // Check individual marker properties.
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf126115.xlsx");
+    loadFromURL(u"xlsx/tdf126115.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     // 1. series
@@ -738,13 +746,13 @@ void Chart2ExportTest::testAxisNumberFormatODS()
 
     } aTest;
 
-    load(u"/chart2/qa/extras/data/ods/", u"axis-numformats-linked.ods");
+    loadFromURL(u"ods/axis-numformats-linked.ods");
 
     Reference<chart2::XChartDocument> xChartDoc = getChartDocFromSheet(0, 
mxComponent);
     aTest.check(xChartDoc);
 
     // Reload the document and make sure everything remains intact.
-    reload("calc8");
+    saveAndReload("calc8");
     xChartDoc = getChartDocFromSheet(0, mxComponent);
     aTest.check(xChartDoc);
 }
@@ -794,14 +802,14 @@ void Chart2ExportTest::testAxisNumberFormatXLS()
 
     } aTest;
 
-    load( u"/chart2/qa/extras/data/xls/", u"axis_sourceformatting.xls" );
+    loadFromURL(u"xls/axis_sourceformatting.xls" );
 
     Reference<chart2::XChartDocument> xChartDoc = getChartDocFromSheet( 0, 
mxComponent );
     aTest.check( xChartDoc, true, util::NumberFormat::PERCENT );
 
     aTest.change( xChartDoc, util::NumberFormat::NUMBER );
     // Write the document(xls) with changes made close it, load it and check 
if changes are intact
-    reload( "MS Excel 97" );
+    saveAndReload( "MS Excel 97" );
     xChartDoc = getChartDocFromSheet( 0, mxComponent );
     aTest.check( xChartDoc, false, util::NumberFormat::NUMBER );
 }
@@ -893,7 +901,7 @@ void Chart2ExportTest::testDataLabelBordersDOCX()
 
     } aTest;
 
-    load(u"/chart2/qa/extras/data/docx/", u"data-label-borders.docx");
+    loadFromURL(u"docx/data-label-borders.docx");
 
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), 
uno::UNO_QUERY);
 
@@ -911,7 +919,10 @@ void Chart2ExportTest::testDataLabelBordersDOCX()
     xChartDoc.set(getChartDocFromWriter(1), uno::UNO_QUERY);
     aTest.checkObject2(xChartDoc);
 
-    reload("Office Open XML Text");
+    // FIXME: validation error in OOXML export: Errors: 3
+    mbSkipValidation = true;
+
+    saveAndReload("Office Open XML Text");
 
     xChartDoc.set(getChartDocFromWriter(0), uno::UNO_QUERY);
     aTest.checkObject1(xChartDoc);
@@ -921,11 +932,14 @@ void Chart2ExportTest::testDataLabelBordersDOCX()
 
 void Chart2ExportTest::testDataLabel3DChartDOCX()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"3d-bar-label.docx");
+    loadFromURL(u"docx/3d-bar-label.docx");
 
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), 
uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
 
+    // FIXME: validation error in OOXML export: Errors: 1
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart","Office Open XML 
Text");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -937,7 +951,7 @@ void Chart2ExportTest::testDataLabel3DChartDOCX()
 
 void Chart2ExportTest::testDataLabelBarChartDOCX()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"bar-chart-labels.docx");
+    loadFromURL(u"docx/bar-chart-labels.docx");
 
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), 
uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
@@ -952,11 +966,14 @@ void Chart2ExportTest::testDataLabelBarChartDOCX()
 
 void Chart2ExportTest::testDataLabelClusteredBarChartDOCX()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"clustered-bar-chart-labels.docx");
+    loadFromURL(u"docx/clustered-bar-chart-labels.docx");
 
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), 
uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
 
+    // FIXME: validation error in OOXML export: Errors: 9
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart","Office Open XML 
Text");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -966,7 +983,7 @@ void Chart2ExportTest::testDataLabelClusteredBarChartDOCX()
 
 void Chart2ExportTest::testDataLabelRadarChartDOCX()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"radar-chart-labels.docx");
+    loadFromURL(u"docx/radar-chart-labels.docx");
 
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), 
uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
@@ -981,11 +998,14 @@ void Chart2ExportTest::testDataLabelRadarChartDOCX()
 
 void Chart2ExportTest::testDataLabelDoughnutChartDOCX()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"doughnut-chart-labels.docx");
+    loadFromURL(u"docx/doughnut-chart-labels.docx");
 
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), 
uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
 
+    // FIXME: validation error in OOXML export: Errors: 1
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart","Office Open XML 
Text");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -996,11 +1016,14 @@ void Chart2ExportTest::testDataLabelDoughnutChartDOCX()
 
 void Chart2ExportTest::testDataLabelAreaChartDOCX()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"area-chart-labels.docx");
+    loadFromURL(u"docx/area-chart-labels.docx");
 
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), 
uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
 
+    // FIXME: validation error in OOXML export: Errors: 1
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart","Office Open XML 
Text");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -1015,12 +1038,12 @@ void 
Chart2ExportTest::testDataLabelDefaultLineChartDOCX()
     // label position (2010 does).  Make sure its default data label position
     // is RIGHT when exporting.
 
-    load(u"/chart2/qa/extras/data/docx/", 
u"line-chart-label-default-placement.docx");
+    loadFromURL(u"docx/line-chart-label-default-placement.docx");
 
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), 
uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
 
-    reload("Office Open XML Text");
+    saveAndReload("Office Open XML Text");
 
     xChartDoc.set(getChartDocFromWriter(0), uno::UNO_QUERY);
     Reference<chart2::XDataSeries> xDataSeries = 
getDataSeriesFromDoc(xChartDoc, 0);
@@ -1034,7 +1057,11 @@ void 
Chart2ExportTest::testDataLabelDefaultLineChartDOCX()
 
 void Chart2ExportTest::testIndividualDataLabelProps()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf122915.xlsx");
+    loadFromURL(u"xlsx/tdf122915.xlsx");
+
+    // FIXME: validation error in OOXML export: Errors: 1
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart","Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser[3]/c:dLbls/c:dLbl/c:txPr/a:p/a:pPr/a:defRPr",
 "b", "1");
@@ -1045,7 +1072,7 @@ void Chart2ExportTest::testIndividualDataLabelProps()
 
 void Chart2ExportTest::testBarChartRotation()
 {
-    load (u"/chart2/qa/extras/data/docx/", u"barChartRotation.docx");
+    loadFromURL(u"docx/barChartRotation.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart","Office Open XML 
Text");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -1060,7 +1087,11 @@ void Chart2ExportTest::testShapeFollowedByChart()
        docPr Id is being repeated, ECMA 20.4.2.5 says that the
        docPr Id should be unique, ensuring the same here.
     */
-    load(u"/chart2/qa/extras/data/docx/", u"FDO74430.docx");
+    loadFromURL(u"docx/FDO74430.docx");
+
+    // FIXME: validation error in OOXML export: Errors: 5
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("word/document", "Office Open XML 
Text" );
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -1072,7 +1103,11 @@ void Chart2ExportTest::testShapeFollowedByChart()
 
 void Chart2ExportTest::testPieChartDataLabels()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"PieChartDataLabels.docx");
+    loadFromURL(u"docx/PieChartDataLabels.docx");
+
+    // FIXME: validation error in OOXML export: Errors: 19
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:pie3DChart/c:ser[1]/c:dLbls/c:dLbl[1]/c:dLblPos",
 "val", "outEnd");
@@ -1080,7 +1115,7 @@ void Chart2ExportTest::testPieChartDataLabels()
 
 void Chart2ExportTest::testSeriesIdxOrder()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"testSeriesIdxOrder.docx");
+    loadFromURL(u"docx/testSeriesIdxOrder.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace[1]/c:chart[1]/c:plotArea[1]/c:lineChart[1]/c:ser[1]/c:idx[1]", 
"val", "1");
@@ -1089,7 +1124,7 @@ void Chart2ExportTest::testSeriesIdxOrder()
 
 void Chart2ExportTest::testScatterPlotLabels()
 {
-    load(u"/chart2/qa/extras/data/odt/", u"scatter-plot-labels.odt");
+    loadFromURL(u"odt/scatter-plot-labels.odt");
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), 
uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
 
@@ -1104,7 +1139,7 @@ void Chart2ExportTest::testScatterPlotLabels()
     CPPUNIT_ASSERT_EQUAL(OUString("c"), aLabels[2][0].get<OUString>());
 
     // Reload the doc and check again.  The labels should not change.
-    reload("writer8");
+    saveAndReload("writer8");
 
     xChartDoc.set(getChartDocFromWriter(0), uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
@@ -1121,8 +1156,8 @@ void Chart2ExportTest::testScatterPlotLabels()
 
 void Chart2ExportTest::testErrorBarDataRangeODS()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"ErrorBarRange.ods");
-    reload("calc8");
+    loadFromURL(u"ods/ErrorBarRange.ods");
+    saveAndReload("calc8");
 
     uno::Reference< chart2::XChartDocument > xChartDoc = getChartDocFromSheet( 
0, mxComponent );
     CPPUNIT_ASSERT(xChartDoc.is());
@@ -1150,14 +1185,14 @@ void Chart2ExportTest::testErrorBarDataRangeODS()
 
 void Chart2ExportTest::testChartCrash()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"FDO75975.docx");
+    loadFromURL(u"docx/FDO75975.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
 }
 
 void Chart2ExportTest::testPieChartRotation()
 {
-    load (u"/chart2/qa/extras/data/docx/", u"pieChartRotation.docx");
+    loadFromURL(u"docx/pieChartRotation.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart","Office Open XML 
Text");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:view3D/c:rotX", "val", "40");
@@ -1170,7 +1205,7 @@ void Chart2ExportTest::testEmbeddingsOleObjectGrabBag()
    // after saving file.
    // This test case tests whether embeddings files grabbagged properly in 
correct object.
 
-   load(u"/chart2/qa/extras/data/docx/", u"testchartoleobjectembeddings.docx" 
);
+   loadFromURL(u"docx/testchartoleobjectembeddings.docx" );
    uno::Reference<text::XTextDocument> xTextDocument(mxComponent, 
uno::UNO_QUERY);
    uno::Reference<beans::XPropertySet> xTextDocumentPropertySet(xTextDocument, 
uno::UNO_QUERY);
    uno::Sequence<beans::PropertyValue> aGrabBag(0);
@@ -1241,7 +1276,7 @@ void checkSheetForGapWidthAndOverlap(uno::Reference< 
chart2::XChartDocument > co
 
 void Chart2ExportTest::testGapWidthXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"gapWidth.xlsx");
+    loadFromURL(u"xlsx/gapWidth.xlsx");
 
     uno::Reference< chart2::XChartDocument > xChartDoc = getChartDocFromSheet( 
0, mxComponent );
     checkSheetForGapWidthAndOverlap(xChartDoc, 120, -60);
@@ -1249,7 +1284,7 @@ void Chart2ExportTest::testGapWidthXLSX()
     xChartDoc = getChartDocFromSheet( 1, mxComponent );
     checkSheetForGapWidthAndOverlap(xChartDoc, 50, 30);
 
-    reload("Calc Office Open XML");
+    saveAndReload("Calc Office Open XML");
 
     xChartDoc = getChartDocFromSheet( 0, mxComponent );
     checkSheetForGapWidthAndOverlap(xChartDoc, 120, -60);
@@ -1260,7 +1295,7 @@ void Chart2ExportTest::testGapWidthXLSX()
 
 void Chart2ExportTest::testSmoothedLines()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"smoothedLines.ods");
+    loadFromURL(u"ods/smoothedLines.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:lineChart/c:ser[1]/c:smooth", "val", "0");
@@ -1268,7 +1303,7 @@ void Chart2ExportTest::testSmoothedLines()
 
 void Chart2ExportTest::testLabelStringODS()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"labelString.ods");
+    loadFromURL(u"ods/labelString.ods");
 
     uno::Reference< chart2::XChartDocument > xChartDoc = getChartDocFromSheet( 
0, mxComponent );
     Reference< chart2::data::XDataSequence > xLabelSeq =
@@ -1278,7 +1313,7 @@ void Chart2ExportTest::testLabelStringODS()
     OUString aLabelString = xLabelSeq->getSourceRangeRepresentation();
     CPPUNIT_ASSERT_EQUAL(OUString("\"LabelName\""), aLabelString);
 
-    reload("calc8");
+    saveAndReload("calc8");
 
     xChartDoc = getChartDocFromSheet( 0, mxComponent );
     xLabelSeq = getLabelDataSequenceFromDoc(xChartDoc);
diff --git a/chart2/qa/extras/chart2export2.cxx 
b/chart2/qa/extras/chart2export2.cxx
index b9b77c0bd112..64e5e5c676d4 100644
--- a/chart2/qa/extras/chart2export2.cxx
+++ b/chart2/qa/extras/chart2export2.cxx
@@ -27,9 +27,10 @@ protected:
 
 public:
     Chart2ExportTest2()
-        : ChartTest()
+        : ChartTest("/chart2/qa/extras/data/")
     {
     }
+
     void testSetSeriesToSecondaryAxisXLSX();
     void testCombinedChartSecondaryAxisXLSX();
     void testCombinedChartSecondaryAxisODS();
@@ -170,7 +171,7 @@ void 
Chart2ExportTest2::registerNamespaces(xmlXPathContextPtr& pXmlXPathCtx)
 
 void Chart2ExportTest2::testSetSeriesToSecondaryAxisXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"add_series_secondary_axis.xlsx");
+    loadFromURL(u"xlsx/add_series_secondary_axis.xlsx");
     Reference<chart2::XChartDocument> xChartDoc = getChartDocFromSheet(0, 
mxComponent);
     // Second series
     Reference<chart2::XDataSeries> xSeries = getDataSeriesFromDoc(xChartDoc, 
1);
@@ -190,7 +191,7 @@ void Chart2ExportTest2::testSetSeriesToSecondaryAxisXLSX()
 void Chart2ExportTest2::testCombinedChartSecondaryAxisXLSX()
 {
     // Original file was created with MS Office
-    load(u"/chart2/qa/extras/data/xlsx/", 
u"combined_chart_secondary_axis.xlsx");
+    loadFromURL(u"xlsx/combined_chart_secondary_axis.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     // Collect barchart axID on secondary Axis
@@ -217,7 +218,7 @@ void Chart2ExportTest2::testCombinedChartSecondaryAxisXLSX()
 void Chart2ExportTest2::testCombinedChartSecondaryAxisODS()
 {
     // Original file was created with LibreOffice
-    load(u"/chart2/qa/extras/data/ods/", u"combined_chart_secondary_axis.ods");
+    loadFromURL(u"ods/combined_chart_secondary_axis.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     // Collect barchart axID on secondary Axis
@@ -245,16 +246,19 @@ void 
Chart2ExportTest2::testCombinedChartSecondaryAxisODS()
 
 void Chart2ExportTest2::testCrossBetweenXLSX()
 {
+    // FIXME: validation error in OOXML export: Errors: 1
+    mbSkipValidation = true;
+
     // Original files were created with MS Office
     {
-        load(u"/chart2/qa/extras/data/xlsx/", u"tdf127777.xlsx");
+        loadFromURL(u"xlsx/tdf127777.xlsx");
         xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office 
Open XML");
         CPPUNIT_ASSERT(pXmlDoc);
         assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:valAx/c:crossBetween", "val",
                     "between");
     }
     {
-        load(u"/chart2/qa/extras/data/xlsx/", u"tdf132076.xlsx");
+        loadFromURL(u"xlsx/tdf132076.xlsx");
         xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office 
Open XML");
         CPPUNIT_ASSERT(pXmlDoc);
         assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:valAx/c:crossBetween", "val",
@@ -265,7 +269,7 @@ void Chart2ExportTest2::testCrossBetweenXLSX()
 void Chart2ExportTest2::testCrossBetweenWithDeletedAxis()
 {
     // Original file was created with MS Office (the category axis is deleted 
in the file)
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf128633.xlsx");
+    loadFromURL(u"xlsx/tdf128633.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:valAx/c:crossBetween", "val",
@@ -275,7 +279,7 @@ void Chart2ExportTest2::testCrossBetweenWithDeletedAxis()
 void Chart2ExportTest2::testCrossBetweenODS()
 {
     // Original file was created with LibreOffice
-    load(u"/chart2/qa/extras/data/ods/", u"test_CrossBetween.ods");
+    loadFromURL(u"ods/test_CrossBetween.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:valAx/c:crossBetween", "val",
@@ -284,7 +288,7 @@ void Chart2ExportTest2::testCrossBetweenODS()
 
 void Chart2ExportTest2::testAxisTitleRotationXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"axis_title_rotation.xlsx");
+    loadFromURL(u"xlsx/axis_title_rotation.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -294,7 +298,7 @@ void Chart2ExportTest2::testAxisTitleRotationXLSX()
 
 void Chart2ExportTest2::testAxisTitlePositionDOCX()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"testAxisTitlePosition.docx");
+    loadFromURL(u"docx/testAxisTitlePosition.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -326,14 +330,18 @@ void Chart2ExportTest2::testAxisTitlePositionDOCX()
 
 void Chart2ExportTest2::testAxisCrossBetweenDOCX()
 {
-    load(u"/chart2/qa/extras/data/odt/", u"axis-position.odt");
+    loadFromURL(u"odt/axis-position.odt");
+
+    // FIXME: validation error in OOXML export: Errors: 3
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     assertXPath(pXmlDoc, "(//c:crossBetween)[1]", "val", "midCat");
 }
 
 void Chart2ExportTest2::testPieChartDataPointExplosionXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", 
u"pie_chart_datapoint_explosion.xlsx");
+    loadFromURL(u"xlsx/pie_chart_datapoint_explosion.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -343,14 +351,7 @@ void 
Chart2ExportTest2::testPieChartDataPointExplosionXLSX()
 
 void Chart2ExportTest2::testCustomDataLabel()
 {
-    load(u"/chart2/qa/extras/data/pptx/", u"tdf115107.pptx");
-    xmlDocUniquePtr pXmlDoc = parseExport("ppt/charts/chart1", "Impress MS 
PowerPoint 2007 XML");
-    CPPUNIT_ASSERT(pXmlDoc);
-    // Check the data labels font color for the complete data series
-    assertXPath(pXmlDoc,
-                
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dLbls/c:txPr/a:p/a:pPr/"
-                "a:defRPr/a:solidFill/a:srgbClr",
-                "val", "404040");
+    loadFromURL(u"pptx/tdf115107.pptx");
 
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromDrawImpress(0, 
0), uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
@@ -458,6 +459,14 @@ void Chart2ExportTest2::testCustomDataLabel()
     
CPPUNIT_ASSERT_EQUAL(chart2::DataPointCustomLabelFieldType::DataPointCustomLabelFieldType_TEXT,
                          aFields[1]->getFieldType());
     CPPUNIT_ASSERT_EQUAL(OUString(" <CELLREF"), aFields[1]->getString());
+
+    xmlDocUniquePtr pXmlDoc = parseExport("ppt/charts/chart1", "Impress MS 
PowerPoint 2007 XML");
+    CPPUNIT_ASSERT(pXmlDoc);
+    // Check the data labels font color for the complete data series
+    assertXPath(pXmlDoc,
+                
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dLbls/c:txPr/a:p/a:pPr/"
+                "a:defRPr/a:solidFill/a:srgbClr",
+                "val", "404040");
 }
 
 /// Test for tdf#94235
@@ -465,8 +474,8 @@ void Chart2ExportTest2::testDataSeriesName()
 {
     // ODF
     {
-        load(u"/chart2/qa/extras/data/ods/", u"ser_labels.ods");
-        reload("calc8");
+        loadFromURL(u"ods/ser_labels.ods");
+        saveAndReload("calc8");
         uno::Reference<chart2::XChartDocument> xChartDoc = 
getChartDocFromSheet(0, mxComponent);
         uno::Reference<chart2::XDataSeries> 
xDataSeries(getDataSeriesFromDoc(xChartDoc, 0));
         CPPUNIT_ASSERT(xDataSeries.is());
@@ -479,8 +488,8 @@ void Chart2ExportTest2::testDataSeriesName()
 
     // OOXML
     {
-        load(u"/chart2/qa/extras/data/xlsx/", u"ser_labels.xlsx");
-        reload("Calc Office Open XML");
+        loadFromURL(u"xlsx/ser_labels.xlsx");
+        saveAndReload("Calc Office Open XML");
         uno::Reference<chart2::XChartDocument> xChartDoc = 
getChartDocFromSheet(0, mxComponent);
         uno::Reference<chart2::XDataSeries> 
xDataSeries(getDataSeriesFromDoc(xChartDoc, 0));
         CPPUNIT_ASSERT(xDataSeries.is());
@@ -494,7 +503,10 @@ void Chart2ExportTest2::testDataSeriesName()
 
 void Chart2ExportTest2::testCustomPositionofDataLabel()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"testCustomPosDataLabels.xlsx");
+    // FIXME: validation error in OOXML export: Errors: 1
+    mbSkipValidation = true;
+
+    loadFromURL(u"xlsx/testCustomPosDataLabels.xlsx");
     {
         xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office 
Open XML");
         CPPUNIT_ASSERT(pXmlDoc);
@@ -518,7 +530,7 @@ void Chart2ExportTest2::testCustomPositionofDataLabel()
         CPPUNIT_ASSERT_DOUBLES_EQUAL(-0.0742140311063737, nY, 1e-7);
     }
 
-    load(u"/chart2/qa/extras/data/docx/", u"testTdf108110.docx");
+    loadFromURL(u"docx/testTdf108110.docx");
     {
         xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office 
Open XML Text");
         CPPUNIT_ASSERT(pXmlDoc);
@@ -542,9 +554,9 @@ void Chart2ExportTest2::testCustomPositionofDataLabel()
         CPPUNIT_ASSERT_DOUBLES_EQUAL(0.172648731408574, nY, 1e-7);
     }
 
-    load(u"/chart2/qa/extras/data/ods/", u"tdf136024.ods");
+    loadFromURL(u"ods/tdf136024.ods");
     {
-        reload("calc8");
+        saveAndReload("calc8");
         // tdf#136024: test custom position of pie chart data label after an 
ods export
         Reference<chart2::XChartDocument> xChartDoc = getChartDocFromSheet(0, 
mxComponent);
         CPPUNIT_ASSERT(xChartDoc.is());
@@ -564,9 +576,7 @@ void Chart2ExportTest2::testCustomPositionofDataLabel()
 
 void Chart2ExportTest2::testCustomDataLabelMultipleSeries()
 {
-    load(u"/chart2/qa/extras/data/pptx/", u"tdf115107-2.pptx");
-    xmlDocUniquePtr pXmlDoc = parseExport("ppt/charts/chart2", "Impress MS 
PowerPoint 2007 XML");
-    CPPUNIT_ASSERT(pXmlDoc);
+    loadFromURL(u"pptx/tdf115107-2.pptx");
 
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromDrawImpress(0, 
0), uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
@@ -628,7 +638,10 @@ void Chart2ExportTest2::testCustomDataLabelMultipleSeries()
 
 void Chart2ExportTest2::testLeaderLines()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"testTdf90749.xlsx");
+    // FIXME: validation error in OOXML export: Errors: 2
+    mbSkipValidation = true;
+
+    loadFromURL(u"xlsx/testTdf90749.xlsx");
     {
         xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office 
Open XML");
         CPPUNIT_ASSERT(pXmlDoc);
@@ -641,7 +654,7 @@ void Chart2ExportTest2::testLeaderLines()
                     "c15:showLeaderLines",
                     "val", "0");
     }
-    load(u"/chart2/qa/extras/data/docx/", u"MSO_Custom_Leader_Line.docx");
+    loadFromURL(u"docx/MSO_Custom_Leader_Line.docx");
     {
         xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart1", "Office 
Open XML Text");
         CPPUNIT_ASSERT(pXmlDoc);
@@ -655,7 +668,7 @@ void Chart2ExportTest2::testLeaderLines()
 
 void Chart2ExportTest2::testNumberFormatExportPPTX()
 {
-    load(u"/chart2/qa/extras/data/pptx/", u"tdf115859.pptx");
+    loadFromURL(u"pptx/tdf115859.pptx");
     xmlDocUniquePtr pXmlDoc = parseExport("ppt/charts/chart", "Impress MS 
PowerPoint 2007 XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -667,7 +680,7 @@ void Chart2ExportTest2::testNumberFormatExportPPTX()
 
 void Chart2ExportTest2::testLabelSeparatorExportDOCX()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"testLabelSeparator.docx");
+    loadFromURL(u"docx/testLabelSeparator.docx");
 
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), 
uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
@@ -688,7 +701,7 @@ void Chart2ExportTest2::testLabelSeparatorExportDOCX()
 
 void Chart2ExportTest2::testChartTitlePropertiesColorFillPPTX()
 {
-    load(u"/chart2/qa/extras/data/pptx/", 
u"testChartTitlePropertiesColorFill.pptx");
+    loadFromURL(u"pptx/testChartTitlePropertiesColorFill.pptx");
     xmlDocUniquePtr pXmlDoc = parseExport("ppt/charts/chart", "Impress MS 
PowerPoint 2007 XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:solidFill/a:srgbClr", "val",
@@ -698,7 +711,7 @@ void 
Chart2ExportTest2::testChartTitlePropertiesColorFillPPTX()
 
 void Chart2ExportTest2::testChartTitlePropertiesGradientFillPPTX()
 {
-    load(u"/chart2/qa/extras/data/pptx/", 
u"testChartTitlePropertiesGradientFill.pptx");
+    loadFromURL(u"pptx/testChartTitlePropertiesGradientFill.pptx");
     xmlDocUniquePtr pXmlDoc = parseExport("ppt/charts/chart", "Impress MS 
PowerPoint 2007 XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc,
@@ -712,7 +725,7 @@ void 
Chart2ExportTest2::testChartTitlePropertiesGradientFillPPTX()
 
 void Chart2ExportTest2::testChartTitlePropertiesBitmapFillPPTX()
 {
-    load(u"/chart2/qa/extras/data/pptx/", 
u"testChartTitlePropertiesBitmapFill.pptx");
+    loadFromURL(u"pptx/testChartTitlePropertiesBitmapFill.pptx");
     xmlDocUniquePtr pXmlDoc = parseExport("ppt/charts/chart", "Impress MS 
PowerPoint 2007 XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:blipFill/a:blip", "embed", "rId1");
@@ -721,7 +734,7 @@ void 
Chart2ExportTest2::testChartTitlePropertiesBitmapFillPPTX()
 
 void Chart2ExportTest2::testxAxisLabelsRotation()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"xAxisLabelsRotation.xlsx");
+    loadFromURL(u"xlsx/xAxisLabelsRotation.xlsx");
     xmlDocUniquePtr pXmlDoc1 = parseExport("xl/charts/chart", "Calc Office 
Open XML");
     CPPUNIT_ASSERT(pXmlDoc1);
 
@@ -732,7 +745,7 @@ void Chart2ExportTest2::testxAxisLabelsRotation()
 
 void Chart2ExportTest2::testMultipleCategoryAxisLablesXLSX()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"multilevelcat.ods");
+    loadFromURL(u"ods/multilevelcat.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     // check category axis labels number of first level
@@ -764,7 +777,7 @@ void Chart2ExportTest2::testMultipleCategoryAxisLablesXLSX()
 
 void Chart2ExportTest2::testMultipleCategoryAxisLablesDOCX()
 {
-    load(u"/chart2/qa/extras/data/odt/", u"multilevelcat.odt");
+    loadFromURL(u"odt/multilevelcat.odt");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
     // check category axis labels number of first level
@@ -796,7 +809,7 @@ void Chart2ExportTest2::testMultipleCategoryAxisLablesDOCX()
 
 void Chart2ExportTest2::testTdf116163()
 {
-    load(u"/chart2/qa/extras/data/pptx/", u"tdf116163.pptx");
+    loadFromURL(u"pptx/tdf116163.pptx");
     xmlDocUniquePtr pXmlDoc = parseExport("ppt/charts/chart", "Impress MS 
PowerPoint 2007 XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -806,7 +819,7 @@ void Chart2ExportTest2::testTdf116163()
 
 void Chart2ExportTest2::testTdf111824()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf111824.xlsx");
+    loadFromURL(u"xlsx/tdf111824.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -820,7 +833,7 @@ void Chart2ExportTest2::testTdf111824()
 
 void Chart2ExportTest2::test3DAreaChartZAxis()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"test3DAreaChartZAxis.xlsx");
+    loadFromURL(u"xlsx/test3DAreaChartZAxis.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -834,7 +847,7 @@ void Chart2ExportTest2::test3DAreaChartZAxis()
 
 void Chart2ExportTest2::testTdf119029()
 {
-    load(u"/chart2/qa/extras/data/odp/", u"tdf119029.odp");
+    loadFromURL(u"odp/tdf119029.odp");
     // Only use "chart", without number, because the number depends on the 
previous tests
     xmlDocUniquePtr pXmlDoc = parseExport("ppt/charts/chart", "Impress MS 
PowerPoint 2007 XML");
     CPPUNIT_ASSERT(pXmlDoc);
@@ -846,8 +859,8 @@ void Chart2ExportTest2::testTdf119029()
 
 void Chart2ExportTest2::testTdf108022()
 {
-    load(u"/chart2/qa/extras/data/odt/", u"tdf108022.odt");
-    reload("Office Open XML Text");
+    loadFromURL(u"odt/tdf108022.odt");
+    saveAndReload("Office Open XML Text");
 
     // assert we really have two charts
     Reference<chart2::XChartDocument> xChartDoc1(getChartDocFromWriter(0), 
uno::UNO_QUERY);
@@ -858,7 +871,7 @@ void Chart2ExportTest2::testTdf108022()
 
 void Chart2ExportTest2::testTdf121744()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"tdf121744.docx");
+    loadFromURL(u"docx/tdf121744.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -873,8 +886,8 @@ void Chart2ExportTest2::testTdf121744()
 
 void Chart2ExportTest2::testTdf121189()
 {
-    load(u"/chart2/qa/extras/data/odp/", u"tdf121189.odp");
-    reload("Impress Office Open XML");
+    loadFromURL(u"odp/tdf121189.odp");
+    saveAndReload("Impress Office Open XML");
 
     uno::Reference<drawing::XDrawPagesSupplier> xDoc(mxComponent, 
uno::UNO_QUERY_THROW);
     uno::Reference<drawing::XDrawPage> 
xPage(xDoc->getDrawPages()->getByIndex(0),
@@ -887,8 +900,11 @@ void Chart2ExportTest2::testTdf121189()
 void Chart2ExportTest2::testTdf122031()
 {
     //Checks pie chart data label format.
+    loadFromURL(u"xlsx/tdf122031.xlsx");
+
+    // FIXME: validation error in OOXML export: Errors: 1
+    mbSkipValidation = true;
 
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf122031.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -907,7 +923,7 @@ void Chart2ExportTest2::testTdf122031()
 
 void Chart2ExportTest2::testTdf115012()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf115012.xlsx");
+    loadFromURL(u"xlsx/tdf115012.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     // workaround: use-zero instead of leave-gap to show the original line 
chart
@@ -916,7 +932,11 @@ void Chart2ExportTest2::testTdf115012()
 
 void Chart2ExportTest2::testTdf134118()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf134118.xlsx");
+    loadFromURL(u"xlsx/tdf134118.xlsx");
+
+    // FIXME: validation error in OOXML export: Errors: 1
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     // workaround: use leave-gap instead of zero to show the original line 
chart
@@ -925,11 +945,14 @@ void Chart2ExportTest2::testTdf134118()
 
 void Chart2ExportTest2::testTdf123206_customLabelText()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"tdf123206.docx");
+    loadFromURL(u"docx/tdf123206.docx");
 
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), 
uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
 
+    // FIXME: validation error in OOXML export: Errors: 2
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -941,11 +964,14 @@ void Chart2ExportTest2::testTdf123206_customLabelText()
 
 void Chart2ExportTest2::testCustomLabelText()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"testCustomlabeltext.docx");
+    loadFromURL(u"docx/testCustomlabeltext.docx");
 
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), 
uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
 
+    // FIXME: validation error in OOXML export: Errors: 3
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -976,9 +1002,9 @@ void Chart2ExportTest2::testCustomLabelText()
 
 void Chart2ExportTest2::testDeletedLegendEntries()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"deleted_legend_entry.xlsx");
+    loadFromURL(u"xlsx/deleted_legend_entry.xlsx");
     {
-        reload("Calc Office Open XML");
+        saveAndReload("Calc Office Open XML");
         Reference<chart2::XChartDocument> xChartDoc = getChartDocFromSheet(0, 
mxComponent);
         CPPUNIT_ASSERT(xChartDoc.is());
         Reference<chart2::XDataSeries> 
xDataSeries(getDataSeriesFromDoc(xChartDoc, 1));
@@ -989,9 +1015,9 @@ void Chart2ExportTest2::testDeletedLegendEntries()
         CPPUNIT_ASSERT(!bShowLegendEntry);
     }
 
-    load(u"/chart2/qa/extras/data/xlsx/", u"deleted_legend_entry2.xlsx");
+    loadFromURL(u"xlsx/deleted_legend_entry2.xlsx");
     {
-        reload("Calc Office Open XML");
+        saveAndReload("Calc Office Open XML");
         Reference<chart2::XChartDocument> xChartDoc = getChartDocFromSheet(0, 
mxComponent);
         CPPUNIT_ASSERT(xChartDoc.is());
         Reference<chart2::XDataSeries> 
xDataSeries(getDataSeriesFromDoc(xChartDoc, 0));
@@ -1015,7 +1041,7 @@ void Chart2ExportTest2::testDeletedLegendEntries()
 
 void Chart2ExportTest2::testTdf60316()
 {
-    load(u"/chart2/qa/extras/data/pptx/", u"tdf60316.pptx");
+    loadFromURL(u"pptx/tdf60316.pptx");
     xmlDocUniquePtr pXmlDoc = parseExport("ppt/charts/chart", "Impress MS 
PowerPoint 2007 XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -1026,8 +1052,8 @@ void Chart2ExportTest2::testTdf60316()
 
 void Chart2ExportTest2::testTdf130225()
 {
-    load(u"/chart2/qa/extras/data/docx/", 
u"piechart_deleted_legend_entry.docx");
-    reload("Office Open XML Text");
+    loadFromURL(u"docx/piechart_deleted_legend_entry.docx");
+    saveAndReload("Office Open XML Text");
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), 
uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
     Reference<chart2::XDataSeries> xDataSeries(getDataSeriesFromDoc(xChartDoc, 
0));
@@ -1041,7 +1067,7 @@ void Chart2ExportTest2::testTdf130225()
 
 void Chart2ExportTest2::testTdf59857()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"tdf59857.ods");
+    loadFromURL(u"ods/tdf59857.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -1055,7 +1081,7 @@ void Chart2ExportTest2::testTdf59857()
 
 void Chart2ExportTest2::testTdf126076()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"auto_marker_excel10.xlsx");
+    loadFromURL(u"xlsx/auto_marker_excel10.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -1069,8 +1095,8 @@ void Chart2ExportTest2::testTdf126076()
 
 void Chart2ExportTest2::testTdf75330()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"legend_overlay.ods");
-    reload("calc8");
+    loadFromURL(u"ods/legend_overlay.ods");
+    saveAndReload("calc8");
     {
         uno::Reference<chart2::XChartDocument> xChart2Doc = 
getChartDocFromSheet(0, mxComponent);
         uno::Reference<chart::XChartDocument> xChartDoc(xChart2Doc, 
uno::UNO_QUERY);
@@ -1080,7 +1106,7 @@ void Chart2ExportTest2::testTdf75330()
         CPPUNIT_ASSERT(xPropertySet->getPropertyValue("Overlay") >>= bOverlay);
         CPPUNIT_ASSERT(bOverlay);
     }
-    reload("Calc Office Open XML");
+    saveAndReload("Calc Office Open XML");
     {
         uno::Reference<chart2::XChartDocument> xChart2Doc = 
getChartDocFromSheet(0, mxComponent);
         uno::Reference<chart::XChartDocument> xChartDoc(xChart2Doc, 
uno::UNO_QUERY);
@@ -1094,13 +1120,15 @@ void Chart2ExportTest2::testTdf75330()
 
 void Chart2ExportTest2::testTdf127792()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"MSO_axis_position.docx");
+    loadFromURL(u"docx/MSO_axis_position.docx");
     {
         xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart1", "Office 
Open XML Text");
         CPPUNIT_ASSERT(pXmlDoc);
         assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:valAx/c:crossBetween", "val",
                     "between");
     }
+
+    loadFromURL(u"docx/MSO_axis_position.docx");
     {
         xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart2", "Office 
Open XML Text");
         CPPUNIT_ASSERT(pXmlDoc);
@@ -1111,9 +1139,9 @@ void Chart2ExportTest2::testTdf127792()
 
 void Chart2ExportTest2::testTdf131979()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"tdf131115.ods");
+    loadFromURL(u"ods/tdf131115.ods");
     {
-        reload("calc8");
+        saveAndReload("calc8");
         Reference<chart2::XChartDocument> xChartDoc = getChartDocFromSheet(0, 
mxComponent);
         CPPUNIT_ASSERT(xChartDoc.is());
         Reference<chart2::XDataSeries> 
xDataSeries(getDataSeriesFromDoc(xChartDoc, 0));
@@ -1127,9 +1155,9 @@ void Chart2ExportTest2::testTdf131979()
                                !blinknumberformattosource);
     }
 
-    load(u"/chart2/qa/extras/data/ods/", u"tdf131979.ods");
+    loadFromURL(u"ods/tdf131979.ods");
     {
-        reload("calc8");
+        saveAndReload("calc8");
         Reference<chart2::XChartDocument> xChartDoc = getChartDocFromSheet(0, 
mxComponent);
         CPPUNIT_ASSERT(xChartDoc.is());
         Reference<chart2::XDataSeries> 
xDataSeries(getDataSeriesFromDoc(xChartDoc, 0));
@@ -1146,8 +1174,11 @@ void Chart2ExportTest2::testTdf131979()
 
 void Chart2ExportTest2::testTdf132076()
 {
+    // FIXME: validation error in OOXML export: Errors: 1
+    mbSkipValidation = true;
+
     {
-        load(u"/chart2/qa/extras/data/ods/", u"tdf132076.ods");
+        loadFromURL(u"ods/tdf132076.ods");
         xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office 
Open XML");
         CPPUNIT_ASSERT(pXmlDoc);
         assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:catAx/c:numFmt", "formatCode",
@@ -1156,7 +1187,7 @@ void Chart2ExportTest2::testTdf132076()
                     "0");
     }
     {
-        load(u"/chart2/qa/extras/data/xlsx/", u"tdf132076.xlsx");
+        loadFromURL(u"xlsx/tdf132076.xlsx");
         xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office 
Open XML");
         CPPUNIT_ASSERT(pXmlDoc);
         assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:dateAx/c:numFmt", "formatCode",
@@ -1168,7 +1199,7 @@ void Chart2ExportTest2::testTdf132076()
 
 void Chart2ExportTest2::testTdf125812()
 {
-    load(u"/chart2/qa/extras/data/odp/", u"ellipticalGradientFill.odp");
+    loadFromURL(u"odp/ellipticalGradientFill.odp");
     xmlDocUniquePtr pXmlDoc = parseExport("ppt/charts/chart", "Impress MS 
PowerPoint 2007 XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:spPr/a:gradFill/a:path", "path",
@@ -1185,7 +1216,11 @@ void Chart2ExportTest2::testTdf125812()
 
 void Chart2ExportTest2::testTdf133190()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf133190_tdf133191.xlsx");
+    loadFromURL(u"xlsx/tdf133190_tdf133191.xlsx");
+
+    // FIXME: validation error in OOXML export: Errors: 1
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -1202,7 +1237,11 @@ void Chart2ExportTest2::testTdf133190()
 
 void Chart2ExportTest2::testTdf133191()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf133190_tdf133191.xlsx");
+    loadFromURL(u"xlsx/tdf133190_tdf133191.xlsx");
+
+    // FIXME: validation error in OOXML export: Errors: 1
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -1215,7 +1254,7 @@ void Chart2ExportTest2::testTdf133191()
 
 void Chart2ExportTest2::testTdf132594()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"chart_pie2007.xlsx");
+    loadFromURL(u"xlsx/chart_pie2007.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -1224,7 +1263,7 @@ void Chart2ExportTest2::testTdf132594()
 
 void Chart2ExportTest2::testTdf134255()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"tdf134255.docx");
+    loadFromURL(u"docx/tdf134255.docx");
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), 
uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
 
@@ -1236,6 +1275,9 @@ void Chart2ExportTest2::testTdf134255()
     CPPUNIT_ASSERT((xPropSet->getPropertyValue("TextWordWrap") >>= bWrap));
     CPPUNIT_ASSERT(bWrap);
 
+    // FIXME: validation error in OOXML export: Errors: 11
+    mbSkipValidation = true;
+
     // export test
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
@@ -1247,7 +1289,7 @@ void Chart2ExportTest2::testTdf134255()
 
 void Chart2ExportTest2::testTdf134977()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"custom_data_label.xlsx");
+    loadFromURL(u"xlsx/custom_data_label.xlsx");
 
     //import test
     uno::Reference<chart2::XChartDocument> xChartDoc = getChartDocFromSheet(0, 
mxComponent);
@@ -1262,6 +1304,9 @@ void Chart2ExportTest2::testTdf134977()
     aFields[0]->getPropertyValue("CharHeight") >>= nFontSize;
     CPPUNIT_ASSERT_EQUAL(static_cast<float>(9), nFontSize);
 
+    // FIXME: validation error in OOXML export: Errors: 2
+    mbSkipValidation = true;
+
     //export test
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
@@ -1273,7 +1318,7 @@ void Chart2ExportTest2::testTdf134977()
 
 void Chart2ExportTest2::testTdf123647()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"empty_chart.xlsx");
+    loadFromURL(u"xlsx/empty_chart.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -1282,7 +1327,11 @@ void Chart2ExportTest2::testTdf123647()
 
 void Chart2ExportTest2::testTdf136267()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf136267.xlsx");
+    loadFromURL(u"xlsx/tdf136267.xlsx");
+
+    // FIXME: validation error in OOXML export: Errors: 2
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -1294,8 +1343,8 @@ void Chart2ExportTest2::testTdf136267()
 
 void Chart2ExportTest2::testDataLabelPlacementPieChart()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf134978.xlsx");
-    reload("calc8");
+    loadFromURL(u"xlsx/tdf134978.xlsx");
+    saveAndReload("calc8");
     uno::Reference<chart::XChartDocument> xChartDoc(getChartCompFromSheet(0, 
mxComponent),
                                                     UNO_QUERY_THROW);
     // test the placement of the manually positioned label
@@ -1310,7 +1359,11 @@ void Chart2ExportTest2::testDataLabelPlacementPieChart()
 
 void Chart2ExportTest2::testTdf137917()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf137917.xlsx");
+    loadFromURL(u"xlsx/tdf137917.xlsx");
+
+    // FIXME: validation error in OOXML export: Errors: 1
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -1325,20 +1378,7 @@ void Chart2ExportTest2::testTdf137917()
 
 void Chart2ExportTest2::testTdf138204()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf138204.xlsx");
-    xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
-    CPPUNIT_ASSERT(pXmlDoc);
-
-    // Check the first data label field type
-    assertXPath(
-        pXmlDoc,
-        
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser[1]/c:dLbls/c:dLbl/c:tx/c:rich/a:p/a:fld",
-        "type", "CELLRANGE");
-
-    assertXPath(
-        pXmlDoc,
-        
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser[2]/c:dLbls/c:dLbl/c:tx/c:rich/a:p/a:fld",
-        "type", "CELLRANGE");
+    loadFromURL(u"xlsx/tdf138204.xlsx");
 
     Reference<chart2::XChartDocument> xChartDoc = getChartDocFromSheet(0, 
mxComponent);
     CPPUNIT_ASSERT(xChartDoc.is());
@@ -1389,11 +1429,28 @@ void Chart2ExportTest2::testTdf138204()
         CPPUNIT_ASSERT_EQUAL(aTestEntry.aCellRange, 
aFields[0]->getCellRange());
         CPPUNIT_ASSERT_EQUAL(aTestEntry.aString, aFields[0]->getString());
     }
+
+    // FIXME: validation error in OOXML export: Errors: 2
+    mbSkipValidation = true;
+
+    xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
+    CPPUNIT_ASSERT(pXmlDoc);
+
+    // Check the first data label field type
+    assertXPath(
+        pXmlDoc,
+        
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser[1]/c:dLbls/c:dLbl/c:tx/c:rich/a:p/a:fld",
+        "type", "CELLRANGE");
+
+    assertXPath(
+        pXmlDoc,
+        
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser[2]/c:dLbls/c:dLbl/c:tx/c:rich/a:p/a:fld",
+        "type", "CELLRANGE");
 }
 
 void Chart2ExportTest2::testTdf138181()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", 
u"piechart_deleted_legendentry.xlsx");
+    loadFromURL(u"xlsx/piechart_deleted_legendentry.xlsx");
     Reference<chart::XChartDocument> xChartDoc(getChartDocFromSheet(0, 
mxComponent),
                                                UNO_QUERY_THROW);
     Reference<drawing::XDrawPageSupplier> xDrawPageSupplier(xChartDoc, 
UNO_QUERY_THROW);
@@ -1419,8 +1476,8 @@ void Chart2ExportTest2::testTdf138181()
 
 void Chart2ExportTest2::testCustomShapeText()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"tdf72776.ods");
-    reload("calc8");
+    loadFromURL(u"ods/tdf72776.ods");
+    saveAndReload("calc8");
     Reference<chart::XChartDocument> xChartDoc(getChartDocFromSheet(0, 
mxComponent),
                                                UNO_QUERY_THROW);
     // test that the text of custom shape exists inside the chart
@@ -1435,8 +1492,8 @@ void Chart2ExportTest2::testCustomShapeText()
 
 void Chart2ExportTest2::testuserShapesXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf128621.xlsx");
-    reload("Calc Office Open XML");
+    loadFromURL(u"xlsx/tdf128621.xlsx");
+    saveAndReload("Calc Office Open XML");
 
     Reference<chart2::XChartDocument> xChartDoc = getChartDocFromSheet(0, 
mxComponent);
     CPPUNIT_ASSERT(xChartDoc.is());
@@ -1463,8 +1520,8 @@ void Chart2ExportTest2::testuserShapesXLSX()
 
 void Chart2ExportTest2::testuserShapesDOCX()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"tdf143130.docx");
-    reload("Office Open XML Text");
+    loadFromURL(u"docx/tdf143130.docx");
+    saveAndReload("Office Open XML Text");
 
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), 
uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
@@ -1491,8 +1548,8 @@ void Chart2ExportTest2::testuserShapesDOCX()
 
 void Chart2ExportTest2::testGraphicBlipXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf143127.xlsx");
-    reload("Calc Office Open XML");
+    loadFromURL(u"xlsx/tdf143127.xlsx");
+    saveAndReload("Calc Office Open XML");
 
     Reference<chart2::XChartDocument> xChartDoc = getChartDocFromSheet(0, 
mxComponent);
     CPPUNIT_ASSERT(xChartDoc.is());
@@ -1519,7 +1576,7 @@ void Chart2ExportTest2::testGraphicBlipXLSX()
 
 void Chart2ExportTest2::testNameRangeXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"chart_with_name_range.xlsx");
+    loadFromURL(u"xlsx/chart_with_name_range.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     // test the syntax of local range name on the local sheet.
@@ -1534,9 +1591,13 @@ void Chart2ExportTest2::testNameRangeXLSX()
 
 void Chart2ExportTest2::testTdf143942()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf143942.xlsx");
-    xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
-    CPPUNIT_ASSERT(pXmlDoc);
+    loadFromURL(u"xlsx/tdf143942.xlsx");
+
+    Reference<chart2::XChartDocument> xChartDoc = getChartDocFromSheet(0, 
mxComponent);
+    CPPUNIT_ASSERT(xChartDoc.is());
+
+    uno::Reference<chart2::XDataSeries> 
xDataSeries(getDataSeriesFromDoc(xChartDoc, 0));
+    CPPUNIT_ASSERT(xDataSeries.is());
 
     constexpr size_t nLabels = 4;
     OUString aCellRange = "Sheet1!$A$2:$A$5";
@@ -1547,6 +1608,26 @@ void Chart2ExportTest2::testTdf143942()
         "Test4",
     };
 
+    uno::Reference<beans::XPropertySet> xPropertySet;
+    uno::Sequence<uno::Reference<chart2::XDataPointCustomLabelField>> aFields;
+    for (size_t i = 0; i < nLabels; ++i)
+    {
+        xPropertySet.set(xDataSeries->getDataPointByIndex(i), 
uno::UNO_SET_THROW);
+        xPropertySet->getPropertyValue("CustomLabelFields") >>= aFields;
+        CPPUNIT_ASSERT_EQUAL(static_cast<sal_Int32>(1), aFields.getLength());
+        CPPUNIT_ASSERT_EQUAL(
+            
chart2::DataPointCustomLabelFieldType::DataPointCustomLabelFieldType_CELLRANGE,
+            aFields[0]->getFieldType());
+        CPPUNIT_ASSERT_EQUAL(aCellRange, aFields[0]->getCellRange());
+        CPPUNIT_ASSERT_EQUAL(aLabels[i], aFields[0]->getString());
+    }
+
+    // FIXME: validation error in OOXML export: Errors: 4
+    mbSkipValidation = true;
+
+    xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
+    CPPUNIT_ASSERT(pXmlDoc);
+
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser[1]/c:extLst/c:ext",
                 "uri", "{02D57815-91ED-43cb-92C2-25804820EDAC}");
     assertXPath(pXmlDoc,
@@ -1574,30 +1655,15 @@ void Chart2ExportTest2::testTdf143942()
                                + OString::number(i + 1) + "]/c:v",
                            aLabels[i]);
     }
-
-    Reference<chart2::XChartDocument> xChartDoc = getChartDocFromSheet(0, 
mxComponent);
-    CPPUNIT_ASSERT(xChartDoc.is());
-    uno::Reference<chart2::XDataSeries> 
xDataSeries(getDataSeriesFromDoc(xChartDoc, 0));
-    CPPUNIT_ASSERT(xDataSeries.is());
-
-    uno::Reference<beans::XPropertySet> xPropertySet;
-    uno::Sequence<uno::Reference<chart2::XDataPointCustomLabelField>> aFields;
-    for (size_t i = 0; i < nLabels; ++i)
-    {
-        xPropertySet.set(xDataSeries->getDataPointByIndex(i), 
uno::UNO_SET_THROW);
-        xPropertySet->getPropertyValue("CustomLabelFields") >>= aFields;
-        CPPUNIT_ASSERT_EQUAL(static_cast<sal_Int32>(1), aFields.getLength());
-        CPPUNIT_ASSERT_EQUAL(
-            
chart2::DataPointCustomLabelFieldType::DataPointCustomLabelFieldType_CELLRANGE,
-            aFields[0]->getFieldType());
-        CPPUNIT_ASSERT_EQUAL(aCellRange, aFields[0]->getCellRange());
-        CPPUNIT_ASSERT_EQUAL(aLabels[i], aFields[0]->getString());
-    }
 }
 
 void Chart2ExportTest2::testDateCategoriesPPTX()
 {
-    load(u"/chart2/qa/extras/data/pptx/", u"bnc889755.pptx");
+    loadFromURL(u"pptx/bnc889755.pptx");
+
+    // FIXME: validation error in OOXML export: Errors: 1
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("ppt/charts/chart", "Impress Office 
Open XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -1634,7 +1700,7 @@ void Chart2ExportTest2::testDateCategoriesPPTX()
 
 void Chart2ExportTest2::testDataTableImportExport()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"ChartDataTable.xlsx");
+    loadFromURL(u"xlsx/ChartDataTable.xlsx");
     {
         uno::Reference<chart2::XChartDocument> xChartDoc = 
getChartDocFromSheet(0, mxComponent);
         CPPUNIT_ASSERT(xChartDoc.is());
@@ -1657,7 +1723,7 @@ void Chart2ExportTest2::testDataTableImportExport()
         CPPUNIT_ASSERT(xPropertySet->getPropertyValue("Keys") >>= bKeys);
         CPPUNIT_ASSERT_EQUAL(false, bKeys);
     }
-    reload("calc8");
+    saveAndReload("calc8");
     {
         uno::Reference<chart2::XChartDocument> xChartDoc = 
getChartDocFromSheet(0, mxComponent);
         CPPUNIT_ASSERT(xChartDoc.is());
diff --git a/chart2/qa/extras/chart2export3.cxx 
b/chart2/qa/extras/chart2export3.cxx
index 2ed2eeb2a219..62e003f5efc0 100644
--- a/chart2/qa/extras/chart2export3.cxx
+++ b/chart2/qa/extras/chart2export3.cxx
@@ -28,7 +28,7 @@ protected:
 
     virtual void registerNamespaces(xmlXPathContextPtr& pXmlXPathCtx) override;
 public:
-    Chart2ExportTest3() : ChartTest() {}
+    Chart2ExportTest3() : ChartTest("/chart2/qa/extras/data/") {}
 
     void testTdf108107();
     void testTdf114139();
@@ -130,7 +130,11 @@ void 
Chart2ExportTest3::registerNamespaces(xmlXPathContextPtr& pXmlXPathCtx)
 
 void Chart2ExportTest3::testTdf108107()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf108107.xlsx");
+    loadFromURL(u"xlsx/tdf108107.xlsx");
+
+    // FIXME: validation error in OOXML export: Errors: 1
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:lineChart/c:ser/c:dLbls/c:dLbl[1]/c:idx", 
"val", "1");
@@ -140,7 +144,7 @@ void Chart2ExportTest3::testTdf108107()
 
 void Chart2ExportTest3::testTdf114139()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf114139.xlsx");
+    loadFromURL(u"xlsx/tdf114139.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -152,7 +156,7 @@ void Chart2ExportTest3::testTdf114139()
 
 void Chart2ExportTest3::testTdf64224()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"tdf64224.ods");
+    loadFromURL(u"ods/tdf64224.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -163,7 +167,7 @@ void Chart2ExportTest3::testTdf64224()
 
 void Chart2ExportTest3::testChartTitlePropertiesColorFillDOCX()
 {
-    load(u"/chart2/qa/extras/data/docx/", 
u"testChartTitlePropertiesColorFill.docx");
+    loadFromURL(u"docx/testChartTitlePropertiesColorFill.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart","Office Open XML 
Text");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:solidFill/a:srgbClr", "val", "ff0000");
@@ -172,7 +176,7 @@ void 
Chart2ExportTest3::testChartTitlePropertiesColorFillDOCX()
 
 void Chart2ExportTest3::testChartTitlePropertiesGradientFillDOCX()
 {
-    load(u"/chart2/qa/extras/data/docx/", 
u"testChartTitlePropertiesGradientFill.docx");
+    loadFromURL(u"docx/testChartTitlePropertiesGradientFill.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart","Office Open XML 
Text");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr", 
"val", "cccccc");
@@ -182,7 +186,7 @@ void 
Chart2ExportTest3::testChartTitlePropertiesGradientFillDOCX()
 
 void Chart2ExportTest3::testChartTitlePropertiesBitmapFillDOCX()
 {
-    load(u"/chart2/qa/extras/data/docx/", 
u"testChartTitlePropertiesBitmapFill.docx");
+    loadFromURL(u"docx/testChartTitlePropertiesBitmapFill.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart","Office Open XML 
Text");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:blipFill/a:blip", "embed", "rId1");
@@ -193,7 +197,7 @@ void 
Chart2ExportTest3::testChartTitlePropertiesBitmapFillDOCX()
 void Chart2ExportTest3::testColorGradientWithTransparencyDOCX()
 {
     // Test color gradient (two color) with gradient transparency
-    load(u"/chart2/qa/extras/data/docx/", 
u"testColorGradientWithTransparency.docx");
+    loadFromURL(u"docx/testColorGradientWithTransparency.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
     // Test the transparency of the first color
@@ -205,7 +209,7 @@ void 
Chart2ExportTest3::testColorGradientWithTransparencyDOCX()
 void Chart2ExportTest3::testColorGradientWithTransparencyODS()
 {
     // Test color gradient (two color) with simple transparency
-    load(u"/chart2/qa/extras/data/ods/", 
u"testColorGradientWithTransparency.ods");
+    loadFromURL(u"ods/testColorGradientWithTransparency.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     // Test the transparency of the first color
@@ -217,7 +221,7 @@ void 
Chart2ExportTest3::testColorGradientWithTransparencyODS()
 void Chart2ExportTest3::testColorGradientStopXLSX()
 {
     // Test color gradient (two color) stop of the first color
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf128619.xlsx");
+    loadFromURL(u"xlsx/tdf128619.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     // Test the position of the first color
@@ -228,7 +232,7 @@ void Chart2ExportTest3::testColorGradientStopXLSX()
 
 void Chart2ExportTest3::testRadialColorGradientDOCX()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"tdf128794.docx");
+    loadFromURL(u"docx/tdf128794.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
     // Test the gradient style (if there is no 'a:path' attribute, it is a 
linear gradient)
@@ -239,7 +243,7 @@ void Chart2ExportTest3::testRadialColorGradientDOCX()
 
 void Chart2ExportTest3::testBarChartDataPointPropDOCX()
 {
-    load(u"/chart2/qa/extras/data/docx/", 
u"testBarChartDataPointPropDOCX.docx");
+    loadFromURL(u"docx/testBarChartDataPointPropDOCX.docx");
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart", "Office Open 
XML Text");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -257,7 +261,11 @@ void Chart2ExportTest3::testBarChartDataPointPropDOCX()
 
 void Chart2ExportTest3::testFdo83058dlblPos()
 {
-    load (u"/chart2/qa/extras/data/docx/", u"fdo83058_dlblPos.docx");
+    loadFromURL(u"docx/fdo83058_dlblPos.docx");
+
+    // FIXME: validation error in OOXML export: Errors: 1
+    mbSkipValidation = true;
+
     xmlDocUniquePtr pXmlDoc = parseExport("word/charts/chart","Office Open XML 
Text");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser[1]/c:dLbls[1]/c:dLbl[2]/c:dLblPos",
 "val", "outEnd");
@@ -268,7 +276,7 @@ void Chart2ExportTest3::testFdo83058dlblPos()
 
 void Chart2ExportTest3::testAutoTitleDelXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"autotitledel_2007.xlsx");
+    loadFromURL(u"xlsx/autotitledel_2007.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart","Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:autoTitleDeleted", "val", 
"0");
@@ -276,7 +284,7 @@ void Chart2ExportTest3::testAutoTitleDelXLSX()
 
 void Chart2ExportTest3::testDispBlanksAsXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"dispBlanksAs_2007.xlsx");
+    loadFromURL(u"xlsx/dispBlanksAs_2007.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart","Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:dispBlanksAs", "val", "gap");
@@ -284,7 +292,7 @@ void Chart2ExportTest3::testDispBlanksAsXLSX()
 
 void Chart2ExportTest3::testMarkerColorXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"markerColor.xlsx");
+    loadFromURL(u"xlsx/markerColor.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser/c:marker/c:spPr/a:solidFill/a:srgbClr",
 "val", "92d050");
@@ -292,7 +300,7 @@ void Chart2ExportTest3::testMarkerColorXLSX()
 
 void Chart2ExportTest3::testRoundedCornersXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"markerColor.xlsx");
+    loadFromURL(u"xlsx/markerColor.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, "/c:chartSpace/c:roundedCorners", "val", "0");
@@ -300,7 +308,7 @@ void Chart2ExportTest3::testRoundedCornersXLSX()
 
 void Chart2ExportTest3::testAxisNumberFormatXLSX()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"axis_number_format.ods");
+    loadFromURL(u"ods/axis_number_format.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:valAx", 2);
@@ -313,7 +321,10 @@ void Chart2ExportTest3::testAxisNumberFormatXLSX()
 
 void Chart2ExportTest3::testDataPointLabelNumberFormatXLSX()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"tdf123774.ods");
+    // FIXME: validation error in OOXML export: Errors: 1
+    mbSkipValidation = true;
+
+    loadFromURL(u"ods/tdf123774.ods");
     {
         xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office 
Open XML");
         CPPUNIT_ASSERT(pXmlDoc);
@@ -324,7 +335,7 @@ void Chart2ExportTest3::testDataPointLabelNumberFormatXLSX()
         assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:pieChart/c:ser/c:dLbls/c:dLbl[1]/c:numFmt", 
"sourceLinked", "0");
     }
 
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf130986.xlsx");
+    loadFromURL(u"xlsx/tdf130986.xlsx");
     {
         xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office 
Open XML");
         CPPUNIT_ASSERT(pXmlDoc);
@@ -336,7 +347,7 @@ void Chart2ExportTest3::testDataPointLabelNumberFormatXLSX()
 
 void Chart2ExportTest3::testDataLabelDefaultValuesXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"data_label.xlsx");
+    loadFromURL(u"xlsx/data_label.xlsx");
     Reference< chart2::XChartDocument> xDoc = getChartDocFromSheet(0, 
mxComponent);
     Reference<chart2::XDataSeries> xSeries = getDataSeriesFromDoc(xDoc, 0);
     Reference<beans::XPropertySet> xPropSet(xSeries, uno::UNO_QUERY_THROW);
@@ -353,7 +364,7 @@ void Chart2ExportTest3::testDataLabelDefaultValuesXLSX()
 
 void Chart2ExportTest3::testDataLabelFillColor()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"data_labels_fill_color.xlsx");
+    loadFromURL(u"xlsx/data_labels_fill_color.xlsx");
     Reference< chart2::XChartDocument> xDoc = getChartDocFromSheet(0, 
mxComponent);
     Reference<chart2::XDataSeries> xSeries = getDataSeriesFromDoc(xDoc, 0);
     Reference<beans::XPropertySet> xPropSet(xSeries, uno::UNO_QUERY_THROW);
@@ -368,7 +379,7 @@ void Chart2ExportTest3::testDataLabelFillColor()
 
 void Chart2ExportTest3::testTitleOverlayXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"chart_title.xlsx");
+    loadFromURL(u"xlsx/chart_title.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:title/c:overlay", "val", 
"0");
@@ -376,7 +387,7 @@ void Chart2ExportTest3::testTitleOverlayXLSX()
 
 void Chart2ExportTest3::testInvertIfNegativeXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"bar_chart_simple.xlsx");
+    loadFromURL(u"xlsx/bar_chart_simple.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:invertIfNegative", "val", 
"0");
@@ -384,7 +395,7 @@ void Chart2ExportTest3::testInvertIfNegativeXLSX()
 
 void Chart2ExportTest3::testBubble3DXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"bubble_chart_simple.xlsx");
+    loadFromURL(u"xlsx/bubble_chart_simple.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:bubbleChart/c:ser[1]/c:bubble3D", "val", 
"0");
@@ -394,7 +405,7 @@ void Chart2ExportTest3::testBubble3DXLSX()
 
 void Chart2ExportTest3::testNoMarkerXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"no_marker.xlsx");
+    loadFromURL(u"xlsx/no_marker.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:lineChart/c:ser[1]/c:marker/c:symbol", 
"val", "none");
@@ -404,7 +415,7 @@ void Chart2ExportTest3::testNoMarkerXLSX()
 
 void Chart2ExportTest3::testTitleManualLayoutXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"title_manual_layout.xlsx");
+    loadFromURL(u"xlsx/title_manual_layout.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:layout/c:manualLayout/c:layoutTarget", 0);
@@ -427,7 +438,7 @@ void Chart2ExportTest3::testTitleManualLayoutXLSX()
 
 void Chart2ExportTest3::testPlotAreaManualLayoutXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"plot_area_manual_layout.xlsx");
+    loadFromURL(u"xlsx/plot_area_manual_layout.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -460,7 +471,7 @@ void Chart2ExportTest3::testPlotAreaManualLayoutXLSX()
 
 void Chart2ExportTest3::testLegendManualLayoutXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"legend_manual_layout.xlsx");
+    loadFromURL(u"xlsx/legend_manual_layout.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -496,7 +507,7 @@ void Chart2ExportTest3::testLegendManualLayoutXLSX()
 
 void Chart2ExportTest3::testChartSubTitle()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"testChartSubTitle.ods");
+    loadFromURL(u"ods/testChartSubTitle.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     // test properties of subtitle
@@ -510,7 +521,7 @@ void Chart2ExportTest3::testChartSubTitle()
 
 void Chart2ExportTest3::testChartMainWithSubTitle()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"testChartMainWithSubTitle.ods");
+    loadFromURL(u"ods/testChartMainWithSubTitle.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     // test properties of title
@@ -525,7 +536,7 @@ void Chart2ExportTest3::testChartMainWithSubTitle()
 
 void Chart2ExportTest3::testAutoTitleDeleted()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"testAutoTitleDeleted.xlsx");
+    loadFromURL(u"xlsx/testAutoTitleDeleted.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:autoTitleDeleted", "val", 
"1");
@@ -533,7 +544,7 @@ void Chart2ExportTest3::testAutoTitleDeleted()
 
 void Chart2ExportTest3::testChartTitlePropertiesColorFillXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", 
u"testChartTitlePropertiesColorFill.xlsx");
+    loadFromURL(u"xlsx/testChartTitlePropertiesColorFill.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:solidFill/a:srgbClr", "val", "ff0000");
@@ -542,7 +553,7 @@ void 
Chart2ExportTest3::testChartTitlePropertiesColorFillXLSX()
 
 void Chart2ExportTest3::testChartTitlePropertiesGradientFillXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", 
u"testChartTitlePropertiesGradientFill.xlsx");
+    loadFromURL(u"xlsx/testChartTitlePropertiesGradientFill.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr", 
"val", "cccccc");
@@ -552,7 +563,7 @@ void 
Chart2ExportTest3::testChartTitlePropertiesGradientFillXLSX()
 
 void Chart2ExportTest3::testChartTitlePropertiesBitmapFillXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", 
u"testChartTitlePropertiesBitmapFill.xlsx");
+    loadFromURL(u"xlsx/testChartTitlePropertiesBitmapFill.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:blipFill/a:blip", "embed", "rId1");
@@ -561,7 +572,7 @@ void 
Chart2ExportTest3::testChartTitlePropertiesBitmapFillXLSX()
 
 void Chart2ExportTest3::testBarChartDataPointPropXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", 
u"testBarChartDataPointPropXLSX.xlsx");
+    loadFromURL(u"xlsx/testBarChartDataPointPropXLSX.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -617,7 +628,7 @@ void checkSheetForGapWidthAndOverlap(uno::Reference< 
chart2::XChartDocument > co
 
 void Chart2ExportTest3::testDataseriesOverlapStackedChartXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", 
u"testDataseriesOverlapStackedChart.xlsx");
+    loadFromURL(u"xlsx/testDataseriesOverlapStackedChart.xlsx");
 
     // test the overlap value of a simple Stacked Column Chart
     uno::Reference< chart2::XChartDocument > xChartDoc = getChartDocFromSheet( 
0, mxComponent );
@@ -627,7 +638,7 @@ void 
Chart2ExportTest3::testDataseriesOverlapStackedChartXLSX()
     xChartDoc = getChartDocFromSheet( 1, mxComponent );
     checkSheetForGapWidthAndOverlap(xChartDoc, 100, 35);
 
-    reload("Calc Office Open XML");
+    saveAndReload("Calc Office Open XML");
 
     xChartDoc = getChartDocFromSheet( 0, mxComponent );
     checkSheetForGapWidthAndOverlap(xChartDoc, 100, 100);
@@ -638,7 +649,7 @@ void 
Chart2ExportTest3::testDataseriesOverlapStackedChartXLSX()
 
 void Chart2ExportTest3::testAxisCharacterPropertiesXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"axis_character_properties.xlsx");
+    loadFromURL(u"xlsx/axis_character_properties.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -655,7 +666,7 @@ void Chart2ExportTest3::testAxisCharacterPropertiesXLSX()
 
 void Chart2ExportTest3::testTitleCharacterPropertiesXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"title_character_properties.xlsx");
+    loadFromURL(u"xlsx/title_character_properties.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -668,7 +679,7 @@ void Chart2ExportTest3::testTitleCharacterPropertiesXLSX()
 
 void Chart2ExportTest3::testPlotVisOnlyXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"hidden_cells.xlsx");
+    loadFromURL(u"xlsx/hidden_cells.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -677,7 +688,7 @@ void Chart2ExportTest3::testPlotVisOnlyXLSX()
 
 void Chart2ExportTest3::testBarChartVaryColorsXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"tdf90876.xlsx");
+    loadFromURL(u"xlsx/tdf90876.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -686,7 +697,7 @@ void Chart2ExportTest3::testBarChartVaryColorsXLSX()
 
 void Chart2ExportTest3::testTdf96161()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"tdf96161.ods");
+    loadFromURL(u"ods/tdf96161.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -695,8 +706,12 @@ void Chart2ExportTest3::testTdf96161()
 
 void Chart2ExportTest3::testTableOnPage3()
 {
-    load(u"/chart2/qa/extras/data/docx/", u"TableOnPage3.docx");
-    reload("Office Open XML Text");
+    loadFromURL(u"docx/TableOnPage3.docx");
+
+    // FIXME: validation error in OOXML export: Errors: 2
+    mbSkipValidation = true;
+
+    saveAndReload("Office Open XML Text");
 
     Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), 
uno::UNO_QUERY);
     CPPUNIT_ASSERT(xChartDoc.is());
@@ -711,7 +726,7 @@ void Chart2ExportTest3::testTableOnPage3()
 
 void Chart2ExportTest3::testMultipleAxisXLSX()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"multiple_axis.ods");
+    loadFromURL(u"ods/multiple_axis.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -726,7 +741,7 @@ void Chart2ExportTest3::testMultipleAxisXLSX()
 
 void Chart2ExportTest3::testSecondaryAxisXLSX()
 {
-    load(u"/chart2/qa/extras/data/ods/", u"secondary_axis.ods");
+    loadFromURL(u"ods/secondary_axis.ods");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
 
@@ -742,7 +757,7 @@ void Chart2ExportTest3::testSecondaryAxisXLSX()
 
 void Chart2ExportTest3::testBarChartSecondaryAxisXLSX()
 {
-    load(u"/chart2/qa/extras/data/xlsx/", u"testSecondaryAxis.xlsx");
+    loadFromURL(u"xlsx/testSecondaryAxis.xlsx");
     xmlDocUniquePtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
     CPPUNIT_ASSERT(pXmlDoc);
     // Collect barchart axID on primary Axis
diff --git a/chart2/qa/extras/chart2geometry.cxx 
b/chart2/qa/extras/chart2geometry.cxx
index a6fd4a8b3620..9073fcb42cfe 100644
--- a/chart2/qa/extras/chart2geometry.cxx
+++ b/chart2/qa/extras/chart2geometry.cxx
@@ -30,7 +30,7 @@ protected:
 
 public:
     Chart2GeometryTest()
-        : ChartTest()

... etc. - the rest is truncated

Reply via email to