chart2/qa/extras/chart2export.cxx           |   10 ++---
 chart2/qa/extras/chart2export2.cxx          |   54 +++++++++++++++-------------
 chart2/qa/extras/chart2export3.cxx          |   54 ++++++++++++++--------------
 include/test/xmltesttools.hxx               |   11 +++++
 oox/qa/unit/mcgr.cxx                        |   24 ++++++------
 sc/qa/unit/ThemeImportExportTest.cxx        |   28 +++++++-------
 sc/qa/unit/subsequent_export_test3.cxx      |    9 ++--
 sd/qa/unit/export-tests-ooxml1.cxx          |   33 ++++++++++-------
 sd/qa/unit/export-tests-ooxml2.cxx          |   14 ++++---
 sd/qa/unit/export-tests-ooxml3.cxx          |   36 +++++++++---------
 sd/qa/unit/export-tests-ooxml4.cxx          |   20 +++++-----
 sw/qa/extras/ooxmlexport/ooxmlexport6.cxx   |    8 ++--
 sw/qa/extras/ooxmlexport/ooxmlexport7.cxx   |   18 ++++-----
 sw/qa/extras/ooxmlexport/ooxmlw14export.cxx |   10 ++---
 test/source/xmltesttools.cxx                |    8 ++++
 15 files changed, 187 insertions(+), 150 deletions(-)

New commits:
commit 3431c1ee1be1bd33638ffe5ff2e340a692bed9dc
Author:     Michael Meeks <[email protected]>
AuthorDate: Tue Oct 7 16:33:11 2025 +0100
Commit:     Caolán McNamara <[email protected]>
CommitDate: Thu Oct 9 12:43:54 2025 +0200

    oox: add case-insensitive hex color comparison to the tests.
    
    Change-Id: I1d0f6d5e21a27d45f1a8d3a837ff6094a9e0cf34
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/192045
    Tested-by: Jenkins CollaboraOffice <[email protected]>
    Reviewed-by: Caolán McNamara <[email protected]>
    Tested-by: Caolán McNamara <[email protected]>

diff --git a/chart2/qa/extras/chart2export.cxx 
b/chart2/qa/extras/chart2export.cxx
index 3f37794e1d10..291f87586b9f 100644
--- a/chart2/qa/extras/chart2export.cxx
+++ b/chart2/qa/extras/chart2export.cxx
@@ -235,12 +235,12 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest, 
testErrorBarPropXLSX)
     // test y error bars property
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser/c:errBars[1]/c:errDir", 
"val", u"y");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser/c:errBars[1]/c:spPr/a:ln",
 "w", u"12600");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser/c:errBars[1]/c:spPr/a:ln/a:solidFill/a:srgbClr",
 "val", u"ff0000");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser/c:errBars[1]/c:spPr/a:ln/a:solidFill/a:srgbClr",
 "val", u"ff0000");
 
     // test x error bars property
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser/c:errBars[2]/c:errDir", 
"val", u"x");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser/c:errBars[2]/c:spPr/a:ln",
 "w", u"9360");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser/c:errBars[2]/c:spPr/a:ln/a:solidFill/a:srgbClr",
 "val", u"595959");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser/c:errBars[2]/c:spPr/a:ln/a:solidFill/a:srgbClr",
 "val", u"595959");
 }
 
 // This method tests the preservation of properties for trendlines / 
regression curves
@@ -657,11 +657,11 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest, 
testTdf126115IndividualMarker)
     // 1. series
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser[1]/c:dPt/c:marker/c:symbol",
 "val", u"square");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser[1]/c:dPt/c:marker/c:size",
 "val", u"8");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser[1]/c:dPt/c:marker/c:spPr/a:solidFill/a:srgbClr",
 "val", u"ff0000");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser[1]/c:dPt/c:marker/c:spPr/a:solidFill/a:srgbClr",
 "val", u"ff0000");
     // 2. series
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser[2]/c:dPt/c:marker/c:symbol",
 "val", u"x");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser[2]/c:dPt/c:marker/c:size",
 "val", u"15");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser[2]/c:dPt/c:marker/c:spPr/a:solidFill/a:srgbClr",
 "val", u"7030a0");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser[2]/c:dPt/c:marker/c:spPr/a:solidFill/a:srgbClr",
 "val", u"7030a0");
 }
 
 CPPUNIT_TEST_FIXTURE(Chart2ExportTest, testAxisNumberFormatODS)
@@ -988,7 +988,7 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest, 
testIndividualDataLabelProps)
     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", u"1");
     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",
 "sz", u"1600");
-    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/a:solidFill/a:srgbClr",
 "val", u"ff0000");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser[3]/c:dLbls/c:dLbl/c:txPr/a:p/a:pPr/a:defRPr/a:solidFill/a:srgbClr",
 "val", u"ff0000");
     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/a:latin",
 "typeface", u"Times New Roman");
 }
 
diff --git a/chart2/qa/extras/chart2export2.cxx 
b/chart2/qa/extras/chart2export2.cxx
index 93492645afc4..d1e6a8846072 100644
--- a/chart2/qa/extras/chart2export2.cxx
+++ b/chart2/qa/extras/chart2export2.cxx
@@ -162,10 +162,11 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest2, 
testChartexTitleXLSX)
 
     assertXPath(pXmlDoc, 
"/cx:chartSpace/cx:chart/cx:plotArea/cx:plotAreaRegion/cx:series",
                 "layoutId", u"funnel");
-    assertXPath(pXmlDoc,
-                
"/cx:chartSpace/cx:chart/cx:plotArea/cx:plotAreaRegion/cx:series/cx:spPr/"
-                "a:solidFill/a:srgbClr",
-                "val", u"c55a11");
+    assertXPathInsensitive(
+        pXmlDoc,
+        
"/cx:chartSpace/cx:chart/cx:plotArea/cx:plotAreaRegion/cx:series/cx:spPr/"
+        "a:solidFill/a:srgbClr",
+        "val", u"c55a11");
     assertXPathContent(pXmlDoc, 
"/cx:chartSpace/cx:chart/cx:title/cx:tx/cx:txData/cx:v",
                        u"Funnel chart!");
 }
@@ -352,10 +353,11 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest2, 
testCustomDataLabel)
     xmlDocUniquePtr pXmlDoc = parseExport(u"ppt/charts/chart1.xml"_ustr);
     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", u"404040");
+    assertXPathInsensitive(
+        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", u"404040");
 }
 
 /// Test for tdf#94235
@@ -608,7 +610,7 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest2, 
testTdf161607PieChartLeaderLinesColorWid
     CPPUNIT_ASSERT_LESSEQUAL(static_cast<sal_Int32>(100), std::abs(nWidth - 
88900));
 
     // test LeaderLines Color
-    assertXPath(
+    assertXPathInsensitive(
         pXmlDoc,
         
"/c:chartSpace/c:chart/c:plotArea/c:doughnutChart/c:ser/c:dLbls/c:leaderLines/c:spPr/"
         "a:ln/a:solidFill/a:srgbClr",
@@ -656,8 +658,8 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest2, 
testChartTitlePropertiesColorFillPPTX)
     save(u"Impress MS PowerPoint 2007 XML"_ustr);
     xmlDocUniquePtr pXmlDoc = parseExport(u"ppt/charts/chart1.xml"_ustr);
     CPPUNIT_ASSERT(pXmlDoc);
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:solidFill/a:srgbClr", "val",
-                u"ff0000");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:solidFill/a:srgbClr",
+                           "val", u"ff0000");
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:title/c:spPr/a:ln/a:noFill", 
1);
 }
 
@@ -667,12 +669,12 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest2, 
testChartTitlePropertiesGradientFillPPTX
     save(u"Impress MS PowerPoint 2007 XML"_ustr);
     xmlDocUniquePtr pXmlDoc = parseExport(u"ppt/charts/chart1.xml"_ustr);
     CPPUNIT_ASSERT(pXmlDoc);
-    assertXPath(pXmlDoc,
-                
"/c:chartSpace/c:chart/c:title/c:spPr/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr", 
"val",
-                u"f6f8fc");
-    assertXPath(pXmlDoc,
-                
"/c:chartSpace/c:chart/c:title/c:spPr/a:gradFill/a:gsLst/a:gs[2]/a:srgbClr", 
"val",
-                u"c7d5ed");
+    assertXPathInsensitive(
+        pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr", 
"val",
+        u"f6f8fc");
+    assertXPathInsensitive(
+        pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:gradFill/a:gsLst/a:gs[2]/a:srgbClr", 
"val",
+        u"c7d5ed");
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:title/c:spPr/a:ln/a:noFill", 
1);
 }
 
@@ -1055,11 +1057,12 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest2, testTdf59857)
     CPPUNIT_ASSERT(pXmlDoc);
 
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:floor/c:spPr/a:ln/a:noFill", 
1);
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:floor/c:spPr/a:solidFill/a:srgbClr", "val",
-                u"cccccc");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:floor/c:spPr/a:solidFill/a:srgbClr",
+                           "val", u"cccccc");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:backWall/c:spPr/a:ln/a:noFill", 0);
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:backWall/c:spPr/a:ln/a:solidFill/a:srgbClr",
-                "val", u"b3b3b3");
+    assertXPathInsensitive(pXmlDoc,
+                           
"/c:chartSpace/c:chart/c:backWall/c:spPr/a:ln/a:solidFill/a:srgbClr",
+                           "val", u"b3b3b3");
 }
 
 CPPUNIT_TEST_FIXTURE(Chart2ExportTest2, testTdf126076)
@@ -1751,10 +1754,11 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest2, testTdf166249)
     CPPUNIT_ASSERT(pXmlDoc);
 
     // test color and alpha value of data label borders
-    assertXPath(pXmlDoc,
-                
"/c:chartSpace/c:chart/c:plotArea/c:pieChart/c:ser/c:dLbls/c:dLbl[1]/c:spPr/a:ln/"
-                "a:solidFill/a:srgbClr",
-                "val", u"156082");
+    assertXPathInsensitive(
+        pXmlDoc,
+        
"/c:chartSpace/c:chart/c:plotArea/c:pieChart/c:ser/c:dLbls/c:dLbl[1]/c:spPr/a:ln/"
+        "a:solidFill/a:srgbClr",
+        "val", u"156082");
 
     assertXPath(pXmlDoc,
                 
"/c:chartSpace/c:chart/c:plotArea/c:pieChart/c:ser/c:dLbls/c:dLbl[1]/c:spPr/a:ln/"
diff --git a/chart2/qa/extras/chart2export3.cxx 
b/chart2/qa/extras/chart2export3.cxx
index 627ee808c3fc..1b17d0ba1e6c 100644
--- a/chart2/qa/extras/chart2export3.cxx
+++ b/chart2/qa/extras/chart2export3.cxx
@@ -69,7 +69,7 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, 
testChartTitlePropertiesColorFillDOCX)
     save(u"Office Open XML Text"_ustr);
     xmlDocUniquePtr pXmlDoc = parseExport(u"word/charts/chart1.xml"_ustr);
     CPPUNIT_ASSERT(pXmlDoc);
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:solidFill/a:srgbClr", "val", u"ff0000");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:solidFill/a:srgbClr", "val", u"ff0000");
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:title/c:spPr/a:ln/a:noFill", 
1);
 }
 
@@ -79,8 +79,8 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, 
testChartTitlePropertiesGradientFillDOCX
     save(u"Office Open XML Text"_ustr);
     xmlDocUniquePtr pXmlDoc = parseExport(u"word/charts/chart1.xml"_ustr);
     CPPUNIT_ASSERT(pXmlDoc);
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr", 
"val", u"cccccc");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:gradFill/a:gsLst/a:gs[2]/a:srgbClr", 
"val", u"666666");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr", 
"val", u"cccccc");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:gradFill/a:gsLst/a:gs[2]/a:srgbClr", 
"val", u"666666");
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:title/c:spPr/a:ln/a:noFill", 
1);
 }
 
@@ -156,13 +156,13 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, 
testBarChartDataPointPropDOCX)
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:varyColors", "val", u"0");
 
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[1]/c:idx", "val", 
u"1");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[1]/c:spPr/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr",
 "val", u"f6f8fc");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[1]/c:spPr/a:gradFill/a:gsLst/a:gs[2]/a:srgbClr",
 "val", u"c7d5ed");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[1]/c:spPr/a:ln/a:solidFill/a:srgbClr",
 "val", u"70ad47");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[1]/c:spPr/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr",
 "val", u"f6f8fc");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[1]/c:spPr/a:gradFill/a:gsLst/a:gs[2]/a:srgbClr",
 "val", u"c7d5ed");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[1]/c:spPr/a:ln/a:solidFill/a:srgbClr",
 "val", u"70ad47");
 
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[2]/c:idx", "val", 
u"2");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[2]/c:spPr/a:solidFill/a:srgbClr",
 "val", u"ff0000");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[2]/c:spPr/a:ln/a:solidFill/a:srgbClr",
 "val", u"000000");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[2]/c:spPr/a:solidFill/a:srgbClr",
 "val", u"ff0000");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[2]/c:spPr/a:ln/a:solidFill/a:srgbClr",
 "val", u"000000");
 }
 
 CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testFdo83058dlblPos)
@@ -205,7 +205,7 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testMarkerColorXLSX)
     save(u"Calc Office Open XML"_ustr);
     xmlDocUniquePtr pXmlDoc = parseExport(u"xl/charts/chart1.xml"_ustr);
     CPPUNIT_ASSERT(pXmlDoc);
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser/c:marker/c:spPr/a:solidFill/a:srgbClr",
 "val", u"92d050");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:scatterChart/c:ser/c:marker/c:spPr/a:solidFill/a:srgbClr",
 "val", u"92d050");
 }
 
 CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testRoundedCornersXLSX)
@@ -290,7 +290,7 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, 
testDataLabelFillColor)
     save(u"Calc Office Open XML"_ustr);
     xmlDocUniquePtr pXmlDoc = parseExport(u"xl/charts/chart1.xml"_ustr);
     CPPUNIT_ASSERT(pXmlDoc);
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dLbls/c:spPr/a:solidFill/a:srgbClr",
 "val", u"f79646");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dLbls/c:spPr/a:solidFill/a:srgbClr",
 "val", u"f79646");
 }
 
 CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testTitleOverlayXLSX)
@@ -441,12 +441,12 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testChartSubTitle)
     // run props
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p/a:r/a:rPr", "sz", u"1100");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p/a:r/a:rPr", "b", u"1");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p/a:r/a:rPr/a:solidFill/a:srgbClr",
 "val", u"00a933");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p/a:r/a:rPr/a:solidFill/a:srgbClr",
 "val", u"00a933");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p/a:r/a:rPr/a:latin", "typeface", 
u"Times New Roman");
     // text
     assertXPathContent(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p/a:r/a:t", u"It is a Subtitle");
     // shape props
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:solidFill/a:srgbClr", "val", u"b2b2b2");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:solidFill/a:srgbClr", "val", u"b2b2b2");
 }
 
 CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testChartMainWithSubTitle)
@@ -463,13 +463,13 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, 
testChartMainWithSubTitle)
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r/a:rPr", "sz", u"1300");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r/a:rPr", "b", u"0");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r/a:rPr", "i", u"1");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r/a:rPr/a:solidFill/a:srgbClr",
 "val", u"f10d0c");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r/a:rPr/a:solidFill/a:srgbClr",
 "val", u"f10d0c");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r/a:rPr/a:latin", 
"typeface", u"Arial");
     // text
     assertXPathContent(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r/a:t", u"It is a 
Maintitle");
     assertXPathContent(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[2]/a:r/a:t", u"It is a 
Subtitle");
     // shape props
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:solidFill/a:srgbClr", "val", u"81d41a");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:solidFill/a:srgbClr", "val", u"81d41a");
 }
 
 CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testAutoTitleDeleted)
@@ -487,7 +487,7 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, 
testChartTitlePropertiesColorFillXLSX)
     save(u"Calc Office Open XML"_ustr);
     xmlDocUniquePtr pXmlDoc = parseExport(u"xl/charts/chart1.xml"_ustr);
     CPPUNIT_ASSERT(pXmlDoc);
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:solidFill/a:srgbClr", "val", u"ff0000");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:solidFill/a:srgbClr", "val", u"ff0000");
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:title/c:spPr/a:ln/a:noFill", 
1);
 }
 
@@ -497,8 +497,8 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, 
testChartTitlePropertiesGradientFillXLSX
     save(u"Calc Office Open XML"_ustr);
     xmlDocUniquePtr pXmlDoc = parseExport(u"xl/charts/chart1.xml"_ustr);
     CPPUNIT_ASSERT(pXmlDoc);
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr", 
"val", u"cccccc");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:gradFill/a:gsLst/a:gs[2]/a:srgbClr", 
"val", u"666666");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr", 
"val", u"cccccc");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:spPr/a:gradFill/a:gsLst/a:gs[2]/a:srgbClr", 
"val", u"666666");
     assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:title/c:spPr/a:ln/a:noFill", 
1);
 }
 
@@ -522,13 +522,13 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, 
testBarChartDataPointPropXLSX)
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:varyColors", "val", u"0");
 
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[1]/c:idx", "val", 
u"1");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[1]/c:spPr/a:solidFill/a:srgbClr",
 "val", u"ff0000");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[1]/c:spPr/a:ln/a:solidFill/a:srgbClr",
 "val", u"000000");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[1]/c:spPr/a:solidFill/a:srgbClr",
 "val", u"ff0000");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[1]/c:spPr/a:ln/a:solidFill/a:srgbClr",
 "val", u"000000");
 
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[2]/c:idx", "val", 
u"2");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[2]/c:spPr/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr",
 "val", u"f6f8fc");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[2]/c:spPr/a:gradFill/a:gsLst/a:gs[2]/a:srgbClr",
 "val", u"c7d5ed");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[2]/c:spPr/a:ln/a:solidFill/a:srgbClr",
 "val", u"70ad47");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[2]/c:spPr/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr",
 "val", u"f6f8fc");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[2]/c:spPr/a:gradFill/a:gsLst/a:gs[2]/a:srgbClr",
 "val", u"c7d5ed");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[2]/c:spPr/a:ln/a:solidFill/a:srgbClr",
 "val", u"70ad47");
 }
 
 CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testAxisCharacterPropertiesXLSX)
@@ -546,7 +546,7 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, 
testAxisCharacterPropertiesXLSX)
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:valAx/c:txPr/a:p/a:pPr/a:defRPr", "sz", 
u"900");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:valAx/c:txPr/a:p/a:pPr/a:defRPr", "b", 
u"1");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:valAx/c:txPr/a:p/a:pPr/a:defRPr", "strike", 
u"sngStrike");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:valAx/c:txPr/a:p/a:pPr/a:defRPr/a:solidFill/a:srgbClr",
 "val", u"ff0000");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:valAx/c:txPr/a:p/a:pPr/a:defRPr/a:solidFill/a:srgbClr",
 "val", u"ff0000");
 }
 
 CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, testTitleCharacterPropertiesXLSX)
@@ -721,13 +721,13 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, 
testFormattedChartTitles)
     // Check run level properties [1] - first paragraph
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[1]/a:rPr", "b", u"1");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[1]/a:rPr", "sz", u"1400");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[1]/a:rPr/a:solidFill/a:srgbClr",
 "val", u"ff0000");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[1]/a:rPr/a:solidFill/a:srgbClr",
 "val", u"ff0000");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[1]/a:rPr/a:latin", 
"typeface", u"Aptos Narrow");
     assertXPathContent(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[1]/a:t", u"This");
     // Check run level properties [2]
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[2]/a:rPr", "b", u"0");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[2]/a:rPr", "sz", u"1400");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[2]/a:rPr/a:solidFill/a:srgbClr",
 "val", u"595959");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[2]/a:rPr/a:solidFill/a:srgbClr",
 "val", u"595959");
     assertXPathContent(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[2]/a:t", u" is");
     // Check run level properties [3]
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[3]/a:rPr", "b", u"0");
@@ -743,7 +743,7 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, 
testFormattedChartTitles)
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[5]/a:rPr", "i", u"1");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[5]/a:rPr", "sz", u"2000");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[5]/a:rPr", "u", u"sng");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[5]/a:rPr/a:solidFill/a:srgbClr",
 "val", u"4ea72e");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[5]/a:rPr/a:solidFill/a:srgbClr",
 "val", u"4ea72e");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[5]/a:rPr/a:uFillTx", 1);
     assertXPathContent(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[1]/a:r[5]/a:t", u"custom");
     // Check run level properties [6]
@@ -753,7 +753,7 @@ CPPUNIT_TEST_FIXTURE(Chart2ExportTest3, 
testFormattedChartTitles)
     // Check run level properties [1] - second paragraph
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[2]/a:r[1]/a:rPr", "b", u"0");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[2]/a:r[1]/a:rPr", "sz", u"1400");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[2]/a:r[1]/a:rPr/a:solidFill/a:srgbClr",
 "val", u"595959");
+    assertXPathInsensitive(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[2]/a:r[1]/a:rPr/a:solidFill/a:srgbClr",
 "val", u"595959");
     assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[2]/a:r[1]/a:rPr/a:latin", 
"typeface", u"Aptos Narrow");
     assertXPathContent(pXmlDoc, 
"/c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p[2]/a:r[1]/a:t", u"2dfgd ch");
     // Check run level properties [2]
diff --git a/include/test/xmltesttools.hxx b/include/test/xmltesttools.hxx
index 8f5df7c77465..6a44b6c235b2 100644
--- a/include/test/xmltesttools.hxx
+++ b/include/test/xmltesttools.hxx
@@ -88,6 +88,17 @@ protected:
     {
         assertXPath(pXmlDoc, sXPath.getStr(), pAttribute, rExpectedValue);
     }
+    /**
+     * Assert that pXPath exists, returns exactly one node, and the pXPath's 
attribute's value
+     * is ASCII case-insensively equals to the rExpected value.
+     */
+    void          assertXPathInsensitive(const xmlDocUniquePtr& pXmlDoc, const 
char* pXPath, const char* pAttribute,
+                                         std::u16string_view rExpectedValue);
+    void assertXPathInsensitive(const xmlDocUniquePtr& pXmlDoc, const OString& 
sXPath, const char* pAttribute,
+                                std::u16string_view rExpectedValue)
+    {
+        assertXPathInsensitive(pXmlDoc, sXPath.getStr(), pAttribute, 
rExpectedValue);
+    }
     void          assertXPathAttrs(const xmlDocUniquePtr& pXmlDoc, const char* 
pXPath,
                           const std::vector<std::pair<const char*, 
std::u16string_view>>& aPairVector);
     void assertXPathAttrs(const xmlDocUniquePtr& pXmlDoc, const OString& 
sXPath,
diff --git a/oox/qa/unit/mcgr.cxx b/oox/qa/unit/mcgr.cxx
index 5cef50f06a8d..88bc2bce99a4 100644
--- a/oox/qa/unit/mcgr.cxx
+++ b/oox/qa/unit/mcgr.cxx
@@ -37,11 +37,11 @@ CPPUNIT_TEST_FIXTURE(TestMCGR, testFontworkColorGradient)
     static constexpr OString sPath = "//a:r/a:rPr/a:gradFill/a:gsLst/"_ostr;
     assertXPath(pXmlDoc, sPath + "a:gs", 3);
     assertXPath(pXmlDoc, sPath + "a:gs[1]", "pos", u"0");
-    assertXPath(pXmlDoc, sPath + "a:gs[1]/a:srgbClr", "val", u"ff1493");
+    assertXPathInsensitive(pXmlDoc, sPath + "a:gs[1]/a:srgbClr", "val", 
u"ff1493");
     assertXPath(pXmlDoc, sPath + "a:gs[2]", "pos", u"30000");
-    assertXPath(pXmlDoc, sPath + "a:gs[2]/a:srgbClr", "val", u"ffff00");
+    assertXPathInsensitive(pXmlDoc, sPath + "a:gs[2]/a:srgbClr", "val", 
u"ffff00");
     assertXPath(pXmlDoc, sPath + "a:gs[3]", "pos", u"100000");
-    assertXPath(pXmlDoc, sPath + "a:gs[3]/a:srgbClr", "val", u"00ffff");
+    assertXPathInsensitive(pXmlDoc, sPath + "a:gs[3]/a:srgbClr", "val", 
u"00ffff");
 }
 
 CPPUNIT_TEST_FIXTURE(TestMCGR, testFontworkColorGradientWord)
@@ -60,11 +60,11 @@ CPPUNIT_TEST_FIXTURE(TestMCGR, 
testFontworkColorGradientWord)
     static constexpr OString sPath = "//w14:gradFill/w14:gsLst/"_ostr;
     assertXPath(pXmlDoc, sPath + "w14:gs", 3);
     assertXPath(pXmlDoc, sPath + "w14:gs[1]", "pos", u"0");
-    assertXPath(pXmlDoc, sPath + "w14:gs[1]/w14:srgbClr", "val", u"ff1493");
+    assertXPathInsensitive(pXmlDoc, sPath + "w14:gs[1]/w14:srgbClr", "val", 
u"ff1493");
     assertXPath(pXmlDoc, sPath + "w14:gs[2]", "pos", u"30000");
-    assertXPath(pXmlDoc, sPath + "w14:gs[2]/w14:srgbClr", "val", u"ffff00");
+    assertXPathInsensitive(pXmlDoc, sPath + "w14:gs[2]/w14:srgbClr", "val", 
u"ffff00");
     assertXPath(pXmlDoc, sPath + "w14:gs[3]", "pos", u"100000");
-    assertXPath(pXmlDoc, sPath + "w14:gs[3]/w14:srgbClr", "val", u"00ffff");
+    assertXPathInsensitive(pXmlDoc, sPath + "w14:gs[3]/w14:srgbClr", "val", 
u"00ffff");
 }
 
 CPPUNIT_TEST_FIXTURE(TestMCGR, testTdf155825_SourcOffsetRangeDifferent)
@@ -97,9 +97,9 @@ CPPUNIT_TEST_FIXTURE(TestMCGR, testStepCount)
     assertXPath(pXmlDoc, sPath + "a:gs[@pos='50000']", 2);
     assertXPath(pXmlDoc, sPath + "a:gs[@pos='75000']", 2);
     // Without fix the color was 808080.
-    assertXPath(pXmlDoc, sPath + "a:gs[@pos='75000'][1]/a:srgbClr", "val", 
u"55aaaa");
+    assertXPathInsensitive(pXmlDoc, sPath + "a:gs[@pos='75000'][1]/a:srgbClr", 
"val", u"55aaaa");
     // Without fix the color was 40bfbf, producing a gradient in the last 
segment.
-    assertXPath(pXmlDoc, sPath + "a:gs[@pos='75000'][2]/a:srgbClr", "val", 
u"00ffff");
+    assertXPathInsensitive(pXmlDoc, sPath + "a:gs[@pos='75000'][2]/a:srgbClr", 
"val", u"00ffff");
 }
 
 CPPUNIT_TEST_FIXTURE(TestMCGR, testAxialColorLinearTrans)
@@ -118,13 +118,13 @@ CPPUNIT_TEST_FIXTURE(TestMCGR, testAxialColorLinearTrans)
     static constexpr OString sPath = "//a:gradFill/a:gsLst/"_ostr;
     assertXPath(pXmlDoc, sPath + "a:gs", 3);
     assertXPath(pXmlDoc, sPath + "a:gs[1]", "pos", u"0");
-    assertXPath(pXmlDoc, sPath + "a:gs[1]/a:srgbClr", "val", u"00ffff");
+    assertXPathInsensitive(pXmlDoc, sPath + "a:gs[1]/a:srgbClr", "val", 
u"00ffff");
     assertXPath(pXmlDoc, sPath + "a:gs[1]/a:srgbClr/a:alpha", "val", u"20000");
     assertXPath(pXmlDoc, sPath + "a:gs[2]", "pos", u"50000");
-    assertXPath(pXmlDoc, sPath + "a:gs[2]/a:srgbClr", "val", u"ff0000");
-    assertXPath(pXmlDoc, sPath + "a:gs[2]/a:srgbClr/a:alpha", "val", u"60396");
+    assertXPathInsensitive(pXmlDoc, sPath + "a:gs[2]/a:srgbClr", "val", 
u"ff0000");
+    assertXPathInsensitive(pXmlDoc, sPath + "a:gs[2]/a:srgbClr/a:alpha", 
"val", u"60396");
     assertXPath(pXmlDoc, sPath + "a:gs[3]", "pos", u"100000");
-    assertXPath(pXmlDoc, sPath + "a:gs[3]/a:srgbClr", "val", u"00ffff");
+    assertXPathInsensitive(pXmlDoc, sPath + "a:gs[3]/a:srgbClr", "val", 
u"00ffff");
     // no <a:alpha> element for default val="100000"
     assertXPath(pXmlDoc, sPath + "a:gs[3]/a:srgbClr/a:alpha", 0);
 }
diff --git a/sc/qa/unit/ThemeImportExportTest.cxx 
b/sc/qa/unit/ThemeImportExportTest.cxx
index 5f09ab65247a..82291c6a0bb9 100644
--- a/sc/qa/unit/ThemeImportExportTest.cxx
+++ b/sc/qa/unit/ThemeImportExportTest.cxx
@@ -120,18 +120,18 @@ CPPUNIT_TEST_FIXTURE(ThemeImportExportTest, 
testThemeExportOOXML)
         xmlDocUniquePtr pXmlDoc = parseExport(u"xl/theme/theme1.xml"_ustr);
         OString aClrScheme = "/a:theme/a:themeElements/a:clrScheme"_ostr;
         assertXPath(pXmlDoc, aClrScheme, "name", u"Office");
-        assertXPath(pXmlDoc, aClrScheme + "/a:dk1/a:srgbClr", "val", 
u"000000");
-        assertXPath(pXmlDoc, aClrScheme + "/a:lt1/a:srgbClr", "val", 
u"FFFFFF");
-        assertXPath(pXmlDoc, aClrScheme + "/a:dk2/a:srgbClr", "val", 
u"44546A");
-        assertXPath(pXmlDoc, aClrScheme + "/a:lt2/a:srgbClr", "val", 
u"E7E6E6");
-        assertXPath(pXmlDoc, aClrScheme + "/a:accent1/a:srgbClr", "val", 
u"4472C4");
-        assertXPath(pXmlDoc, aClrScheme + "/a:accent2/a:srgbClr", "val", 
u"ED7D31");
-        assertXPath(pXmlDoc, aClrScheme + "/a:accent3/a:srgbClr", "val", 
u"A5A5A5");
-        assertXPath(pXmlDoc, aClrScheme + "/a:accent4/a:srgbClr", "val", 
u"FFC000");
-        assertXPath(pXmlDoc, aClrScheme + "/a:accent5/a:srgbClr", "val", 
u"5B9BD5");
-        assertXPath(pXmlDoc, aClrScheme + "/a:accent6/a:srgbClr", "val", 
u"70AD47");
-        assertXPath(pXmlDoc, aClrScheme + "/a:hlink/a:srgbClr", "val", 
u"0563C1");
-        assertXPath(pXmlDoc, aClrScheme + "/a:folHlink/a:srgbClr", "val", 
u"954F72");
+        assertXPathInsensitive(pXmlDoc, aClrScheme + "/a:dk1/a:srgbClr", 
"val", u"000000");
+        assertXPathInsensitive(pXmlDoc, aClrScheme + "/a:lt1/a:srgbClr", 
"val", u"FFFFFF");
+        assertXPathInsensitive(pXmlDoc, aClrScheme + "/a:dk2/a:srgbClr", 
"val", u"44546A");
+        assertXPathInsensitive(pXmlDoc, aClrScheme + "/a:lt2/a:srgbClr", 
"val", u"E7E6E6");
+        assertXPathInsensitive(pXmlDoc, aClrScheme + "/a:accent1/a:srgbClr", 
"val", u"4472C4");
+        assertXPathInsensitive(pXmlDoc, aClrScheme + "/a:accent2/a:srgbClr", 
"val", u"ED7D31");
+        assertXPathInsensitive(pXmlDoc, aClrScheme + "/a:accent3/a:srgbClr", 
"val", u"A5A5A5");
+        assertXPathInsensitive(pXmlDoc, aClrScheme + "/a:accent4/a:srgbClr", 
"val", u"FFC000");
+        assertXPathInsensitive(pXmlDoc, aClrScheme + "/a:accent5/a:srgbClr", 
"val", u"5B9BD5");
+        assertXPathInsensitive(pXmlDoc, aClrScheme + "/a:accent6/a:srgbClr", 
"val", u"70AD47");
+        assertXPathInsensitive(pXmlDoc, aClrScheme + "/a:hlink/a:srgbClr", 
"val", u"0563C1");
+        assertXPathInsensitive(pXmlDoc, aClrScheme + "/a:folHlink/a:srgbClr", 
"val", u"954F72");
     }
 
     {
@@ -143,7 +143,7 @@ CPPUNIT_TEST_FIXTURE(ThemeImportExportTest, 
testThemeExportOOXML)
         OString aFont = "/x:styleSheet/x:fonts/x:font"_ostr;
         assertXPath(pXmlDoc, aFont, 6);
         assertXPath(pXmlDoc, aFont + "[5]/x:color", "theme", u"7");
-        assertXPath(pXmlDoc, aFont + "[6]/x:color", "rgb", u"FF9C5700");
+        assertXPathInsensitive(pXmlDoc, aFont + "[6]/x:color", "rgb", 
u"FF9C5700");
 
         // Fills
         OString aFill = "/x:styleSheet/x:fills/x:fill"_ostr;
@@ -151,7 +151,7 @@ CPPUNIT_TEST_FIXTURE(ThemeImportExportTest, 
testThemeExportOOXML)
         assertXPath(pXmlDoc, aFill + "[1]/x:patternFill", "patternType", 
u"none");
         assertXPath(pXmlDoc, aFill + "[2]/x:patternFill", "patternType", 
u"gray125");
         assertXPath(pXmlDoc, aFill + "[3]/x:patternFill", "patternType", 
u"solid");
-        assertXPath(pXmlDoc, aFill + "[3]/x:patternFill/x:fgColor", "rgb", 
u"FFFFEB9C");
+        assertXPathInsensitive(pXmlDoc, aFill + "[3]/x:patternFill/x:fgColor", 
"rgb", u"FFFFEB9C");
         assertXPath(pXmlDoc, aFill + "[4]/x:patternFill", "patternType", 
u"solid");
         assertXPath(pXmlDoc, aFill + "[4]/x:patternFill/x:fgColor", "theme", 
u"4");
     }
diff --git a/sc/qa/unit/subsequent_export_test3.cxx 
b/sc/qa/unit/subsequent_export_test3.cxx
index 50ea02c22c0e..923e0c72465e 100644
--- a/sc/qa/unit/subsequent_export_test3.cxx
+++ b/sc/qa/unit/subsequent_export_test3.cxx
@@ -1381,10 +1381,11 @@ CPPUNIT_TEST_FIXTURE(ScExportTest3, 
testTextUnderlineColorXLSX)
     assertXPath(pDoc, 
"/xdr:wsDr/xdr:twoCellAnchor[1]/xdr:sp[1]/xdr:txBody/a:p[1]/a:r[1]/a:rPr",
                 "b", u"1");
     // Make sure that the underline color is RED
-    assertXPath(pDoc,
-                
"/xdr:wsDr/xdr:twoCellAnchor[1]/xdr:sp[1]/xdr:txBody/a:p[1]/a:r[1]/a:rPr/a:uFill/"
-                "a:solidFill/a:srgbClr",
-                "val", u"ff0000");
+    assertXPathInsensitive(
+        pDoc,
+        
"/xdr:wsDr/xdr:twoCellAnchor[1]/xdr:sp[1]/xdr:txBody/a:p[1]/a:r[1]/a:rPr/a:uFill/"
+        "a:solidFill/a:srgbClr",
+        "val", u"ff0000");
 
     // Make sure the underline type is drawn with heavy line
     assertXPath(pDoc, 
"/xdr:wsDr/xdr:twoCellAnchor[2]/xdr:sp[1]/xdr:txBody/a:p[1]/a:r[1]/a:rPr",
diff --git a/sd/qa/unit/export-tests-ooxml1.cxx 
b/sd/qa/unit/export-tests-ooxml1.cxx
index 59d46c235375..8f7a5ba8f707 100644
--- a/sd/qa/unit/export-tests-ooxml1.cxx
+++ b/sd/qa/unit/export-tests-ooxml1.cxx
@@ -1427,7 +1427,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, 
testTdf100348FontworkBitmapFill)
     xmlDocUniquePtr pXmlDoc = parseExport(u"ppt/slides/slide1.xml"_ustr);
     static constexpr OString 
sPathStart("//p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:r/a:rPr"_ostr);
     assertXPath(pXmlDoc, sPathStart + "/a:blipFill/a:blip", 1);
-    assertXPath(pXmlDoc, sPathStart + "/a:ln/a:solidFill/a:srgbClr", "val", 
u"ffbf00");
+    assertXPathInsensitive(pXmlDoc, sPathStart + 
"/a:ln/a:solidFill/a:srgbClr", "val", u"ffbf00");
 }
 
 CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf100348FontworkGradientGlow)
@@ -1439,9 +1439,10 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, 
testTdf100348FontworkGradientGlow)
     // Without the patch, fill was black and no glow applied.
     xmlDocUniquePtr pXmlDoc = parseExport(u"ppt/slides/slide1.xml"_ustr);
     static constexpr OString 
sPathStart("//p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:r/a:rPr"_ostr);
-    assertXPath(pXmlDoc, sPathStart + "/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr", 
"val", u"8d281e");
+    assertXPathInsensitive(pXmlDoc, sPathStart + 
"/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr", "val",
+                           u"8d281e");
     assertXPath(pXmlDoc, sPathStart + "/a:effectLst/a:glow", "rad", u"63360");
-    assertXPath(pXmlDoc, sPathStart + "/a:effectLst/a:glow/a:srgbClr", "val", 
u"ff4500");
+    assertXPathInsensitive(pXmlDoc, sPathStart + 
"/a:effectLst/a:glow/a:srgbClr", "val", u"ff4500");
 }
 
 CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf128345FullTransparentGradient)
@@ -1465,11 +1466,13 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, 
testTdf128345GradientLinear)
     assertXPath(pXmlDoc, sPathStart + "/a:lin", "ang", u"3600000");
     assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs", 2);
     assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[1]", "pos", u"25000");
-    assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[1]/a:srgbClr", "val", 
u"ff0000");
-    assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[1]/a:srgbClr/a:alpha", 
"val", u"20000");
+    assertXPathInsensitive(pXmlDoc, sPathStart + "/a:gsLst/a:gs[1]/a:srgbClr", 
"val", u"ff0000");
+    assertXPathInsensitive(pXmlDoc, sPathStart + 
"/a:gsLst/a:gs[1]/a:srgbClr/a:alpha", "val",
+                           u"20000");
     assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]", "pos", u"100000");
-    assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]/a:srgbClr", "val", 
u"ff0000");
-    assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]/a:srgbClr/a:alpha", 
"val", u"80000");
+    assertXPathInsensitive(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]/a:srgbClr", 
"val", u"ff0000");
+    assertXPathInsensitive(pXmlDoc, sPathStart + 
"/a:gsLst/a:gs[2]/a:srgbClr/a:alpha", "val",
+                           u"80000");
 }
 
 CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf128345GradientRadial)
@@ -1482,9 +1485,9 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, 
testTdf128345GradientRadial)
     xmlDocUniquePtr pXmlDoc = parseExport(u"ppt/slides/slide1.xml"_ustr);
     static constexpr OString 
sPathStart("//p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:gradFill"_ostr);
     assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs", 2);
-    assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[1]/a:srgbClr", "val", 
u"ff0000");
+    assertXPathInsensitive(pXmlDoc, sPathStart + "/a:gsLst/a:gs[1]/a:srgbClr", 
"val", u"ff0000");
     assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[1]/a:srgbClr/a:alpha", 0);
-    assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]/a:srgbClr", "val", 
u"ffffff");
+    assertXPathInsensitive(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]/a:srgbClr", 
"val", u"ffffff");
     assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]/a:srgbClr/a:alpha", 
"val", u"0");
 }
 
@@ -1522,8 +1525,10 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, 
testTdf134969TransparencyOnColorGradien
     xmlDocUniquePtr pXmlDoc = parseExport(u"ppt/slides/slide1.xml"_ustr);
     static constexpr OString 
sPathStart("//p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:gradFill"_ostr);
     assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs", 2);
-    assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[1]/a:srgbClr/a:alpha", 
"val", u"60000");
-    assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]/a:srgbClr/a:alpha", 
"val", u"60000");
+    assertXPathInsensitive(pXmlDoc, sPathStart + 
"/a:gsLst/a:gs[1]/a:srgbClr/a:alpha", "val",
+                           u"60000");
+    assertXPathInsensitive(pXmlDoc, sPathStart + 
"/a:gsLst/a:gs[2]/a:srgbClr/a:alpha", "val",
+                           u"60000");
 }
 
 CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testArcTo)
@@ -1625,8 +1630,10 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, 
testTdf140865Wordart3D)
     assertXPath(pXmlDoc, sPathStart + "/a:sp3d/a:bevelT", "h", u"38100");
     assertXPath(pXmlDoc, sPathStart + "/a:sp3d/a:bevelT", "prst", 
u"softRound");
     assertXPath(pXmlDoc, sPathStart + "/a:sp3d/a:bevelB", "h", u"152400");
-    assertXPath(pXmlDoc, sPathStart + "/a:sp3d/a:extrusionClr/a:srgbClr", 
"val", u"990000");
-    assertXPath(pXmlDoc, sPathStart + "/a:sp3d/a:contourClr/a:srgbClr", "val", 
u"009876");
+    assertXPathInsensitive(pXmlDoc, sPathStart + 
"/a:sp3d/a:extrusionClr/a:srgbClr", "val",
+                           u"990000");
+    assertXPathInsensitive(pXmlDoc, sPathStart + 
"/a:sp3d/a:contourClr/a:srgbClr", "val",
+                           u"009876");
 }
 
 CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf124457)
diff --git a/sd/qa/unit/export-tests-ooxml2.cxx 
b/sd/qa/unit/export-tests-ooxml2.cxx
index dd3b720d9b44..b09b194cd8bb 100644
--- a/sd/qa/unit/export-tests-ooxml2.cxx
+++ b/sd/qa/unit/export-tests-ooxml2.cxx
@@ -1715,10 +1715,11 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, 
testThemeColors)
     save(u"Impress Office Open XML"_ustr);
 
     xmlDocUniquePtr pXmlDocTheme2 = parseExport(u"ppt/theme/theme1.xml"_ustr);
-    assertXPath(pXmlDocTheme2, 
"/a:theme/a:themeElements/a:clrScheme/a:dk2/a:srgbClr", "val",
-                u"44546A");
-    assertXPath(pXmlDocTheme2, 
"/a:theme/a:themeElements/a:clrScheme/a:accent3/a:srgbClr", "val",
-                u"A5A5A5");
+    assertXPathInsensitive(pXmlDocTheme2, 
"/a:theme/a:themeElements/a:clrScheme/a:dk2/a:srgbClr",
+                           "val", u"44546A");
+    assertXPathInsensitive(pXmlDocTheme2,
+                           
"/a:theme/a:themeElements/a:clrScheme/a:accent3/a:srgbClr", "val",
+                           u"A5A5A5");
 }
 
 CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf111785)
@@ -1731,8 +1732,9 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf111785)
     // Without the fix in place, this test would have failed with
     // - Expected: ed1c24
     // - Actual  : ffffff
-    assertXPath(pXmlDocRels, 
"/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:pattFill/a:bgClr/a:srgbClr",
-                "val", u"ed1c24");
+    assertXPathInsensitive(pXmlDocRels,
+                           
"/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:pattFill/a:bgClr/a:srgbClr",
+                           "val", u"ed1c24");
 }
 
 CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf118825)
diff --git a/sd/qa/unit/export-tests-ooxml3.cxx 
b/sd/qa/unit/export-tests-ooxml3.cxx
index 08f31b26945d..a3c2572fbfb7 100644
--- a/sd/qa/unit/export-tests-ooxml3.cxx
+++ b/sd/qa/unit/export-tests-ooxml3.cxx
@@ -133,8 +133,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf114848)
     save(u"Impress Office Open XML"_ustr);
 
     xmlDocUniquePtr pXmlDocTheme1 = parseExport(u"ppt/theme/theme1.xml"_ustr);
-    assertXPath(pXmlDocTheme1, 
"/a:theme/a:themeElements/a:clrScheme/a:dk2/a:srgbClr", "val",
-                u"1F497D");
+    assertXPathInsensitive(pXmlDocTheme1, 
"/a:theme/a:themeElements/a:clrScheme/a:dk2/a:srgbClr",
+                           "val", u"1F497D");
 }
 
 CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf147586)
@@ -146,12 +146,12 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf147586)
     // Without the fix in place, this test would have failed with
     // - Expected: 227fc7
     // - Actual  : 4f4f4f
-    assertXPath(pXmlDocContent,
-                
"/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:p[1]/a:pPr/a:buClr/a:srgbClr", "val",
-                u"227fc7");
-    assertXPath(pXmlDocContent,
-                
"/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:p[2]/a:pPr/a:buClr/a:srgbClr", "val",
-                u"227fc7");
+    assertXPathInsensitive(pXmlDocContent,
+                           
"/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:p[1]/a:pPr/a:buClr/a:srgbClr",
+                           "val", u"227fc7");
+    assertXPathInsensitive(pXmlDocContent,
+                           
"/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:p[2]/a:pPr/a:buClr/a:srgbClr",
+                           "val", u"227fc7");
 }
 
 CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf68759)
@@ -755,15 +755,15 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf118835)
     xmlDocUniquePtr pXmlDocContent = 
parseExport(u"ppt/slides/slide1.xml"_ustr);
     assertXPath(pXmlDocContent, "(//p:animClr)[1]", "clrSpc", u"rgb");
     assertXPathContent(pXmlDocContent, "(//p:animClr)[1]//p:attrName", 
u"style.color");
-    assertXPath(pXmlDocContent, "(//p:animClr)[1]//p:to/a:srgbClr", "val", 
u"ED1C24");
+    assertXPathInsensitive(pXmlDocContent, "(//p:animClr)[1]//p:to/a:srgbClr", 
"val", u"ED1C24");
 
     assertXPath(pXmlDocContent, "(//p:animClr)[2]", "clrSpc", u"rgb");
     assertXPathContent(pXmlDocContent, "(//p:animClr)[2]//p:attrName", 
u"stroke.color");
-    assertXPath(pXmlDocContent, "(//p:animClr)[2]//p:to/a:srgbClr", "val", 
u"333399");
+    assertXPathInsensitive(pXmlDocContent, "(//p:animClr)[2]//p:to/a:srgbClr", 
"val", u"333399");
 
     assertXPath(pXmlDocContent, "(//p:animClr)[3]", "clrSpc", u"rgb");
     assertXPathContent(pXmlDocContent, "(//p:animClr)[3]//p:attrName", 
u"fillcolor");
-    assertXPath(pXmlDocContent, "(//p:animClr)[3]//p:to/a:srgbClr", "val", 
u"FCD3C1");
+    assertXPathInsensitive(pXmlDocContent, "(//p:animClr)[3]//p:to/a:srgbClr", 
"val", u"FCD3C1");
 
     assertXPath(pXmlDocContent, "(//p:animClr)[5]", "clrSpc", u"hsl");
     assertXPathContent(pXmlDocContent, "(//p:animClr)[5]//p:attrName", 
u"fillcolor");
@@ -895,15 +895,17 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf128096)
     save(u"Impress Office Open XML"_ustr);
 
     xmlDocUniquePtr pXmlDocContent1 = 
parseExport(u"ppt/slides/slide1.xml"_ustr);
-    assertXPath(pXmlDocContent1,
-                
"//p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:r/a:rPr/a:highlight/a:srgbClr", 
"val",
-                u"ffff00");
+    assertXPathInsensitive(
+        pXmlDocContent1,
+        
"//p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:r/a:rPr/a:highlight/a:srgbClr", 
"val",
+        u"ffff00");
 
     // Check that underlined content is also highlighted
     xmlDocUniquePtr pXmlDocContent2 = 
parseExport(u"ppt/slides/slide2.xml"_ustr);
-    assertXPath(pXmlDocContent2,
-                
"//p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:r/a:rPr/a:highlight/a:srgbClr", 
"val",
-                u"ffff00");
+    assertXPathInsensitive(
+        pXmlDocContent2,
+        
"//p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:r/a:rPr/a:highlight/a:srgbClr", 
"val",
+        u"ffff00");
 }
 CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf120573)
 {
diff --git a/sd/qa/unit/export-tests-ooxml4.cxx 
b/sd/qa/unit/export-tests-ooxml4.cxx
index 7528b3398c80..ce587ebf507f 100644
--- a/sd/qa/unit/export-tests-ooxml4.cxx
+++ b/sd/qa/unit/export-tests-ooxml4.cxx
@@ -998,17 +998,19 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, 
testTdf94122_autoColor)
                 u"000000");
 
     xmlDocUniquePtr pXmlDocContent2 = 
parseExport(u"ppt/slides/slide2.xml"_ustr);
-    assertXPath(pXmlDocContent2,
-                
"/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:r/a:rPr/a:solidFill/a:srgbClr", 
"val",
-                u"ffffff");
+    assertXPathInsensitive(
+        pXmlDocContent2, 
"/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:r/a:rPr/a:solidFill/a:srgbClr",
+        "val", u"ffffff");
 
     xmlDocUniquePtr pXmlDocContent3 = 
parseExport(u"ppt/slides/slide3.xml"_ustr);
-    assertXPath(pXmlDocContent3,
-                
"/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:p/a:r/a:rPr/a:solidFill/a:srgbClr",
-                "val", u"ffffff");
-    assertXPath(pXmlDocContent3,
-                
"/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:r/a:rPr/a:solidFill/a:srgbClr",
-                "val", u"000000");
+    assertXPathInsensitive(
+        pXmlDocContent3,
+        
"/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:p/a:r/a:rPr/a:solidFill/a:srgbClr", 
"val",
+        u"ffffff");
+    assertXPathInsensitive(
+        pXmlDocContent3,
+        
"/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:r/a:rPr/a:solidFill/a:srgbClr", 
"val",
+        u"000000");
 }
 
 CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf124333)
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport6.cxx 
b/sw/qa/extras/ooxmlexport/ooxmlexport6.cxx
index 34478da70c54..dade93420975 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport6.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport6.cxx
@@ -832,7 +832,7 @@ CPPUNIT_TEST_FIXTURE(Test, testShapeThemePreservation)
             
"/w:document/w:body/w:p[3]/w:r/mc:AlternateContent/mc:Choice/w:drawing/wp:anchor/a:graphic/a:graphicData/wps:wsp/wps:spPr/a:solidFill/a:schemeClr",
             "val", u"accent6");
     // check whether theme color has been converted into native color
-    assertXPath(pXmlDocument,
+    assertXPathInsensitive(pXmlDocument,
             
"/w:document/w:body/w:p[3]/w:r/mc:AlternateContent/mc:Choice/w:drawing/wp:anchor/a:graphic/a:graphicData/wps:wsp/wps:spPr/a:ln/a:solidFill/a:srgbClr",
             "val", u"9bbb59");
 
@@ -940,13 +940,13 @@ CPPUNIT_TEST_FIXTURE(Test, testGradientFillPreservation)
     xmlDocUniquePtr pXmlDocument = parseExport(u"word/document.xml"_ustr);
 
     // check rgb colors for every step in the gradient of the first shape
-    assertXPath(pXmlDocument,
+    assertXPathInsensitive(pXmlDocument,
             
"/w:document/w:body/w:p/w:r/mc:AlternateContent[1]/mc:Choice/w:drawing/wp:anchor/a:graphic/a:graphicData/wps:wsp/wps:spPr/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr",
             "val", u"ffff00");
-    assertXPath(pXmlDocument,
+    assertXPathInsensitive(pXmlDocument,
             
"/w:document/w:body/w:p/w:r/mc:AlternateContent[1]/mc:Choice/w:drawing/wp:anchor/a:graphic/a:graphicData/wps:wsp/wps:spPr/a:gradFill/a:gsLst/a:gs[2]/a:srgbClr",
             "val", u"ffff33");
-    assertXPath(pXmlDocument,
+    assertXPathInsensitive(pXmlDocument,
             
"/w:document/w:body/w:p/w:r/mc:AlternateContent[1]/mc:Choice/w:drawing/wp:anchor/a:graphic/a:graphicData/wps:wsp/wps:spPr/a:gradFill/a:gsLst/a:gs[3]/a:srgbClr",
             "val", u"ff0000");
 
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport7.cxx 
b/sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
index f17a6fa1b827..85ebb3da58ff 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
@@ -142,7 +142,7 @@ CPPUNIT_TEST_FIXTURE(Test, testFdo76979)
     // The problem was that black was exported as "auto" fill color, resulting 
in well-formed, but invalid XML.
     xmlDocUniquePtr pXmlDoc = parseExport(u"word/header2.xml"_ustr);
     // This was "auto", not "FFFFFF".
-    assertXPath(pXmlDoc, "//wps:spPr/a:solidFill/a:srgbClr", "val", u"FFFFFF");
+    assertXPathInsensitive(pXmlDoc, "//wps:spPr/a:solidFill/a:srgbClr", "val", 
u"FFFFFF");
 }
 
 CPPUNIT_TEST_FIXTURE(Test, testTdf104539)
@@ -223,7 +223,7 @@ CPPUNIT_TEST_FIXTURE(Test, testShapeEffectPreservation)
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[3]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
             
"wp:anchor/a:graphic/a:graphicData/wps:wsp/wps:spPr/a:effectLst/a:innerShdw",
             "dist", u"50800");
-    assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[3]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
+    assertXPathInsensitive(pXmlDoc, 
"/w:document/w:body/w:p[3]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
             
"wp:anchor/a:graphic/a:graphicData/wps:wsp/wps:spPr/a:effectLst/a:innerShdw/a:srgbClr",
             "val", u"ffff00");
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[3]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
@@ -241,7 +241,7 @@ CPPUNIT_TEST_FIXTURE(Test, testShapeEffectPreservation)
             0 ); // should not be present
 
     // 5th shape with glow effect, scheme color
-    assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[6]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
+    assertXPathInsensitive(pXmlDoc, 
"/w:document/w:body/w:p[6]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
             
"wp:anchor/a:graphic/a:graphicData/wps:wsp/wps:spPr/a:effectLst/a:glow/a:srgbClr",
             "val", u"eb2722");
 
@@ -267,10 +267,10 @@ CPPUNIT_TEST_FIXTURE(Test, testShapeEffectPreservation)
                             
"/w:document/w:body/w:p[8]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
                             
"wp:anchor/a:graphic/a:graphicData/wps:wsp/wps:spPr/a:effectLst/a:glow",
                             "rad", 63500); // actually, it returns 63360
-    assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[8]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
+    assertXPathInsensitive(pXmlDoc, 
"/w:document/w:body/w:p[8]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
             
"wp:anchor/a:graphic/a:graphicData/wps:wsp/wps:spPr/a:effectLst/a:glow/a:srgbClr",
             "val", u"eb2722");
-    assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[8]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
+    assertXPathInsensitive(pXmlDoc, 
"/w:document/w:body/w:p[8]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
             
"wp:anchor/a:graphic/a:graphicData/wps:wsp/wps:spPr/a:effectLst/a:innerShdw",
             "blurRad", u"63500");
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[8]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
@@ -391,7 +391,7 @@ CPPUNIT_TEST_FIXTURE(Test, testShape3DEffectPreservation)
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[3]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
             
"wp:anchor/a:graphic/a:graphicData/wps:wsp/wps:spPr/a:sp3d/a:bevelB",
             "prst", u"relaxedInset");
-    assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[3]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
+    assertXPathInsensitive(pXmlDoc, 
"/w:document/w:body/w:p[3]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
             
"wp:anchor/a:graphic/a:graphicData/wps:wsp/wps:spPr/a:sp3d/a:contourClr/a:srgbClr",
             "val", u"3333ff");
 
@@ -410,7 +410,7 @@ CPPUNIT_TEST_FIXTURE(Test, testPictureEffectPreservation)
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[1]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
             
"wp:anchor/a:graphic/a:graphicData/pic:pic/pic:spPr/a:effectLst/a:glow",
             "rad", u"228600");
-    assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[1]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
+    assertXPathInsensitive(pXmlDoc, 
"/w:document/w:body/w:p[1]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
             
"wp:anchor/a:graphic/a:graphicData/pic:pic/pic:spPr/a:effectLst/a:glow/a:srgbClr",
             "val", u"267de6");
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[1]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
@@ -427,7 +427,7 @@ CPPUNIT_TEST_FIXTURE(Test, testPictureEffectPreservation)
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[1]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
             "wp:anchor/a:graphic/a:graphicData/pic:pic/pic:spPr/a:sp3d",
             "extrusionH", u"76200");
-    assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[1]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
+    assertXPathInsensitive(pXmlDoc, 
"/w:document/w:body/w:p[1]/w:r/mc:AlternateContent/mc:Choice/w:drawing/"
             
"wp:anchor/a:graphic/a:graphicData/pic:pic/pic:spPr/a:sp3d/a:extrusionClr/a:srgbClr",
             "val", u"92d050");
 
@@ -1040,7 +1040,7 @@ CPPUNIT_TEST_FIXTURE(Test, testExportShadow)
 
     
assertXPath(pXmlDoc,"/w:document/w:body/w:p/w:r/mc:AlternateContent/mc:Choice/w:drawing/wp:anchor/a:graphic/a:graphicData/wpg:wgp/wps:wsp[1]/wps:spPr/a:effectLst/a:outerShdw",
 "dist" , u"109865");
     
assertXPath(pXmlDoc,"/w:document/w:body/w:p/w:r/mc:AlternateContent/mc:Choice/w:drawing/wp:anchor/a:graphic/a:graphicData/wpg:wgp/wps:wsp[1]/wps:spPr/a:effectLst/a:outerShdw",
 "dir" , u"634411");
-    
assertXPath(pXmlDoc,"/w:document/w:body/w:p/w:r/mc:AlternateContent/mc:Choice/w:drawing/wp:anchor/a:graphic/a:graphicData/wpg:wgp/wps:wsp[1]/wps:spPr/a:effectLst/a:outerShdw/a:srgbClr",
 "val" , u"000000");
+    
assertXPathInsensitive(pXmlDoc,"/w:document/w:body/w:p/w:r/mc:AlternateContent/mc:Choice/w:drawing/wp:anchor/a:graphic/a:graphicData/wpg:wgp/wps:wsp[1]/wps:spPr/a:effectLst/a:outerShdw/a:srgbClr",
 "val" , u"000000");
     
assertXPath(pXmlDoc,"/w:document/w:body/w:p/w:r/mc:AlternateContent/mc:Choice/w:drawing/wp:anchor/a:graphic/a:graphicData/wpg:wgp/wps:wsp[1]/wps:spPr/a:effectLst/a:outerShdw/a:srgbClr/a:alpha",
 "val" , u"38000");
 }
 
diff --git a/sw/qa/extras/ooxmlexport/ooxmlw14export.cxx 
b/sw/qa/extras/ooxmlexport/ooxmlw14export.cxx
index b8a0496f9874..6837f39e7781 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlw14export.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlw14export.cxx
@@ -108,7 +108,7 @@ CPPUNIT_TEST_FIXTURE(Test, Test_TextEffects_TextOutline)
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[1]/w:r[1]/w:rPr/w14:textOutline/w14:gradFill/w14:gsLst/w14:gs[2]/w14:schemeClr/w14:lumOff",
 "val", u"60000");
 
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[1]/w:r[1]/w:rPr/w14:textOutline/w14:gradFill/w14:gsLst/w14:gs[3]",
 "pos", u"0");
-    assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[1]/w:r[1]/w:rPr/w14:textOutline/w14:gradFill/w14:gsLst/w14:gs[3]/w14:srgbClr",
 "val", u"0070C0");
+    assertXPathInsensitive(pXmlDoc, 
"/w:document/w:body/w:p[1]/w:r[1]/w:rPr/w14:textOutline/w14:gradFill/w14:gsLst/w14:gs[3]/w14:srgbClr",
 "val", u"0070C0");
 
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[1]/w:r[1]/w:rPr/w14:textOutline/w14:gradFill/w14:gsLst/w14:gs[4]",
 "pos", u"100000");
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[1]/w:r[1]/w:rPr/w14:textOutline/w14:gradFill/w14:gsLst/w14:gs[4]/w14:schemeClr",
 "val", u"accent4");
@@ -125,7 +125,7 @@ CPPUNIT_TEST_FIXTURE(Test, Test_TextEffects_TextOutline)
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[2]/w:r[1]/w:rPr/w14:textOutline", "cmpd", u"sng");
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[2]/w:r[1]/w:rPr/w14:textOutline", "algn", u"ctr");
 
-    assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[2]/w:r[1]/w:rPr/w14:textOutline/w14:solidFill/w14:srgbClr",
 "val", u"FF0000");
+    assertXPathInsensitive(pXmlDoc, 
"/w:document/w:body/w:p[2]/w:r[1]/w:rPr/w14:textOutline/w14:solidFill/w14:srgbClr",
 "val", u"FF0000");
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[2]/w:r[1]/w:rPr/w14:textOutline/w14:prstDash", "val", 
u"solid");
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[2]/w:r[1]/w:rPr/w14:textOutline/w14:bevel", 1);
 
@@ -164,7 +164,7 @@ CPPUNIT_TEST_FIXTURE(Test, Test_TextEffects_TextFill)
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[4]/w:r[1]/w:rPr/w14:textFill/w14:gradFill/w14:gsLst/w14:gs[1]/w14:schemeClr/w14:lumMod",
 "val", u"67000");
 
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[4]/w:r[1]/w:rPr/w14:textFill/w14:gradFill/w14:gsLst/w14:gs[2]",
 "pos", u"50000");
-    assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[4]/w:r[1]/w:rPr/w14:textFill/w14:gradFill/w14:gsLst/w14:gs[2]/w14:srgbClr",
 "val", u"00B0F0");
+    assertXPathInsensitive(pXmlDoc, 
"/w:document/w:body/w:p[4]/w:r[1]/w:rPr/w14:textFill/w14:gradFill/w14:gsLst/w14:gs[2]/w14:srgbClr",
 "val", u"00B0F0");
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[4]/w:r[1]/w:rPr/w14:textFill/w14:gradFill/w14:gsLst/w14:gs[2]/w14:srgbClr/w14:alpha",
 "val", u"10000");
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[4]/w:r[1]/w:rPr/w14:textFill/w14:gradFill/w14:gsLst/w14:gs[2]/w14:srgbClr/w14:lumMod",
 "val", u"80000");
 
@@ -203,7 +203,7 @@ CPPUNIT_TEST_FIXTURE(Test, 
Test_TextEffects_Props3d_Ligatures_NumForm_NumSpacing
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[1]/w:r[1]/w:rPr/w14:props3d/w14:extrusionClr/w14:schemeClr/w14:lumOff",
 "val", u"80000");
 
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[1]/w:r[1]/w:rPr/w14:props3d/w14:contourClr", 1);
-    assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[1]/w:r[1]/w:rPr/w14:props3d/w14:contourClr/w14:srgbClr",
 "val", u"92D050");
+    assertXPathInsensitive(pXmlDoc, 
"/w:document/w:body/w:p[1]/w:r[1]/w:rPr/w14:props3d/w14:contourClr/w14:srgbClr",
 "val", u"92D050");
 
     // Paragraph 2 - w14:ligatures
     assertXPath(pXmlDoc, 
"/w:document/w:body/w:p[2]/w:r[1]/w:rPr/w14:ligatures", 1);
@@ -310,7 +310,7 @@ CPPUNIT_TEST_FIXTURE(Test, Test_TextEffects_Groupshapes)
     assertXPath(pXmlDoc, sPathShadow, "kx", u"0");
     assertXPath(pXmlDoc, sPathShadow, "ky", u"0");
     assertXPath(pXmlDoc, sPathShadow, "algn", u"l");
-    assertXPath(pXmlDoc, sPathShadow+"/w14:srgbClr", "val", u"92D050");
+    assertXPathInsensitive(pXmlDoc, sPathShadow+"/w14:srgbClr", "val", 
u"92D050");
     assertXPath(pXmlDoc, sPathShadow+"/w14:srgbClr/w14:alpha", "val", 
u"40000");
 
     // Reflection
diff --git a/test/source/xmltesttools.cxx b/test/source/xmltesttools.cxx
index 20f5fc45a84b..5959a537e24e 100644
--- a/test/source/xmltesttools.cxx
+++ b/test/source/xmltesttools.cxx
@@ -169,6 +169,14 @@ void XmlTestTools::assertXPath(const xmlDocUniquePtr& 
pXmlDoc, const char* pXPat
                                  rExpectedValue, std::u16string_view(aValue));
 }
 
+void XmlTestTools::assertXPathInsensitive(const xmlDocUniquePtr& pXmlDoc, 
const char* pXPath, const char* pAttribute, std::u16string_view rExpectedValue)
+{
+    OUString aValue = getXPath(pXmlDoc, pXPath, pAttribute).toAsciiLowerCase();
+    OUString aExpectedValue = OUString(rExpectedValue).toAsciiLowerCase();
+    CPPUNIT_ASSERT_EQUAL_MESSAGE(OString(OString::Concat("In <") + 
pXmlDoc->name + ">, attribute '" + pAttribute + "' of '" + pXPath + "' 
incorrect case insensitive value. '" + aValue.toUtf8() + "' should be '" + 
aExpectedValue.toUtf8() + "'").getStr(),
+                                 aExpectedValue, aValue);
+}
+
 void XmlTestTools::assertXPathDoubleValue(const xmlDocUniquePtr& pXmlDoc, 
const char* pXPath, const char* pAttribute, double expectedValue, double delta)
 {
     OUString aValue = getXPath(pXmlDoc, pXPath, pAttribute);

Reply via email to