diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2023-11-19 17:31:25 +0100 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2023-11-19 20:38:53 +0100 |
commit | c7526e303ff8113b6d4fdcc5b439b2ea2734cd51 (patch) | |
tree | 33b489990d4c4f54a0cd94885932687afd705546 | |
parent | 099be392bfc5ddba21370726fa887a2fd6c99cd5 (diff) |
Extended loplugin:ostr: sd
Change-Id: Iadfe05a173bacd236086728ac23de1e610f0bf27
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159679
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
22 files changed, 1205 insertions, 1059 deletions
diff --git a/sd/qa/filter/eppt/eppt.cxx b/sd/qa/filter/eppt/eppt.cxx index 08e83053ed2f..b55a5070e696 100644 --- a/sd/qa/filter/eppt/eppt.cxx +++ b/sd/qa/filter/eppt/eppt.cxx @@ -88,7 +88,7 @@ CPPUNIT_TEST_FIXTURE(Test, testThemeExport) // Verify that this color is not lost: xmlDocUniquePtr pXmlDoc = parseExport("ppt/theme/theme1.xml"); - assertXPath(pXmlDoc, "//a:clrScheme/a:lt1/a:srgbClr", "val", + assertXPath(pXmlDoc, "//a:clrScheme/a:lt1/a:srgbClr"_ostr, "val"_ostr, "222222"); // expected color 22-22-22 // Check the theme after loading again @@ -126,7 +126,7 @@ CPPUNIT_TEST_FIXTURE(Test, testLoopingFromAnimation) // - Actual : 0 // - In <>, XPath '//p:cMediaNode/p:cTn' number of nodes is incorrect // i.e. the media node was lost on export, the video no longer looped. - assertXPath(pXmlDoc, "//p:cMediaNode/p:cTn", "repeatCount", "indefinite"); + assertXPath(pXmlDoc, "//p:cMediaNode/p:cTn"_ostr, "repeatCount"_ostr, "indefinite"); } } diff --git a/sd/qa/unit/HtmlExportTest.cxx b/sd/qa/unit/HtmlExportTest.cxx index 93c1a21339d1..34b262f6e76c 100644 --- a/sd/qa/unit/HtmlExportTest.cxx +++ b/sd/qa/unit/HtmlExportTest.cxx @@ -26,18 +26,19 @@ public: save("impress_html_Export"); htmlDocUniquePtr htmlDoc = parseHtml(maTempFile); - assertXPath(htmlDoc, "/html", 1); - assertXPath(htmlDoc, "/html/body", 1); - assertXPath(htmlDoc, "/html/body/h1", 4); - assertXPath(htmlDoc, "/html/body/table", 1); - assertXPath(htmlDoc, "/html/body/table/tr", 5); - assertXPath(htmlDoc, "/html/body/ul", 1); - assertXPath(htmlDoc, "/html/body/ul/li", 2); + assertXPath(htmlDoc, "/html"_ostr, 1); + assertXPath(htmlDoc, "/html/body"_ostr, 1); + assertXPath(htmlDoc, "/html/body/h1"_ostr, 4); + assertXPath(htmlDoc, "/html/body/table"_ostr, 1); + assertXPath(htmlDoc, "/html/body/table/tr"_ostr, 5); + assertXPath(htmlDoc, "/html/body/ul"_ostr, 1); + assertXPath(htmlDoc, "/html/body/ul/li"_ostr, 2); - assertXPath(htmlDoc, "/html/head/meta[1]", "content", "text/html; charset=utf-8"); - assertXPath(htmlDoc, "/html/head/meta[2]", "name", "generator"); - assertXPath(htmlDoc, "/html/head/meta[3]", "name", "created"); - assertXPath(htmlDoc, "/html/head/meta[3]", "content", "2014-04-09T17:05:41.987922038"); + assertXPath(htmlDoc, "/html/head/meta[1]"_ostr, "content"_ostr, "text/html; charset=utf-8"); + assertXPath(htmlDoc, "/html/head/meta[2]"_ostr, "name"_ostr, "generator"); + assertXPath(htmlDoc, "/html/head/meta[3]"_ostr, "name"_ostr, "created"); + assertXPath(htmlDoc, "/html/head/meta[3]"_ostr, "content"_ostr, + "2014-04-09T17:05:41.987922038"); } void testTdf154989() @@ -46,21 +47,23 @@ public: save("XHTML Draw File"); xmlDocUniquePtr pXmlDoc = parseXml(maTempFile); - assertXPath(pXmlDoc, "/xhtml:html", 1); + assertXPath(pXmlDoc, "/xhtml:html"_ostr, 1); // 1 page - assertXPath(pXmlDoc, "/xhtml:html/xhtml:body/xhtml:div", 1); + assertXPath(pXmlDoc, "/xhtml:html/xhtml:body/xhtml:div"_ostr, 1); // 4 shapes - assertXPath(pXmlDoc, "/xhtml:html/xhtml:body/xhtml:div[1]/xhtml:div", 4); + assertXPath(pXmlDoc, "/xhtml:html/xhtml:body/xhtml:div[1]/xhtml:div"_ostr, 4); // 3 of them are text boxes - assertXPath(pXmlDoc, "/xhtml:html/xhtml:body/xhtml:div[1]/xhtml:div/xhtml:div", 3); + assertXPath(pXmlDoc, "/xhtml:html/xhtml:body/xhtml:div[1]/xhtml:div/xhtml:div"_ostr, 3); // not sure if the order of these is stable? - assertXPathContent(pXmlDoc, - "/xhtml:html/xhtml:body/xhtml:div[1]/xhtml:div[2]/xhtml:div/xhtml:p", - "before"); assertXPathContent( - pXmlDoc, "/xhtml:html/xhtml:body/xhtml:div[1]/xhtml:div[3]/xhtml:div/xhtml:p", "above"); + pXmlDoc, "/xhtml:html/xhtml:body/xhtml:div[1]/xhtml:div[2]/xhtml:div/xhtml:p"_ostr, + "before"); assertXPathContent( - pXmlDoc, "/xhtml:html/xhtml:body/xhtml:div[1]/xhtml:div[4]/xhtml:div/xhtml:p", "below"); + pXmlDoc, "/xhtml:html/xhtml:body/xhtml:div[1]/xhtml:div[3]/xhtml:div/xhtml:p"_ostr, + "above"); + assertXPathContent( + pXmlDoc, "/xhtml:html/xhtml:body/xhtml:div[1]/xhtml:div[4]/xhtml:div/xhtml:p"_ostr, + "below"); } CPPUNIT_TEST_SUITE(SdHTMLFilterTest); diff --git a/sd/qa/unit/SVGExportTests.cxx b/sd/qa/unit/SVGExportTests.cxx index 713cd3b5a4d6..03381bd8901e 100644 --- a/sd/qa/unit/SVGExportTests.cxx +++ b/sd/qa/unit/SVGExportTests.cxx @@ -85,16 +85,16 @@ public: svgDoc->name = reinterpret_cast<char *>(xmlStrdup(reinterpret_cast<xmlChar const *>(OUStringToOString(maTempFile.GetURL(), RTL_TEXTENCODING_UTF8).getStr()))); assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG ), 1); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2] ), "class", "SlideGroup"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G ), "class", "Slide"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[1] ), "class", "TitleText"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[1]/SVG_G/SVG_TEXT ), "class", "SVGTextShape"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[1]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN ), "class", "TextPosition"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[1]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN[1] ), "text-decoration", "underline"); - - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[2]/SVG_G/SVG_TEXT ), "class", "SVGTextShape"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[2]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN ), "class", "TextPosition"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[2]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN ), "text-decoration", "line-through"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2] ), "class"_ostr, "SlideGroup"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G ), "class"_ostr, "Slide"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[1] ), "class"_ostr, "TitleText"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[1]/SVG_G/SVG_TEXT ), "class"_ostr, "SVGTextShape"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[1]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN ), "class"_ostr, "TextPosition"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[1]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN[1] ), "text-decoration"_ostr, "underline"); + + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[2]/SVG_G/SVG_TEXT ), "class"_ostr, "SVGTextShape"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[2]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN ), "class"_ostr, "TextPosition"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[2]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN ), "text-decoration"_ostr, "line-through"); } void testSVGExportJavascriptURL() @@ -120,7 +120,7 @@ public: xmlDocUniquePtr svgDoc = parseXml(maTempFile); CPPUNIT_ASSERT(svgDoc); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_DEFS ), "class", "SlideBackground"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_DEFS ), "class"_ostr, "SlideBackground"); } void testSVGExportTextFieldsInMasterPage() @@ -131,20 +131,20 @@ public: xmlDocUniquePtr svgDoc = parseXml(maTempFile); CPPUNIT_ASSERT(svgDoc); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2] ), "class", "Master_Slide"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2] ), "class", "BackgroundObjects"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2] ), "class"_ostr, "Master_Slide"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2] ), "class"_ostr, "BackgroundObjects"); // Current Date Field - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[4] ), "class", "TextShape"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[4]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN ), "class", "PlaceholderText Date"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[4] ), "class"_ostr, "TextShape"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[4]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN ), "class"_ostr, "PlaceholderText Date"); // Current Time Field - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[5] ), "class", "TextShape"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[5]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN ), "class", "PlaceholderText Time"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[5] ), "class"_ostr, "TextShape"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[5]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN ), "class"_ostr, "PlaceholderText Time"); // Slide Name Field - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[6] ), "class", "TextShape"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[6]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN ), "class", "PlaceholderText PageName"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[6] ), "class"_ostr, "TextShape"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[6]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN ), "class"_ostr, "PlaceholderText PageName"); // Slide Number Field - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[7] ), "class", "TextShape"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[7]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN ), "class", "PlaceholderText PageNumber"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[7] ), "class"_ostr, "TextShape"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[7]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN ), "class"_ostr, "PlaceholderText PageNumber"); } void testSVGExportEmbeddedVideo() @@ -156,25 +156,25 @@ public: CPPUNIT_ASSERT(svgDoc); assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG ), 1); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2] ), "class", "SlideGroup"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1] ), "visibility", "hidden"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1] ), "id", "container-id1"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1] ), "class", "Slide"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1] ), "class", "Page"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1] ), "class", "TitleText"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2] ), "class"_ostr, "SlideGroup"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1] ), "visibility"_ostr, "hidden"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1] ), "id"_ostr, "container-id1"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1] ), "class"_ostr, "Slide"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1] ), "class"_ostr, "Page"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1] ), "class"_ostr, "TitleText"); // First one has no valid video, so we just generate the stock thumbnail as an image. - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[2] ), "class", "com.sun.star.presentation.MediaShape"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[2] ), "class"_ostr, "com.sun.star.presentation.MediaShape"); assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[2]/SVG_G[1]/SVG_IMAGE ), 1); // The second one is a valid video, with the thumbnail embedded. - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[5] ), "class", "com.sun.star.drawing.MediaShape"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[5] ), "class"_ostr, "com.sun.star.drawing.MediaShape"); assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[5]/SVG_G[1] ), 1); assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[5]/SVG_G[1]/SVG_FOREIGNOBJECT ), 1); assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[5]/SVG_G[1]/SVG_FOREIGNOBJECT/SVG_BODY ), 1); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[5]/SVG_G[1]/SVG_FOREIGNOBJECT/SVG_BODY/SVG_VIDEO ), "preload", "auto"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[5]/SVG_G[1]/SVG_FOREIGNOBJECT/SVG_BODY/SVG_VIDEO ), "preload"_ostr, "auto"); - const OUString poster = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[5]/SVG_G[1]/SVG_FOREIGNOBJECT/SVG_BODY/SVG_VIDEO), "poster"); + const OUString poster = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[1]/SVG_G[5]/SVG_G[1]/SVG_FOREIGNOBJECT/SVG_BODY/SVG_VIDEO), "poster"_ostr); CPPUNIT_ASSERT_MESSAGE("The video poster is invalid", poster.startsWith("data:image/png;base64,")); } @@ -186,19 +186,19 @@ public: xmlDocUniquePtr svgDoc = parseXml(maTempFile); CPPUNIT_ASSERT(svgDoc); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9] ), "class", "BackgroundBitmaps"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9] ), "class"_ostr, "BackgroundBitmaps"); assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_IMAGE ), 1); - OUString sImageId = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_IMAGE ), "id"); + OUString sImageId = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_IMAGE ), "id"_ostr); CPPUNIT_ASSERT_MESSAGE(OString("The exported bitmap has not a valid id: " + sImageId.toUtf8()).getStr(), isValidBitmapId(sImageId)); BitmapChecksum nChecksum = getBitmapChecksumFromId(sImageId); CPPUNIT_ASSERT_MESSAGE(OString("The exported bitmap has not a valid checksum: " + sImageId.toUtf8()).getStr(), nChecksum != 0); // single image case - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G/SVG_G/SVG_G/SVG_DEFS ), "class", "SlideBackground"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G/SVG_G/SVG_G/SVG_DEFS ), "class"_ostr, "SlideBackground"); assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G/SVG_G/SVG_G/SVG_DEFS/SVG_G/SVG_G/SVG_USE ), 1); - OUString sRef = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G/SVG_G/SVG_G/SVG_DEFS/SVG_G/SVG_G/SVG_USE ), "href"); + OUString sRef = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G/SVG_G/SVG_G/SVG_DEFS/SVG_G/SVG_G/SVG_USE ), "href"_ostr); CPPUNIT_ASSERT_MESSAGE("The <use> element has not a valid href attribute: starting '#' not present.", sRef.startsWith("#")); sRef = sRef.copy(1); CPPUNIT_ASSERT_MESSAGE(OString("The <use> element does not point to a valid bitmap id: " + sRef.toUtf8()).getStr(), isValidBitmapId(sRef)); @@ -216,46 +216,46 @@ public: CPPUNIT_ASSERT(svgDoc); // check the bitmap - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9] ), "class", "BackgroundBitmaps"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9] ), "class"_ostr, "BackgroundBitmaps"); assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_IMAGE ), 1); // check the pattern and background rectangle - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[10] ), "class", "BackgroundPatterns"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[10] ), "class"_ostr, "BackgroundPatterns"); assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[10]/SVG_PATTERN ), 1); assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[10]/SVG_PATTERN/SVG_USE ), 1); assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[10]/SVG_G/SVG_RECT ), 1); // check that <pattern><use> is pointing to the correct <image> - OUString sImageId = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_IMAGE ), "id"); + OUString sImageId = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_IMAGE ), "id"_ostr); CPPUNIT_ASSERT_MESSAGE(OString("The exported bitmap has not a valid id: " + sImageId.toUtf8()).getStr(), isValidBitmapId(sImageId)); BitmapChecksum nChecksum = getBitmapChecksumFromId(sImageId); CPPUNIT_ASSERT_MESSAGE(OString("The exported bitmap has not a valid checksum: " + sImageId.toUtf8()).getStr(), nChecksum != 0); - OUString sRef = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[10]/SVG_PATTERN/SVG_USE ), "href"); + OUString sRef = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[10]/SVG_PATTERN/SVG_USE ), "href"_ostr); CPPUNIT_ASSERT_MESSAGE("The <pattern><use> element has not a valid href attribute: starting '#' not present.", sRef.startsWith("#")); sRef = sRef.copy(1); CPPUNIT_ASSERT_EQUAL_MESSAGE("The href attribute for <pattern><use> does not match the <image> id attribute: ", sImageId, sRef); - OUString sPatternId = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[10]/SVG_PATTERN ), "id"); + OUString sPatternId = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[10]/SVG_PATTERN ), "id"_ostr); CPPUNIT_ASSERT_MESSAGE(OString("The exported pattern has not a valid id: " + sPatternId.toUtf8()).getStr(), isValidBackgroundPatternId(sPatternId)); - OUString sFillUrl = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[10]/SVG_G/SVG_RECT ), "fill"); + OUString sFillUrl = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[10]/SVG_G/SVG_RECT ), "fill"_ostr); bool bIsUrlFormat = sFillUrl.startsWith("url(#") && sFillUrl.endsWith(")"); CPPUNIT_ASSERT_MESSAGE("The fill attribute for the <rectangle> element has not a url format .", bIsUrlFormat); // remove "url(#" and ")" sFillUrl = sFillUrl.copy(5, sFillUrl.getLength() - 6); CPPUNIT_ASSERT_EQUAL_MESSAGE("The fill url for <rectangle> does not match the <pattern> id attribute: ", sPatternId, sFillUrl); - OUString sBackgroundId = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[10]/SVG_G ), "id"); + OUString sBackgroundId = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[10]/SVG_G ), "id"_ostr); CPPUNIT_ASSERT_MESSAGE(OString("The exported tiled background has not a valid id: " + sBackgroundId.toUtf8()).getStr(), isValidTiledBackgroundId(sBackgroundId)); // check <use> element that point to the tiled background - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G/SVG_G/SVG_G/SVG_DEFS ), "class", "SlideBackground"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G/SVG_G/SVG_G/SVG_DEFS ), "class"_ostr, "SlideBackground"); assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G/SVG_G/SVG_G/SVG_DEFS/SVG_G/SVG_USE ), 1); - sRef = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G/SVG_G/SVG_G/SVG_DEFS/SVG_G/SVG_USE ), "href"); + sRef = getXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G[1]/SVG_G/SVG_G/SVG_G/SVG_DEFS/SVG_G/SVG_USE ), "href"_ostr); CPPUNIT_ASSERT_MESSAGE("The <use> element has not a valid href attribute: starting '#' not present.", sRef.startsWith("#")); sRef = sRef.copy(1); CPPUNIT_ASSERT_EQUAL_MESSAGE("The href attribute for <use> does not match the tiled background id attribute: ", sBackgroundId, sRef); @@ -280,15 +280,15 @@ public: xmlDocUniquePtr svgDoc = parseXml(maTempFile); CPPUNIT_ASSERT(svgDoc); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2] ), "class", "Master_Slide"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2] ), "class", "BackgroundObjects"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2] ), "class"_ostr, "Master_Slide"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2] ), "class"_ostr, "BackgroundObjects"); // Slide Name Field - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[6] ), "class", "TextShape"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[6]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN ), "class", "PlaceholderText PageName"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[6] ), "class"_ostr, "TextShape"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[6]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN ), "class"_ostr, "PlaceholderText PageName"); // Slide Number Field - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[7] ), "class", "TextShape"); - assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[7]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN ), "class", "PlaceholderText PageNumber"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[7] ), "class"_ostr, "TextShape"); + assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_DEFS[9]/SVG_G[2]/SVG_G[2]/SVG_G[7]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN ), "class"_ostr, "PlaceholderText PageNumber"); } CPPUNIT_TEST_SUITE(SdSVGFilterTest); diff --git a/sd/qa/unit/ShapeImportExportTest.cxx b/sd/qa/unit/ShapeImportExportTest.cxx index b1008702ad22..a59e503e4140 100644 --- a/sd/qa/unit/ShapeImportExportTest.cxx +++ b/sd/qa/unit/ShapeImportExportTest.cxx @@ -261,107 +261,117 @@ void ShapeImportExportTest::testTextDistancesOOXML_Export() CPPUNIT_ASSERT(pXmlDoc); //Check shape Top/Bottom - 0cm, 4cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:nvSpPr/p:cNvPr", "name", "Text_TB_0_4"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, + "Text_TB_0_4"); + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr"_ostr, { { "tIns", "-360000" }, { "bIns", "1079640" } }); //Check shape Top/Bottom - 4cm, 0cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:nvSpPr/p:cNvPr", "name", "Text_TB_4_0"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:bodyPr", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, + "Text_TB_4_0"); + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:bodyPr"_ostr, { { "tIns", "1079640" }, { "bIns", "-360000" } }); //Check shape Top/Bottom - 0cm, 3cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:nvSpPr/p:cNvPr", "name", "Text_TB_0_3"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:txBody/a:bodyPr", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, + "Text_TB_0_3"); + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:txBody/a:bodyPr"_ostr, { { "tIns", "-180000" }, { "bIns", "899640" } }); //Check shape Top/Bottom - 2cm, 1cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:nvSpPr/p:cNvPr", "name", "Text_TB_2_1"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:txBody/a:bodyPr", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, + "Text_TB_2_1"); + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:txBody/a:bodyPr"_ostr, { { "tIns", "540000" }, { "bIns", "180000" } }); //Check shape Top/Bottom - 0cm, 2.5cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[5]/p:nvSpPr/p:cNvPr", "name", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[5]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, "Text_TB_0_2.5"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[5]/p:txBody/a:bodyPr", + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[5]/p:txBody/a:bodyPr"_ostr, { { "tIns", "-90000" }, { "bIns", "809640" } }); //Check shape Top/Bottom - 0cm, 2cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[6]/p:nvSpPr/p:cNvPr", "name", "Text_TB_0_2"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[6]/p:txBody/a:bodyPr", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[6]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, + "Text_TB_0_2"); + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[6]/p:txBody/a:bodyPr"_ostr, { { "tIns", "0" }, { "bIns", "720000" } }); //Check shape Top/Bottom - 0cm, 1.5cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[7]/p:nvSpPr/p:cNvPr", "name", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[7]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, "Text_TB_0_1.5"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[7]/p:txBody/a:bodyPr", + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[7]/p:txBody/a:bodyPr"_ostr, { { "tIns", "0" }, { "bIns", "540000" } }); //Check shape Top/Bottom - 3cm, 0cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[8]/p:nvSpPr/p:cNvPr", "name", "Text_TB_3_0"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[8]/p:txBody/a:bodyPr", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[8]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, + "Text_TB_3_0"); + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[8]/p:txBody/a:bodyPr"_ostr, { { "tIns", "899640" }, { "bIns", "-180000" } }); //Check shape Top/Bottom - 2.5cm, 0cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[9]/p:nvSpPr/p:cNvPr", "name", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[9]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, "Text_TB_2.5_0"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[9]/p:txBody/a:bodyPr", + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[9]/p:txBody/a:bodyPr"_ostr, { { "tIns", "809640" }, { "bIns", "-90000" } }); //Check shape Top/Bottom - 2cm, 0cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[10]/p:nvSpPr/p:cNvPr", "name", "Text_TB_2_0"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[10]/p:txBody/a:bodyPr", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[10]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, + "Text_TB_2_0"); + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[10]/p:txBody/a:bodyPr"_ostr, { { "tIns", "720000" }, { "bIns", "0" } }); //Check shape Top/Bottom - 1.5cm, 0cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[11]/p:nvSpPr/p:cNvPr", "name", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[11]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, "Text_TB_1.5_0"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[11]/p:txBody/a:bodyPr", + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[11]/p:txBody/a:bodyPr"_ostr, { { "tIns", "540000" }, { "bIns", "0" } }); //Check shape Top/Bottom - 1cm, 2cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[12]/p:nvSpPr/p:cNvPr", "name", "Text_TB_1_2"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[12]/p:txBody/a:bodyPr", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[12]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, + "Text_TB_1_2"); + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[12]/p:txBody/a:bodyPr"_ostr, { { "tIns", "180000" }, { "bIns", "540000" } }); //Check shape Top/Bottom - 2cm, 1.5cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[13]/p:nvSpPr/p:cNvPr", "name", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[13]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, "Text_TB_2_1.5"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[13]/p:txBody/a:bodyPr", + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[13]/p:txBody/a:bodyPr"_ostr, { { "tIns", "450000" }, { "bIns", "270000" } }); //Check shape Top/Bottom - 1.5cm, 2cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[14]/p:nvSpPr/p:cNvPr", "name", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[14]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, "Text_TB_1.5_2"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[14]/p:txBody/a:bodyPr", + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[14]/p:txBody/a:bodyPr"_ostr, { { "tIns", "270000" }, { "bIns", "450000" } }); //Check shape Top/Bottom - 2cm, 1.75cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[15]/p:nvSpPr/p:cNvPr", "name", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[15]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, "Text_TB_2_1.75"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[15]/p:txBody/a:bodyPr", + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[15]/p:txBody/a:bodyPr"_ostr, { { "tIns", "405000" }, { "bIns", "315000" } }); //Check shape Top/Bottom - 1.75cm, 2cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[16]/p:nvSpPr/p:cNvPr", "name", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[16]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, "Text_TB_1.75_2"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[16]/p:txBody/a:bodyPr", + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[16]/p:txBody/a:bodyPr"_ostr, { { "tIns", "315000" }, { "bIns", "405000" } }); //Check shape Top/Bottom - 2cm, 2cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[17]/p:nvSpPr/p:cNvPr", "name", "Text_TB_2_2"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[17]/p:txBody/a:bodyPr", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[17]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, + "Text_TB_2_2"); + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[17]/p:txBody/a:bodyPr"_ostr, { { "tIns", "360000" }, { "bIns", "360000" } }); //Check shape Top/Bottom - 1cm, 1cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[18]/p:nvSpPr/p:cNvPr", "name", "Text_TB_1_1"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[18]/p:txBody/a:bodyPr", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[18]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, + "Text_TB_1_1"); + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[18]/p:txBody/a:bodyPr"_ostr, { { "tIns", "360000" }, { "bIns", "360000" } }); //Check shape Top/Bottom - 0.5cm, 0.5cm - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[19]/p:nvSpPr/p:cNvPr", "name", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[19]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, "Text_TB_0.5_0.5"); - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[19]/p:txBody/a:bodyPr", + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[19]/p:txBody/a:bodyPr"_ostr, { { "tIns", "180000" }, { "bIns", "180000" } }); } @@ -375,7 +385,7 @@ void ShapeImportExportTest::testTextDistancesODP_OOXML_Export() // The text ends 5cm below the top edge of the shape. // Without the fix we exported tIns="3600000" and bIns="5400000". // The text had ended about 3.3cm below the top edge in PowerPoint. - assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr", + assertXPathAttrs(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr"_ostr, { { "tIns", "720000" }, { "bIns", "2520000" } }); } diff --git a/sd/qa/unit/dialogs-test.cxx b/sd/qa/unit/dialogs-test.cxx index c9182eea751d..45bdcaef9d48 100644 --- a/sd/qa/unit/dialogs-test.cxx +++ b/sd/qa/unit/dialogs-test.cxx @@ -209,28 +209,28 @@ const SfxItemSet& SdDialogsTest::getEmptyFillStyleSfxItemSet() void SdDialogsTest::registerKnownDialogsByID(mapType& rKnownDialogs) { // fill map of known dialogs - rKnownDialogs["modules/sdraw/ui/breakdialog.ui"] = 0; - rKnownDialogs["modules/sdraw/ui/copydlg.ui"] = 1; - rKnownDialogs["modules/simpress/ui/customslideshows.ui"] = 2; - rKnownDialogs["modules/sdraw/ui/drawchardialog.ui"] = 3; - rKnownDialogs["modules/sdraw/ui/drawpagedialog.ui"] = 4; - rKnownDialogs["modules/simpress/ui/dlgfield.ui"] = 5; - rKnownDialogs["modules/sdraw/ui/dlgsnap.ui"] = 6; - rKnownDialogs["modules/sdraw/ui/insertlayer.ui"] = 7; - rKnownDialogs["modules/sdraw/ui/insertslidesdialog.ui"] = 8; - rKnownDialogs["modules/sdraw/ui/crossfadedialog.ui"] = 9; - rKnownDialogs["modules/sdraw/ui/bulletsandnumbering.ui"] = 10; - rKnownDialogs["modules/sdraw/ui/drawparadialog.ui"] = 11; - rKnownDialogs["modules/simpress/ui/presentationdialog.ui"] = 12; - rKnownDialogs["modules/simpress/ui/remotedialog.ui"] = 13; - rKnownDialogs["modules/sdraw/ui/drawprtldialog.ui"] = 14; - rKnownDialogs["modules/simpress/ui/slidedesigndialog.ui"] = 15; - rKnownDialogs["modules/simpress/ui/templatedialog.ui"] = 16; - rKnownDialogs["modules/simpress/ui/interactiondialog.ui"] = 17; - rKnownDialogs["modules/sdraw/ui/vectorize.ui"] = 18; - rKnownDialogs["modules/simpress/ui/photoalbum.ui"] = 19; - rKnownDialogs["modules/simpress/ui/masterlayoutdlg.ui"] = 20; - rKnownDialogs["modules/simpress/ui/headerfooterdialog.ui"] = 21; + rKnownDialogs["modules/sdraw/ui/breakdialog.ui"_ostr] = 0; + rKnownDialogs["modules/sdraw/ui/copydlg.ui"_ostr] = 1; + rKnownDialogs["modules/simpress/ui/customslideshows.ui"_ostr] = 2; + rKnownDialogs["modules/sdraw/ui/drawchardialog.ui"_ostr] = 3; + rKnownDialogs["modules/sdraw/ui/drawpagedialog.ui"_ostr] = 4; + rKnownDialogs["modules/simpress/ui/dlgfield.ui"_ostr] = 5; + rKnownDialogs["modules/sdraw/ui/dlgsnap.ui"_ostr] = 6; + rKnownDialogs["modules/sdraw/ui/insertlayer.ui"_ostr] = 7; + rKnownDialogs["modules/sdraw/ui/insertslidesdialog.ui"_ostr] = 8; + rKnownDialogs["modules/sdraw/ui/crossfadedialog.ui"_ostr] = 9; + rKnownDialogs["modules/sdraw/ui/bulletsandnumbering.ui"_ostr] = 10; + rKnownDialogs["modules/sdraw/ui/drawparadialog.ui"_ostr] = 11; + rKnownDialogs["modules/simpress/ui/presentationdialog.ui"_ostr] = 12; + rKnownDialogs["modules/simpress/ui/remotedialog.ui"_ostr] = 13; + rKnownDialogs["modules/sdraw/ui/drawprtldialog.ui"_ostr] = 14; + rKnownDialogs["modules/simpress/ui/slidedesigndialog.ui"_ostr] = 15; + rKnownDialogs["modules/simpress/ui/templatedialog.ui"_ostr] = 16; + rKnownDialogs["modules/simpress/ui/interactiondialog.ui"_ostr] = 17; + rKnownDialogs["modules/sdraw/ui/vectorize.ui"_ostr] = 18; + rKnownDialogs["modules/simpress/ui/photoalbum.ui"_ostr] = 19; + rKnownDialogs["modules/simpress/ui/masterlayoutdlg.ui"_ostr] = 20; + rKnownDialogs["modules/simpress/ui/headerfooterdialog.ui"_ostr] = 21; } VclPtr<VclAbstractDialog> SdDialogsTest::createDialogByID(sal_uInt32 nID) diff --git a/sd/qa/unit/export-tests-ooxml1.cxx b/sd/qa/unit/export-tests-ooxml1.cxx index 167f67f8674e..deab0ea2de24 100644 --- a/sd/qa/unit/export-tests-ooxml1.cxx +++ b/sd/qa/unit/export-tests-ooxml1.cxx @@ -80,7 +80,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf152335) xmlDocUniquePtr pXmlDocTheme = parseExport("ppt/theme/theme1.xml"); assertXPathChildren( - pXmlDocTheme, "/a:theme/a:themeElements/a:fmtScheme/a:effectStyleLst/a:effectStyle[3]", 1); + pXmlDocTheme, "/a:theme/a:themeElements/a:fmtScheme/a:effectStyleLst/a:effectStyle[3]"_ostr, + 1); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf149803) @@ -89,7 +90,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf149803) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp", "useBgFill", "1"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp"_ostr, "useBgFill"_ostr, "1"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf149311) @@ -99,7 +100,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf149311) xmlDocUniquePtr pRelsDoc = parseExport("ppt/slides/_rels/slide1.xml.rels"); - assertXPath(pRelsDoc, "/rels:Relationships/rels:Relationship[@Id='rId1']", "Target", + assertXPath(pRelsDoc, "/rels:Relationships/rels:Relationship[@Id='rId1']"_ostr, "Target"_ostr, "slide2.xml"); } @@ -109,14 +110,14 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf149128) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp/p:nvCxnSpPr/p:cNvCxnSpPr/a:stCxn", "id", - "42"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp/p:nvCxnSpPr/p:cNvCxnSpPr/a:stCxn", "idx", - "0"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp/p:nvCxnSpPr/p:cNvCxnSpPr/a:endCxn", "id", - "43"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp/p:nvCxnSpPr/p:cNvCxnSpPr/a:endCxn", "idx", - "2"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp/p:nvCxnSpPr/p:cNvCxnSpPr/a:stCxn"_ostr, + "id"_ostr, "42"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp/p:nvCxnSpPr/p:cNvCxnSpPr/a:stCxn"_ostr, + "idx"_ostr, "0"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp/p:nvCxnSpPr/p:cNvCxnSpPr/a:endCxn"_ostr, + "id"_ostr, "43"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp/p:nvCxnSpPr/p:cNvCxnSpPr/a:endCxn"_ostr, + "idx"_ostr, "2"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf66228) @@ -125,7 +126,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf66228) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp/p:spPr/a:prstGeom", "prst", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp/p:spPr/a:prstGeom"_ostr, "prst"_ostr, "bentConnector3"); } @@ -135,66 +136,72 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf147919) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[1]/p:spPr/a:prstGeom", "prst", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[1]/p:spPr/a:prstGeom"_ostr, "prst"_ostr, "bentConnector2"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[2]/p:spPr/a:prstGeom/a:avLst/a:gd", "name", - "adj1"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[2]/p:spPr/a:prstGeom", "prst", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[2]/p:spPr/a:prstGeom/a:avLst/a:gd"_ostr, + "name"_ostr, "adj1"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[2]/p:spPr/a:prstGeom"_ostr, "prst"_ostr, "bentConnector3"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[3]/p:spPr/a:xfrm", "flipH", "1"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[3]/p:spPr/a:xfrm", "rot", "16200000"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[3]/p:spPr/a:prstGeom/a:avLst/a:gd[1]", - "name", "adj1"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[3]/p:spPr/a:prstGeom/a:avLst/a:gd[2]", - "name", "adj2"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[3]/p:spPr/a:prstGeom", "prst", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[3]/p:spPr/a:xfrm"_ostr, "flipH"_ostr, "1"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[3]/p:spPr/a:xfrm"_ostr, "rot"_ostr, + "16200000"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[3]/p:spPr/a:prstGeom/a:avLst/a:gd[1]"_ostr, + "name"_ostr, "adj1"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[3]/p:spPr/a:prstGeom/a:avLst/a:gd[2]"_ostr, + "name"_ostr, "adj2"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[3]/p:spPr/a:prstGeom"_ostr, "prst"_ostr, "bentConnector4"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[4]/p:spPr/a:xfrm", "flipH", "1"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[4]/p:spPr/a:xfrm", "flipV", "1"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[4]/p:spPr/a:xfrm", "rot", "10800000"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[4]/p:spPr/a:prstGeom/a:avLst/a:gd[1]", - "name", "adj1"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[4]/p:spPr/a:prstGeom/a:avLst/a:gd[2]", - "name", "adj2"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[4]/p:spPr/a:prstGeom/a:avLst/a:gd[3]", - "name", "adj3"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[4]/p:spPr/a:prstGeom", "prst", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[4]/p:spPr/a:xfrm"_ostr, "flipH"_ostr, "1"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[4]/p:spPr/a:xfrm"_ostr, "flipV"_ostr, "1"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[4]/p:spPr/a:xfrm"_ostr, "rot"_ostr, + "10800000"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[4]/p:spPr/a:prstGeom/a:avLst/a:gd[1]"_ostr, + "name"_ostr, "adj1"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[4]/p:spPr/a:prstGeom/a:avLst/a:gd[2]"_ostr, + "name"_ostr, "adj2"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[4]/p:spPr/a:prstGeom/a:avLst/a:gd[3]"_ostr, + "name"_ostr, "adj3"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[4]/p:spPr/a:prstGeom"_ostr, "prst"_ostr, "bentConnector5"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[5]/p:spPr/a:xfrm", "flipH", "1"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[5]/p:spPr/a:xfrm", "rot", "16200000"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[5]/p:spPr/a:prstGeom", "prst", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[5]/p:spPr/a:xfrm"_ostr, "flipH"_ostr, "1"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[5]/p:spPr/a:xfrm"_ostr, "rot"_ostr, + "16200000"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[5]/p:spPr/a:prstGeom"_ostr, "prst"_ostr, "curvedConnector2"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[6]/p:spPr/a:xfrm", "flipH", "1"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[6]/p:spPr/a:xfrm", "rot", "16200000"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[6]/p:spPr/a:prstGeom/a:avLst/a:gd", "name", - "adj1"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[6]/p:spPr/a:prstGeom", "prst", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[6]/p:spPr/a:xfrm"_ostr, "flipH"_ostr, "1"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[6]/p:spPr/a:xfrm"_ostr, "rot"_ostr, + "16200000"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[6]/p:spPr/a:prstGeom/a:avLst/a:gd"_ostr, + "name"_ostr, "adj1"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[6]/p:spPr/a:prstGeom"_ostr, "prst"_ostr, "curvedConnector3"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[7]/p:spPr/a:xfrm", "flipH", "1"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[7]/p:spPr/a:xfrm", "flipV", "1"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[7]/p:spPr/a:xfrm", "rot", "10800000"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[7]/p:spPr/a:prstGeom/a:avLst/a:gd[1]", - "name", "adj1"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[7]/p:spPr/a:prstGeom/a:avLst/a:gd[2]", - "name", "adj2"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[7]/p:spPr/a:prstGeom", "prst", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[7]/p:spPr/a:xfrm"_ostr, "flipH"_ostr, "1"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[7]/p:spPr/a:xfrm"_ostr, "flipV"_ostr, "1"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[7]/p:spPr/a:xfrm"_ostr, "rot"_ostr, + "10800000"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[7]/p:spPr/a:prstGeom/a:avLst/a:gd[1]"_ostr, + "name"_ostr, "adj1"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[7]/p:spPr/a:prstGeom/a:avLst/a:gd[2]"_ostr, + "name"_ostr, "adj2"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[7]/p:spPr/a:prstGeom"_ostr, "prst"_ostr, "curvedConnector4"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[8]/p:spPr/a:xfrm", "flipV", "1"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[8]/p:spPr/a:xfrm", "rot", "16200000"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[8]/p:spPr/a:prstGeom/a:avLst/a:gd[1]", - "name", "adj1"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[8]/p:spPr/a:prstGeom/a:avLst/a:gd[2]", - "name", "adj2"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[8]/p:spPr/a:prstGeom/a:avLst/a:gd[3]", - "name", "adj3"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[8]/p:spPr/a:prstGeom", "prst", + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[8]/p:spPr/a:xfrm"_ostr, "flipV"_ostr, "1"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[8]/p:spPr/a:xfrm"_ostr, "rot"_ostr, + "16200000"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[8]/p:spPr/a:prstGeom/a:avLst/a:gd[1]"_ostr, + "name"_ostr, "adj1"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[8]/p:spPr/a:prstGeom/a:avLst/a:gd[2]"_ostr, + "name"_ostr, "adj2"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[8]/p:spPr/a:prstGeom/a:avLst/a:gd[3]"_ostr, + "name"_ostr, "adj3"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:cxnSp[8]/p:spPr/a:prstGeom"_ostr, "prst"_ostr, "curvedConnector5"); } @@ -204,7 +211,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf130165) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc, "/p:sld", "showMasterSp", "0"); + assertXPath(pXmlDoc, "/p:sld"_ostr, "showMasterSp"_ostr, "0"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf124781) @@ -213,12 +220,12 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf124781) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc1 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p[1]/a:r[2]/a:rPr", "baseline", - "33000"); + assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p[1]/a:r[2]/a:rPr"_ostr, + "baseline"_ostr, "33000"); xmlDocUniquePtr pXmlDoc2 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc2, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p[2]/a:r[2]/a:rPr", "baseline", - "-8000"); + assertXPath(pXmlDoc2, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p[2]/a:r[2]/a:rPr"_ostr, + "baseline"_ostr, "-8000"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf144914) @@ -227,37 +234,37 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf144914) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc1 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:nvSpPr/p:cNvPr/a:hlinkClick", "action", - "ppaction://hlinkshowjump?jump=firstslide"); + assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:nvSpPr/p:cNvPr/a:hlinkClick"_ostr, + "action"_ostr, "ppaction://hlinkshowjump?jump=firstslide"); xmlDocUniquePtr pXmlDoc2 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:nvSpPr/p:cNvPr/a:hlinkClick", "action", - "ppaction://hlinkshowjump?jump=lastslide"); + assertXPath(pXmlDoc2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:nvSpPr/p:cNvPr/a:hlinkClick"_ostr, + "action"_ostr, "ppaction://hlinkshowjump?jump=lastslide"); xmlDocUniquePtr pXmlDoc3 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc3, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:nvSpPr/p:cNvPr/a:hlinkClick", "action", - "ppaction://hlinkshowjump?jump=nextslide"); + assertXPath(pXmlDoc3, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:nvSpPr/p:cNvPr/a:hlinkClick"_ostr, + "action"_ostr, "ppaction://hlinkshowjump?jump=nextslide"); xmlDocUniquePtr pXmlDoc4 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc4, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:nvSpPr/p:cNvPr/a:hlinkClick", "action", - "ppaction://hlinkshowjump?jump=previousslide"); + assertXPath(pXmlDoc4, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:nvSpPr/p:cNvPr/a:hlinkClick"_ostr, + "action"_ostr, "ppaction://hlinkshowjump?jump=previousslide"); xmlDocUniquePtr pXmlDoc5 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc5, "/p:sld/p:cSld/p:spTree/p:sp[5]/p:nvSpPr/p:cNvPr/a:hlinkClick", "action", - "ppaction://hlinksldjump"); + assertXPath(pXmlDoc5, "/p:sld/p:cSld/p:spTree/p:sp[5]/p:nvSpPr/p:cNvPr/a:hlinkClick"_ostr, + "action"_ostr, "ppaction://hlinksldjump"); xmlDocUniquePtr pRelsDoc5 = parseExport("ppt/slides/_rels/slide1.xml.rels"); - assertXPath(pRelsDoc5, "/rels:Relationships/rels:Relationship[@Id='rId1']", "Target", + assertXPath(pRelsDoc5, "/rels:Relationships/rels:Relationship[@Id='rId1']"_ostr, "Target"_ostr, "slide2.xml"); xmlDocUniquePtr pXmlDoc6 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc6, "/p:sld/p:cSld/p:spTree/p:sp[6]/p:nvSpPr/p:cNvPr/a:hlinkClick", "action", - "ppaction://hlinkshowjump?jump=endshow"); + assertXPath(pXmlDoc6, "/p:sld/p:cSld/p:spTree/p:sp[6]/p:nvSpPr/p:cNvPr/a:hlinkClick"_ostr, + "action"_ostr, "ppaction://hlinkshowjump?jump=endshow"); xmlDocUniquePtr pXmlDoc7 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc7, "/p:sld/p:cSld/p:spTree/p:sp[7]/p:nvSpPr/p:cNvPr/a:hlinkClick", "id", - "rId2"); + assertXPath(pXmlDoc7, "/p:sld/p:cSld/p:spTree/p:sp[7]/p:nvSpPr/p:cNvPr/a:hlinkClick"_ostr, + "id"_ostr, "rId2"); xmlDocUniquePtr pRelsDoc7 = parseExport("ppt/slides/_rels/slide1.xml.rels"); - assertXPath(pRelsDoc7, "/rels:Relationships/rels:Relationship[@Id='rId2']", "Target", + assertXPath(pRelsDoc7, "/rels:Relationships/rels:Relationship[@Id='rId2']"_ostr, "Target"_ostr, "http://www.example.com/"); } @@ -267,38 +274,38 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf124232) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc1 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:cNvPr/a:hlinkClick", "action", - "ppaction://hlinkshowjump?jump=lastslide"); + assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:cNvPr/a:hlinkClick"_ostr, + "action"_ostr, "ppaction://hlinkshowjump?jump=lastslide"); xmlDocUniquePtr pXmlDoc2 = parseExport("ppt/slides/slide2.xml"); - assertXPath(pXmlDoc2, "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:cNvPr/a:hlinkClick", "action", - "ppaction://hlinkshowjump?jump=nextslide"); + assertXPath(pXmlDoc2, "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:cNvPr/a:hlinkClick"_ostr, + "action"_ostr, "ppaction://hlinkshowjump?jump=nextslide"); xmlDocUniquePtr pXmlDoc3 = parseExport("ppt/slides/slide3.xml"); - assertXPath(pXmlDoc3, "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:cNvPr/a:hlinkClick", "action", - "ppaction://hlinkshowjump?jump=previousslide"); + assertXPath(pXmlDoc3, "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:cNvPr/a:hlinkClick"_ostr, + "action"_ostr, "ppaction://hlinkshowjump?jump=previousslide"); xmlDocUniquePtr pXmlDoc4 = parseExport("ppt/slides/slide4.xml"); - assertXPath(pXmlDoc4, "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:cNvPr/a:hlinkClick", "id", - "rId1"); + assertXPath(pXmlDoc4, "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:cNvPr/a:hlinkClick"_ostr, + "id"_ostr, "rId1"); xmlDocUniquePtr pRelsDoc4 = parseExport("ppt/slides/_rels/slide4.xml.rels"); - assertXPath(pRelsDoc4, "/rels:Relationships/rels:Relationship[@Id='rId1']", "Target", + assertXPath(pRelsDoc4, "/rels:Relationships/rels:Relationship[@Id='rId1']"_ostr, "Target"_ostr, "http://www.example.com/"); xmlDocUniquePtr pXmlDoc5 = parseExport("ppt/slides/slide5.xml"); - assertXPath(pXmlDoc5, "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:cNvPr/a:hlinkClick", "action", - "ppaction://hlinksldjump"); + assertXPath(pXmlDoc5, "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:cNvPr/a:hlinkClick"_ostr, + "action"_ostr, "ppaction://hlinksldjump"); xmlDocUniquePtr pRelsDoc5 = parseExport("ppt/slides/_rels/slide5.xml.rels"); - assertXPath(pRelsDoc5, "/rels:Relationships/rels:Relationship[@Id='rId1']", "Target", + assertXPath(pRelsDoc5, "/rels:Relationships/rels:Relationship[@Id='rId1']"_ostr, "Target"_ostr, "slide6.xml"); xmlDocUniquePtr pXmlDoc6 = parseExport("ppt/slides/slide6.xml"); - assertXPath(pXmlDoc6, "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:cNvPr/a:hlinkClick", "action", - "ppaction://hlinkshowjump?jump=endshow"); + assertXPath(pXmlDoc6, "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:cNvPr/a:hlinkClick"_ostr, + "action"_ostr, "ppaction://hlinkshowjump?jump=endshow"); xmlDocUniquePtr pXmlDoc7 = parseExport("ppt/slides/slide7.xml"); - assertXPath(pXmlDoc7, "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:cNvPr/a:hlinkClick", "action", - "ppaction://hlinkshowjump?jump=firstslide"); + assertXPath(pXmlDoc7, "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:cNvPr/a:hlinkClick"_ostr, + "action"_ostr, "ppaction://hlinkshowjump?jump=firstslide"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf143624) @@ -308,9 +315,9 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf143624) xmlDocUniquePtr pXmlDoc = parseExport("ppt/presProps.xml"); - assertXPath(pXmlDoc, "/p:presentationPr/p:showPr", "useTimings", "0"); + assertXPath(pXmlDoc, "/p:presentationPr/p:showPr"_ostr, "useTimings"_ostr, "0"); - assertXPath(pXmlDoc, "/p:presentationPr/p:showPr", "showNarration", "1"); + assertXPath(pXmlDoc, "/p:presentationPr/p:showPr"_ostr, "showNarration"_ostr, "1"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf142648) @@ -328,7 +335,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf142648) xmlDocUniquePtr pRelsDoc = parseExport("ppt/slides/_rels/slide2.xml.rels"); - assertXPath(pRelsDoc, "/rels:Relationships/rels:Relationship[@Id='rId1']", "Target", + assertXPath(pRelsDoc, "/rels:Relationships/rels:Relationship[@Id='rId1']"_ostr, "Target"_ostr, "slide1.xml"); } @@ -339,9 +346,9 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf47365) xmlDocUniquePtr pXmlDoc = parseExport("ppt/presProps.xml"); - assertXPath(pXmlDoc, "/p:presentationPr/p:showPr", "loop", "1"); + assertXPath(pXmlDoc, "/p:presentationPr/p:showPr"_ostr, "loop"_ostr, "1"); - assertXPath(pXmlDoc, "/p:presentationPr/p:showPr", "showNarration", "1"); + assertXPath(pXmlDoc, "/p:presentationPr/p:showPr"_ostr, "showNarration"_ostr, "1"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf125071) @@ -351,8 +358,10 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf125071) xmlDocUniquePtr pXmlDoc = parseExport("ppt/presentation.xml"); - assertXPath(pXmlDoc, "/p:presentation/p:custShowLst/p:custShow[1]", "name", "Custom1"); - assertXPath(pXmlDoc, "/p:presentation/p:custShowLst/p:custShow[2]", "name", "Custom2"); + assertXPath(pXmlDoc, "/p:presentation/p:custShowLst/p:custShow[1]"_ostr, "name"_ostr, + "Custom1"); + assertXPath(pXmlDoc, "/p:presentation/p:custShowLst/p:custShow[2]"_ostr, "name"_ostr, + "Custom2"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf54037) @@ -363,13 +372,13 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf54037) xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); xmlDocUniquePtr pRelsDoc = parseExport("ppt/slides/_rels/slide1.xml.rels"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p[1]/a:r/a:rPr/a:hlinkClick", - "action", "ppaction://hlinksldjump"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p[1]/a:r/a:rPr/a:hlinkClick"_ostr, + "action"_ostr, "ppaction://hlinksldjump"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p[2]/a:r/a:rPr/a:hlinkClick", - "action", "ppaction://hlinkshowjump?jump=nextslide"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p[2]/a:r/a:rPr/a:hlinkClick"_ostr, + "action"_ostr, "ppaction://hlinkshowjump?jump=nextslide"); - assertXPath(pRelsDoc, "/rels:Relationships/rels:Relationship[@Id='rId1']", "Target", + assertXPath(pRelsDoc, "/rels:Relationships/rels:Relationship[@Id='rId1']"_ostr, "Target"_ostr, "slide2.xml"); } @@ -1136,16 +1145,16 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf112633) // Check image with artistic effect exists in the slide assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:blip/a:extLst/a:ext/a14:imgProps/" - "a14:imgLayer/a14:imgEffect/a14:artisticPencilGrayscale", - "pencilSize", "80"); + "a14:imgLayer/a14:imgEffect/a14:artisticPencilGrayscale"_ostr, + "pencilSize"_ostr, "80"); // Check there is a relation with the .wdp file that contains the backed up image OUString sEmbedId1 = getXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:blip/a:extLst/" - "a:ext/a14:imgProps/a14:imgLayer", - "embed"); + "a:ext/a14:imgProps/a14:imgLayer"_ostr, + "embed"_ostr); OUString sXmlPath = "/rels:Relationships/rels:Relationship[@Id='" + sEmbedId1 + "']"; - assertXPath(pRelsDoc, OUStringToOString(sXmlPath, RTL_TEXTENCODING_UTF8), "Target", + assertXPath(pRelsDoc, OUStringToOString(sXmlPath, RTL_TEXTENCODING_UTF8), "Target"_ostr, "../media/hdphoto1.wdp"); // Check the .wdp file exists @@ -1162,10 +1171,12 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf128952) xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:xfrm/a:off", "x", "360"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:xfrm/a:off", "y", "-360"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:xfrm/a:ext", "cx", "1919880"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:xfrm/a:ext", "cy", "1462680"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:xfrm/a:off"_ostr, "x"_ostr, "360"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:xfrm/a:off"_ostr, "y"_ostr, "-360"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:xfrm/a:ext"_ostr, "cx"_ostr, + "1919880"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:xfrm/a:ext"_ostr, "cy"_ostr, + "1462680"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf127090) @@ -1175,7 +1186,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf127090) xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:bodyPr", "rot", "-5400000"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:bodyPr"_ostr, "rot"_ostr, + "-5400000"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testCustomXml) @@ -1190,8 +1202,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testCustomXml) CPPUNIT_ASSERT(pRelsDoc); // Check there is a relation to itemProps1.xml. - assertXPath(pRelsDoc, "/rels:Relationships/rels:Relationship", 1); - assertXPath(pRelsDoc, "/rels:Relationships/rels:Relationship[@Id='rId1']", "Target", + assertXPath(pRelsDoc, "/rels:Relationships/rels:Relationship"_ostr, 1); + assertXPath(pRelsDoc, "/rels:Relationships/rels:Relationship[@Id='rId1']"_ostr, "Target"_ostr, "itemProps1.xml"); std::unique_ptr<SvStream> pStream = parseExportStream(maTempFile.GetURL(), "ddp/ddpfile.xen"); @@ -1330,7 +1342,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testRoundtripPrstDash) for (sal_uInt16 i = 0; i < 10; i++) { OString sXmlPath = sStart + OString::number(i + 1) + sEnd; - OUString sResaved = getXPath(pXmlDoc, sXmlPath, "val"); + OUString sResaved = getXPath(pXmlDoc, sXmlPath, "val"_ostr); CPPUNIT_ASSERT_EQUAL_MESSAGE("wrong prstDash", sOriginal[i], sResaved); } @@ -1359,7 +1371,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testDashOnHairline) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:ln/a:custDash/a:ds", 11); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:ln/a:custDash/a:ds"_ostr, 11); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testNarrationNonMediaShape) @@ -1386,7 +1398,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testCustomshapeBitmapfillSrcrect) // i.e. <a:srcRect> was exported as <a:fillRect> in <a:stretch>, which made part of the image // invisible. - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:blipFill/a:srcRect"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:blipFill/a:srcRect"_ostr); // tdf#134210 // Original values of attribute of l and r in xml files: <a:srcRect l="4393" r="4393"/> @@ -1395,10 +1407,14 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testCustomshapeBitmapfillSrcrect) // future if we add core feature to LibreOffice, we should change the control value with // 4393. - assertXPathNoAttribute(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:blipFill/a:srcRect", "l"); - assertXPathNoAttribute(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:blipFill/a:srcRect", "r"); - assertXPathNoAttribute(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:blipFill/a:srcRect", "t"); - assertXPathNoAttribute(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:blipFill/a:srcRect", "b"); + assertXPathNoAttribute(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:blipFill/a:srcRect"_ostr, + "l"_ostr); + assertXPathNoAttribute(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:blipFill/a:srcRect"_ostr, + "r"_ostr); + assertXPathNoAttribute(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:blipFill/a:srcRect"_ostr, + "t"_ostr); + assertXPathNoAttribute(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:blipFill/a:srcRect"_ostr, + "b"_ostr); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf100348FontworkBitmapFill) @@ -1411,7 +1427,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf100348FontworkBitmapFill) xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); 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", "ffbf00"); + assertXPath(pXmlDoc, sPathStart + "/a:ln/a:solidFill/a:srgbClr", "val"_ostr, "ffbf00"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf100348FontworkGradientGlow) @@ -1423,9 +1439,10 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf100348FontworkGradientGlow) // Without the patch, fill was black and no glow applied. xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); 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", "8d281e"); - assertXPath(pXmlDoc, sPathStart + "/a:effectLst/a:glow", "rad", "63360"); - assertXPath(pXmlDoc, sPathStart + "/a:effectLst/a:glow/a:srgbClr", "val", "ff4500"); + assertXPath(pXmlDoc, sPathStart + "/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr", "val"_ostr, + "8d281e"); + assertXPath(pXmlDoc, sPathStart + "/a:effectLst/a:glow", "rad"_ostr, "63360"); + assertXPath(pXmlDoc, sPathStart + "/a:effectLst/a:glow/a:srgbClr", "val"_ostr, "ff4500"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf128345FullTransparentGradient) @@ -1435,7 +1452,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf128345FullTransparentGradient) // Make sure the shape has no fill. Without the patch, fill was solid red. xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc, "//p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:noFill"); + assertXPath(pXmlDoc, "//p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:noFill"_ostr); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf128345GradientLinear) @@ -1446,14 +1463,14 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf128345GradientLinear) // Make sure the shape has a lin fill. Without the patch, fill was solid red. xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); static constexpr OString sPathStart("//p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:gradFill"_ostr); - assertXPath(pXmlDoc, sPathStart + "/a:lin", "ang", "3600000"); + assertXPath(pXmlDoc, sPathStart + "/a:lin", "ang"_ostr, "3600000"); assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs", 2); - assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[1]", "pos", "25000"); - assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[1]/a:srgbClr", "val", "ff0000"); - assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[1]/a:srgbClr/a:alpha", "val", "20000"); - assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]", "pos", "100000"); - assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]/a:srgbClr", "val", "ff0000"); - assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]/a:srgbClr/a:alpha", "val", "80000"); + assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[1]", "pos"_ostr, "25000"); + assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[1]/a:srgbClr", "val"_ostr, "ff0000"); + assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[1]/a:srgbClr/a:alpha", "val"_ostr, "20000"); + assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]", "pos"_ostr, "100000"); + assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]/a:srgbClr", "val"_ostr, "ff0000"); + assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]/a:srgbClr/a:alpha", "val"_ostr, "80000"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf128345GradientRadial) @@ -1466,10 +1483,10 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf128345GradientRadial) xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); 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", "ff0000"); + assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[1]/a:srgbClr", "val"_ostr, "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", "ffffff"); - assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]/a:srgbClr/a:alpha", "val", "0"); + assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]/a:srgbClr", "val"_ostr, "ffffff"); + assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]/a:srgbClr/a:alpha", "val"_ostr, "0"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf128345GradientAxial) @@ -1506,8 +1523,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf134969TransparencyOnColorGradien xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); 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", "60000"); - assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]/a:srgbClr/a:alpha", "val", "60000"); + assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[1]/a:srgbClr/a:alpha", "val"_ostr, "60000"); + assertXPath(pXmlDoc, sPathStart + "/a:gsLst/a:gs[2]/a:srgbClr/a:alpha", "val"_ostr, "60000"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testArcTo) @@ -1517,10 +1534,10 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testArcTo) xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); static constexpr OString sPath("//a:custGeom/a:pathLst/a:path/a:arcTo"_ostr); - assertXPath(pXmlDoc, sPath, "wR", "3"); - assertXPath(pXmlDoc, sPath, "hR", "3"); - assertXPath(pXmlDoc, sPath, "stAng", "1800000"); - assertXPath(pXmlDoc, sPath, "swAng", "2700000"); + assertXPath(pXmlDoc, sPath, "wR"_ostr, "3"); + assertXPath(pXmlDoc, sPath, "hR"_ostr, "3"); + assertXPath(pXmlDoc, sPath, "stAng"_ostr, "1800000"); + assertXPath(pXmlDoc, sPath, "swAng"_ostr, "2700000"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testNarrationMimeType) @@ -1533,17 +1550,17 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testNarrationMimeType) // - Actual : application/vnd.sun.star.media // i.e. the mime type of the narration was incorrect. assertXPath(pXmlDoc, - "/ContentType:Types/ContentType:Override[@PartName='/ppt/media/media1.m4a']", - "ContentType", "audio/mp4"); + "/ContentType:Types/ContentType:Override[@PartName='/ppt/media/media1.m4a']"_ostr, + "ContentType"_ostr, "audio/mp4"); // Check if the bitmap of the media shape is exported correctly. xmlDocUniquePtr pSlideDoc = parseExport("ppt/slides/slide1.xml"); OUString aImageId - = getXPath(pSlideDoc, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:blip", "embed"); + = getXPath(pSlideDoc, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:blip"_ostr, "embed"_ostr); xmlDocUniquePtr pRelsDoc = parseExport("ppt/slides/_rels/slide1.xml.rels"); OUString aImagePath = "/rels:Relationships/rels:Relationship[@Id='" + aImageId + "']"; // Something like ../media/image2.png. - OUString aImageStreamName = getXPath(pRelsDoc, aImagePath.toUtf8(), "Target"); + OUString aImageStreamName = getXPath(pRelsDoc, aImagePath.toUtf8(), "Target"_ostr); OUString aImageAbsName = rtl::Uri::convertRelToAbs("file:///ppt/slides/", aImageStreamName); // Something like ppt/media/image2.png. OUString aImageRelName; @@ -1561,28 +1578,28 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testNarrationMimeType) // - Expected: 1 // - Actual : 0 // i.e. p:blipFill was missing its a:stretch child element, so the shape was invisible. - assertXPath(pSlideDoc, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:stretch/a:fillRect", 1); + assertXPath(pSlideDoc, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:stretch/a:fillRect"_ostr, 1); // Without the accompanying fix in place, this test would have failed with: // - ... no attribute 'cmd' exist // i.e. '<p:cmd type="call">' was written instead of '<p:cmd type="call" cmd="playFrom(0.0)">'. - assertXPath(pSlideDoc, "//p:cmd", "cmd", "playFrom(0.0)"); + assertXPath(pSlideDoc, "//p:cmd"_ostr, "cmd"_ostr, "playFrom(0.0)"); // Without the accompanying fix in place, this test would have failed with: // - Expected: 1 // - Actual : 0 // i.e. <p:childTnLst> had no <p:audio> children, the whole audio animation node was lost. - assertXPath(pSlideDoc, "//p:childTnLst/p:audio/p:cMediaNode", 1); + assertXPath(pSlideDoc, "//p:childTnLst/p:audio/p:cMediaNode"_ostr, 1); // Without the accompanying fix in place, this test would have failed with: // - ... no attribute 'showWhenStopped' exist // i.e. <p:cMediaNode> had the default visibility -> bitmap was visible during slideshow. - assertXPath(pSlideDoc, "//p:childTnLst/p:audio/p:cMediaNode", "showWhenStopped", "0"); + assertXPath(pSlideDoc, "//p:childTnLst/p:audio/p:cMediaNode"_ostr, "showWhenStopped"_ostr, "0"); // Without the accompanying fix in place, this test would have failed with: // - ... no attribute 'isNarration' exist // i.e. <p:audio> was not a narration -> could not mass-remove narrations on the UI. - assertXPath(pSlideDoc, "//p:childTnLst/p:audio", "isNarration", "1"); + assertXPath(pSlideDoc, "//p:childTnLst/p:audio"_ostr, "isNarration"_ostr, "1"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf150316) @@ -1591,7 +1608,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf150316) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:p/a:pPr", "indent", "-343080"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:p/a:pPr"_ostr, "indent"_ostr, + "-343080"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf140865Wordart3D) @@ -1602,14 +1620,14 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf140865Wordart3D) // without the fix in place a:sp3d was lost on round trip, and so extrusion was lost. constexpr OString sPathStart("//p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:bodyPr"_ostr); - assertXPath(pXmlDoc, sPathStart + "/a:sp3d", "extrusionH", "342900"); - assertXPath(pXmlDoc, sPathStart + "/a:sp3d", "contourW", "12700"); - assertXPath(pXmlDoc, sPathStart + "/a:sp3d/a:bevelT", "w", "114300"); - assertXPath(pXmlDoc, sPathStart + "/a:sp3d/a:bevelT", "h", "38100"); - assertXPath(pXmlDoc, sPathStart + "/a:sp3d/a:bevelT", "prst", "softRound"); - assertXPath(pXmlDoc, sPathStart + "/a:sp3d/a:bevelB", "h", "152400"); - assertXPath(pXmlDoc, sPathStart + "/a:sp3d/a:extrusionClr/a:srgbClr", "val", "990000"); - assertXPath(pXmlDoc, sPathStart + "/a:sp3d/a:contourClr/a:srgbClr", "val", "009876"); + assertXPath(pXmlDoc, sPathStart + "/a:sp3d", "extrusionH"_ostr, "342900"); + assertXPath(pXmlDoc, sPathStart + "/a:sp3d", "contourW"_ostr, "12700"); + assertXPath(pXmlDoc, sPathStart + "/a:sp3d/a:bevelT", "w"_ostr, "114300"); + assertXPath(pXmlDoc, sPathStart + "/a:sp3d/a:bevelT", "h"_ostr, "38100"); + assertXPath(pXmlDoc, sPathStart + "/a:sp3d/a:bevelT", "prst"_ostr, "softRound"); + assertXPath(pXmlDoc, sPathStart + "/a:sp3d/a:bevelB", "h"_ostr, "152400"); + assertXPath(pXmlDoc, sPathStart + "/a:sp3d/a:extrusionClr/a:srgbClr", "val"_ostr, "990000"); + assertXPath(pXmlDoc, sPathStart + "/a:sp3d/a:contourClr/a:srgbClr", "val"_ostr, "009876"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf124457) @@ -1619,15 +1637,17 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf124457) xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc, - "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/" - "p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par[1]/p:cTn", - "repeatCount", "3000"); + assertXPath( + pXmlDoc, + "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/" + "p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par[1]/p:cTn"_ostr, + "repeatCount"_ostr, "3000"); - assertXPath(pXmlDoc, - "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/" - "p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par[2]/p:cTn", - "repeatCount", "indefinite"); + assertXPath( + pXmlDoc, + "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/" + "p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par[2]/p:cTn"_ostr, + "repeatCount"_ostr, "indefinite"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf143126) @@ -1637,9 +1657,9 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf143126) xmlDocUniquePtr pXmlDoc = parseExport("ppt/presProps.xml"); - assertXPath(pXmlDoc, "/p:presentationPr/p:showPr", "showNarration", "1"); - assertXPath(pXmlDoc, "/p:presentationPr/p:showPr/p:sldRg", "st", "2"); - assertXPath(pXmlDoc, "/p:presentationPr/p:showPr/p:sldRg", "end", "3"); + assertXPath(pXmlDoc, "/p:presentationPr/p:showPr"_ostr, "showNarration"_ostr, "1"); + assertXPath(pXmlDoc, "/p:presentationPr/p:showPr/p:sldRg"_ostr, "st"_ostr, "2"); + assertXPath(pXmlDoc, "/p:presentationPr/p:showPr/p:sldRg"_ostr, "end"_ostr, "3"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf143129) @@ -1649,8 +1669,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf143129) xmlDocUniquePtr pXmlDoc = parseExport("ppt/presProps.xml"); - assertXPath(pXmlDoc, "/p:presentationPr/p:showPr", "showNarration", "1"); - assertXPath(pXmlDoc, "/p:presentationPr/p:showPr/p:custShow", "id", "0"); + assertXPath(pXmlDoc, "/p:presentationPr/p:showPr"_ostr, "showNarration"_ostr, "1"); + assertXPath(pXmlDoc, "/p:presentationPr/p:showPr/p:custShow"_ostr, "id"_ostr, "0"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf118045) @@ -1659,8 +1679,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf118045) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc1 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:pPr/a:lnSpc/a:spcPct", "val", - "110000"); + assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:pPr/a:lnSpc/a:spcPct"_ostr, + "val"_ostr, "110000"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf137675) @@ -1669,8 +1689,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf137675) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:custGeom/a:pathLst/a:path", "fill", - "none"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:custGeom/a:pathLst/a:path"_ostr, + "fill"_ostr, "none"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf151134) @@ -1679,7 +1699,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest1, testTdf151134) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr", "lIns", "91440"); + assertXPath(pXmlDoc, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr"_ostr, "lIns"_ostr, + "91440"); } CPPUNIT_PLUGIN_IMPLEMENT(); diff --git a/sd/qa/unit/export-tests-ooxml2.cxx b/sd/qa/unit/export-tests-ooxml2.cxx index 30301c6e4c16..0583233c9f06 100644 --- a/sd/qa/unit/export-tests-ooxml2.cxx +++ b/sd/qa/unit/export-tests-ooxml2.cxx @@ -84,19 +84,29 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testRepeatBitmapMode) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent1 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile", "tx", "1269669"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile", "ty", "186051"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile", "sx", "100000"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile", "sy", "100000"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile", "algn", "tr"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile"_ostr, "tx"_ostr, + "1269669"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile"_ostr, "ty"_ostr, + "186051"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile"_ostr, "sx"_ostr, + "100000"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile"_ostr, "sy"_ostr, + "100000"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile"_ostr, "algn"_ostr, + "tr"); // if the "Scale" setting is checked in the images settings dialog. xmlDocUniquePtr pXmlDocContent2 = parseExport("ppt/slides/slide2.xml"); - assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile", "tx", "0"); - assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile", "ty", "0"); - assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile", "sx", "682760"); - assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile", "sy", "639983"); - assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile", "algn", "ctr"); + assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile"_ostr, "tx"_ostr, + "0"); + assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile"_ostr, "ty"_ostr, + "0"); + assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile"_ostr, "sx"_ostr, + "682760"); + assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile"_ostr, "sy"_ostr, + "639983"); + assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:tile"_ostr, "algn"_ostr, + "ctr"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf153107) @@ -106,55 +116,55 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf153107) // placeholder xmlDocUniquePtr pXmlDocContent1 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:blipFill/a:tile", "tx", - "1879200"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:blipFill/a:tile", "ty", - "83628"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:blipFill/a:tile", "sx", - "264773"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:blipFill/a:tile", "sy", - "91428"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:blipFill/a:tile", "algn", - "ctr"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:blipFill/a:tile"_ostr, + "tx"_ostr, "1879200"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:blipFill/a:tile"_ostr, + "ty"_ostr, "83628"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:blipFill/a:tile"_ostr, + "sx"_ostr, "264773"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:blipFill/a:tile"_ostr, + "sy"_ostr, "91428"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:blipFill/a:tile"_ostr, + "algn"_ostr, "ctr"); // custom shape xmlDocUniquePtr pXmlDocContent2 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:blipFill/a:tile", "tx", - "198000"); - assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:blipFill/a:tile", "ty", - "324000"); - assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:blipFill/a:tile", "sx", - "69743"); - assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:blipFill/a:tile", "sy", - "78709"); - assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:blipFill/a:tile", "algn", - "tl"); + assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:blipFill/a:tile"_ostr, + "tx"_ostr, "198000"); + assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:blipFill/a:tile"_ostr, + "ty"_ostr, "324000"); + assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:blipFill/a:tile"_ostr, + "sx"_ostr, "69743"); + assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:blipFill/a:tile"_ostr, + "sy"_ostr, "78709"); + assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:blipFill/a:tile"_ostr, + "algn"_ostr, "tl"); // polygon xmlDocUniquePtr pXmlDocContent3 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent3, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:blipFill/a:tile", "tx", - "2073600"); - assertXPath(pXmlDocContent3, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:blipFill/a:tile", "ty", - "221760"); - assertXPath(pXmlDocContent3, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:blipFill/a:tile", "sx", - "182602"); - assertXPath(pXmlDocContent3, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:blipFill/a:tile", "sy", - "86580"); - assertXPath(pXmlDocContent3, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:blipFill/a:tile", "algn", - "ctr"); + assertXPath(pXmlDocContent3, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:blipFill/a:tile"_ostr, + "tx"_ostr, "2073600"); + assertXPath(pXmlDocContent3, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:blipFill/a:tile"_ostr, + "ty"_ostr, "221760"); + assertXPath(pXmlDocContent3, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:blipFill/a:tile"_ostr, + "sx"_ostr, "182602"); + assertXPath(pXmlDocContent3, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:blipFill/a:tile"_ostr, + "sy"_ostr, "86580"); + assertXPath(pXmlDocContent3, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:blipFill/a:tile"_ostr, + "algn"_ostr, "ctr"); // textbox xmlDocUniquePtr pXmlDocContent4 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent4, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:spPr/a:blipFill/a:tile", "tx", - "662400"); - assertXPath(pXmlDocContent4, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:spPr/a:blipFill/a:tile", "ty", - "760320"); - assertXPath(pXmlDocContent4, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:spPr/a:blipFill/a:tile", "sx", - "202891"); - assertXPath(pXmlDocContent4, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:spPr/a:blipFill/a:tile", "sy", - "129870"); - assertXPath(pXmlDocContent4, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:spPr/a:blipFill/a:tile", "algn", - "tl"); + assertXPath(pXmlDocContent4, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:spPr/a:blipFill/a:tile"_ostr, + "tx"_ostr, "662400"); + assertXPath(pXmlDocContent4, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:spPr/a:blipFill/a:tile"_ostr, + "ty"_ostr, "760320"); + assertXPath(pXmlDocContent4, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:spPr/a:blipFill/a:tile"_ostr, + "sx"_ostr, "202891"); + assertXPath(pXmlDocContent4, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:spPr/a:blipFill/a:tile"_ostr, + "sy"_ostr, "129870"); + assertXPath(pXmlDocContent4, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:spPr/a:blipFill/a:tile"_ostr, + "algn"_ostr, "tl"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf142291) @@ -165,24 +175,24 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf142291) xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/a:tbl/a:tr/a:tc[1]/" - "a:tcPr/a:lnL/a:prstDash", - "val", "sysDashDotDot"); + "a:tcPr/a:lnL/a:prstDash"_ostr, + "val"_ostr, "sysDashDotDot"); assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/a:tbl/a:tr/a:tc[1]/" - "a:tcPr/a:lnR/a:prstDash", - "val", "dot"); + "a:tcPr/a:lnR/a:prstDash"_ostr, + "val"_ostr, "dot"); assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/a:tbl/a:tr/a:tc[1]/" - "a:tcPr/a:lnT/a:prstDash", - "val", "solid"); + "a:tcPr/a:lnT/a:prstDash"_ostr, + "val"_ostr, "solid"); assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/a:tbl/a:tr/a:tc[1]/" - "a:tcPr/a:lnB/a:prstDash", - "val", "dash"); + "a:tcPr/a:lnB/a:prstDash"_ostr, + "val"_ostr, "dash"); assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/a:tbl/a:tr/a:tc[2]/" - "a:tcPr/a:lnR/a:prstDash", - "val", "dashDot"); + "a:tcPr/a:lnR/a:prstDash"_ostr, + "val"_ostr, "dashDot"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf151492) @@ -191,8 +201,9 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf151492) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:cxnSp/p:nvCxnSpPr/p:cNvCxnSpPr/a:stCxn", - "idx", "0"); + assertXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:cxnSp/p:nvCxnSpPr/p:cNvCxnSpPr/a:stCxn"_ostr, "idx"_ostr, + "0"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf149697) @@ -202,15 +213,19 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf149697) xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:cxnSp[1]/p:nvCxnSpPr/p:cNvCxnSpPr/a:stCxn", "idx", "5"); + "/p:sld/p:cSld/p:spTree/p:cxnSp[1]/p:nvCxnSpPr/p:cNvCxnSpPr/a:stCxn"_ostr, + "idx"_ostr, "5"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:cxnSp[1]/p:nvCxnSpPr/p:cNvCxnSpPr/a:endCxn", "idx", "4"); + "/p:sld/p:cSld/p:spTree/p:cxnSp[1]/p:nvCxnSpPr/p:cNvCxnSpPr/a:endCxn"_ostr, + "idx"_ostr, "4"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:cxnSp[2]/p:nvCxnSpPr/p:cNvCxnSpPr/a:stCxn", "idx", "3"); + "/p:sld/p:cSld/p:spTree/p:cxnSp[2]/p:nvCxnSpPr/p:cNvCxnSpPr/a:stCxn"_ostr, + "idx"_ostr, "3"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:cxnSp[2]/p:nvCxnSpPr/p:cNvCxnSpPr/a:endCxn", "idx", "1"); + "/p:sld/p:cSld/p:spTree/p:cxnSp[2]/p:nvCxnSpPr/p:cNvCxnSpPr/a:endCxn"_ostr, + "idx"_ostr, "1"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf149126) @@ -219,7 +234,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf149126) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:prstGeom", "prst", + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:prstGeom"_ostr, "prst"_ostr, "triangle"); } @@ -231,18 +246,18 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf131905) xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); assertXPath( pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/a:tbl/a:tr[1]/a:tc/a:tcPr", - "anchor", "t"); + "/p:sld/p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/a:tbl/a:tr[1]/a:tc/a:tcPr"_ostr, + "anchor"_ostr, "t"); assertXPath( pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/a:tbl/a:tr[2]/a:tc/a:tcPr", - "anchor", "ctr"); + "/p:sld/p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/a:tbl/a:tr[2]/a:tc/a:tcPr"_ostr, + "anchor"_ostr, "ctr"); assertXPath( pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/a:tbl/a:tr[3]/a:tc/a:tcPr", - "anchor", "b"); + "/p:sld/p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/a:tbl/a:tr[3]/a:tc/a:tcPr"_ostr, + "anchor"_ostr, "b"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf93883) @@ -266,19 +281,20 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testBnc822341) xmlDocUniquePtr pXmlDocCT = parseExport("[Content_Types].xml"); assertXPath(pXmlDocCT, "/ContentType:Types/ContentType:Override[@ContentType='application/" - "vnd.openxmlformats-officedocument.wordprocessingml.document']", - "PartName", "/ppt/embeddings/oleObject1.docx"); + "vnd.openxmlformats-officedocument.wordprocessingml.document']"_ostr, + "PartName"_ostr, "/ppt/embeddings/oleObject1.docx"); xmlDocUniquePtr pXmlDocRels = parseExport("ppt/slides/_rels/slide1.xml.rels"); assertXPath( pXmlDocRels, - "/rels:Relationships/rels:Relationship[@Target='../embeddings/oleObject1.docx']", - "Type", "http://schemas.openxmlformats.org/officeDocument/2006/relationships/package"); + "/rels:Relationships/rels:Relationship[@Target='../embeddings/oleObject1.docx']"_ostr, + "Type"_ostr, + "http://schemas.openxmlformats.org/officeDocument/2006/relationships/package"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/p:oleObj", - "progId", "Word.Document.12"); + "/p:sld/p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/p:oleObj"_ostr, + "progId"_ostr, "Word.Document.12"); const SdrPage* pPage = GetPage(1); @@ -294,19 +310,20 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testBnc822341) xmlDocUniquePtr pXmlDocCT = parseExport("[Content_Types].xml"); assertXPath(pXmlDocCT, "/ContentType:Types/ContentType:Override[@ContentType='application/" - "vnd.openxmlformats-officedocument.wordprocessingml.document']", - "PartName", "/ppt/embeddings/oleObject1.docx"); + "vnd.openxmlformats-officedocument.wordprocessingml.document']"_ostr, + "PartName"_ostr, "/ppt/embeddings/oleObject1.docx"); xmlDocUniquePtr pXmlDocRels = parseExport("ppt/slides/_rels/slide1.xml.rels"); assertXPath( pXmlDocRels, - "/rels:Relationships/rels:Relationship[@Target='../embeddings/oleObject1.docx']", - "Type", "http://schemas.openxmlformats.org/officeDocument/2006/relationships/package"); + "/rels:Relationships/rels:Relationship[@Target='../embeddings/oleObject1.docx']"_ostr, + "Type"_ostr, + "http://schemas.openxmlformats.org/officeDocument/2006/relationships/package"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/p:oleObj", - "progId", "Word.Document.12"); + "/p:sld/p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/p:oleObj"_ostr, + "progId"_ostr, "Word.Document.12"); const SdrPage* pPage = GetPage(1); @@ -325,11 +342,11 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testMathObject) // Export an LO specific ole object (imported from an ODP document) { xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/mc:AlternateContent/mc:Choice", - "Requires", "a14"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/mc:AlternateContent/mc:Choice"_ostr, + "Requires"_ostr, "a14"); assertXPathContent(pXmlDocContent, "/p:sld/p:cSld/p:spTree/mc:AlternateContent/mc:Choice/p:sp/p:txBody/a:p/" - "a14:m/m:oMath/m:r[1]/m:t", + "a14:m/m:oMath/m:r[1]/m:t"_ostr, "a"); const SdrPage* pPage = GetPage(1); @@ -343,11 +360,11 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testMathObject) // Export an MS specific ole object (imported from a PPTX document) { xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/mc:AlternateContent/mc:Choice", - "Requires", "a14"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/mc:AlternateContent/mc:Choice"_ostr, + "Requires"_ostr, "a14"); assertXPathContent(pXmlDocContent, "/p:sld/p:cSld/p:spTree/mc:AlternateContent/mc:Choice/p:sp/p:txBody/a:p/" - "a14:m/m:oMath/m:r[1]/m:t", + "a14:m/m:oMath/m:r[1]/m:t"_ostr, "a"); const SdrPage* pPage = GetPage(1); @@ -366,11 +383,11 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testMathObjectPPT2010) // Export an MS specific ole object (imported from a PPTX document) { xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/mc:AlternateContent/mc:Choice", - "Requires", "a14"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/mc:AlternateContent/mc:Choice"_ostr, + "Requires"_ostr, "a14"); assertXPathContent(pXmlDocContent, "/p:sld/p:cSld/p:spTree/mc:AlternateContent/mc:Choice/p:sp/p:txBody/a:p/" - "a14:m/m:oMath/m:sSup/m:e/m:r[1]/m:t", + "a14:m/m:oMath/m:sSup/m:e/m:r[1]/m:t"_ostr, u"\U0001D44E"_ustr); // non-BMP char const SdrPage* pPage = GetPage(1); @@ -973,7 +990,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf59046) createSdImpressDoc("odp/tdf59046.odp"); save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocRels = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocRels, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:custGeom/a:pathLst/a:path", 1); + assertXPath(pXmlDocRels, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:custGeom/a:pathLst/a:path"_ostr, + 1); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf133502) @@ -982,11 +1000,11 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf133502) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocRels = parseExport("ppt/comments/comment1.xml"); - assertXPathContent(pXmlDocRels, "/p:cmLst/p:cm/p:text", "Test for creator-initials"); + assertXPathContent(pXmlDocRels, "/p:cmLst/p:cm/p:text"_ostr, "Test for creator-initials"); // Without the fix in place, the comment position would have been 0,0 - assertXPath(pXmlDocRels, "/p:cmLst/p:cm/p:pos", "x", "2032"); - assertXPath(pXmlDocRels, "/p:cmLst/p:cm/p:pos", "y", "1029"); + assertXPath(pXmlDocRels, "/p:cmLst/p:cm/p:pos"_ostr, "x"_ostr, "2032"); + assertXPath(pXmlDocRels, "/p:cmLst/p:cm/p:pos"_ostr, "y"_ostr, "1029"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf105739) @@ -1057,8 +1075,9 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testPptmContentType) // Assert that the content type is the one of PPTM xmlDocUniquePtr pXmlContentType = parseExport("[Content_Types].xml"); assertXPath(pXmlContentType, - "/ContentType:Types/ContentType:Override[@PartName='/ppt/presentation.xml']", - "ContentType", "application/vnd.ms-powerpoint.presentation.macroEnabled.main+xml"); + "/ContentType:Types/ContentType:Override[@PartName='/ppt/presentation.xml']"_ostr, + "ContentType"_ostr, + "application/vnd.ms-powerpoint.presentation.macroEnabled.main+xml"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf111798) @@ -1079,20 +1098,20 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf111798) const OString sSpPr = "/p:sld/p:cSld/p:spTree/p:sp[" + OString::number(nShapeIndex + 1) + "]/p:spPr"; const OString sXfrm = sSpPr + "/a:xfrm"; - assertXPath(pXmlDoc, sXfrm, "rot", data[nShapeIndex][nDataIndex++]); + assertXPath(pXmlDoc, sXfrm, "rot"_ostr, data[nShapeIndex][nDataIndex++]); const OString sOff = sXfrm + "/a:off"; - assertXPath(pXmlDoc, sOff, "x", data[nShapeIndex][nDataIndex++]); - assertXPath(pXmlDoc, sOff, "y", data[nShapeIndex][nDataIndex++]); + assertXPath(pXmlDoc, sOff, "x"_ostr, data[nShapeIndex][nDataIndex++]); + assertXPath(pXmlDoc, sOff, "y"_ostr, data[nShapeIndex][nDataIndex++]); const OString sExt = sXfrm + "/a:ext"; - assertXPath(pXmlDoc, sExt, "cx", data[nShapeIndex][nDataIndex++]); - assertXPath(pXmlDoc, sExt, "cy", data[nShapeIndex][nDataIndex++]); + assertXPath(pXmlDoc, sExt, "cx"_ostr, data[nShapeIndex][nDataIndex++]); + assertXPath(pXmlDoc, sExt, "cy"_ostr, data[nShapeIndex][nDataIndex++]); while (nDataIndex < SAL_N_ELEMENTS(data[nShapeIndex])) { const OString sGd = sSpPr + "/a:prstGeom/a:avLst/a:" + data[nShapeIndex][nDataIndex++].toUtf8() + ""; - assertXPath(pXmlDoc, sGd, "name", data[nShapeIndex][nDataIndex++]); - assertXPath(pXmlDoc, sGd, "fmla", data[nShapeIndex][nDataIndex++]); + assertXPath(pXmlDoc, sGd, "name"_ostr, data[nShapeIndex][nDataIndex++]); + assertXPath(pXmlDoc, sGd, "fmla"_ostr, data[nShapeIndex][nDataIndex++]); } } } @@ -1116,10 +1135,11 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf111863) // check that transition attribute didn't change from 'out' to 'in' xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, - "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/p:par/" - "p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:animEffect", - "transition", "out"); + assertXPath( + pXmlDocContent, + "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/p:par/" + "p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:animEffect"_ostr, + "transition"_ostr, "out"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf111518) @@ -1131,8 +1151,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf111518) OUString sActual = getXPath(pXmlDocRels, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/" "p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/" - "p:par/p:cTn/p:childTnLst/p:animMotion", - "path"); + "p:par/p:cTn/p:childTnLst/p:animMotion"_ostr, + "path"_ostr); CPPUNIT_ASSERT_MOTIONPATH(u"M -3.54167E-6 -4.81481E-6 L 0.39037 -0.00069 E", sActual); } @@ -1142,49 +1162,49 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf100387) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn", - "dur", "indefinite"); + assertXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn"_ostr, + "dur"_ostr, "indefinite"); assertXPath( pXmlDocContent, - "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/p:par[1]/p:cTn", - "fill", "hold"); + "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/p:par[1]/p:cTn"_ostr, + "fill"_ostr, "hold"); assertXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/" - "p:par[1]/p:cTn/p:childTnLst/p:par/p:cTn", - "fill", "hold"); + "p:par[1]/p:cTn/p:childTnLst/p:par/p:cTn"_ostr, + "fill"_ostr, "hold"); assertXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/p:par[1]" "/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:set/" - "p:cBhvr/p:tgtEl/p:spTgt/p:txEl/p:pRg", - "st", "0"); + "p:cBhvr/p:tgtEl/p:spTgt/p:txEl/p:pRg"_ostr, + "st"_ostr, "0"); assertXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/p:par[1]" "/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:set/" - "p:cBhvr/p:tgtEl/p:spTgt/p:txEl/p:pRg", - "end", "0"); + "p:cBhvr/p:tgtEl/p:spTgt/p:txEl/p:pRg"_ostr, + "end"_ostr, "0"); assertXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/p:par[2]" "/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:set/" - "p:cBhvr/p:tgtEl/p:spTgt/p:txEl/p:pRg", - "st", "1"); + "p:cBhvr/p:tgtEl/p:spTgt/p:txEl/p:pRg"_ostr, + "st"_ostr, "1"); assertXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/p:par[2]" "/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:set/" - "p:cBhvr/p:tgtEl/p:spTgt/p:txEl/p:pRg", - "end", "1"); + "p:cBhvr/p:tgtEl/p:spTgt/p:txEl/p:pRg"_ostr, + "end"_ostr, "1"); assertXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/p:par[3]" "/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:set/" - "p:cBhvr/p:tgtEl/p:spTgt/p:txEl/p:pRg", - "st", "2"); + "p:cBhvr/p:tgtEl/p:spTgt/p:txEl/p:pRg"_ostr, + "st"_ostr, "2"); assertXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/p:par[3]" "/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:set/" - "p:cBhvr/p:tgtEl/p:spTgt/p:txEl/p:pRg", - "end", "2"); + "p:cBhvr/p:tgtEl/p:spTgt/p:txEl/p:pRg"_ostr, + "end"_ostr, "2"); } // tdf#126746 Add support for Line Caps import and export @@ -1193,46 +1213,56 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testClosingShapesAndLineCaps) createSdImpressDoc("odp/closed-shapes.odp"); save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); + assertXPath( + pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:custGeom/a:pathLst/a:path/a:moveTo/a:pt"_ostr, 1); + assertXPath( + pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:custGeom/a:pathLst/a:path/a:lnTo[1]/a:pt"_ostr, 1); + assertXPath( + pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:custGeom/a:pathLst/a:path/a:lnTo[2]/a:pt"_ostr, 1); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:custGeom/a:pathLst/a:path/a:moveTo/a:pt", - 1); - assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:custGeom/a:pathLst/a:path/a:lnTo[1]/a:pt", - 1); - assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:custGeom/a:pathLst/a:path/a:lnTo[2]/a:pt", + "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:custGeom/a:pathLst/a:path/a:close"_ostr, 1); - assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:custGeom/a:pathLst/a:path/a:close", 1); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:ln", "cap", "rnd"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:ln/a:miter", 1); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:ln"_ostr, "cap"_ostr, + "rnd"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:ln/a:miter"_ostr, 1); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:custGeom/a:pathLst/a:path/a:close", 0); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:ln", "cap", "rnd"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:ln/a:miter", 1); + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:custGeom/a:pathLst/a:path/a:close"_ostr, + 0); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:ln"_ostr, "cap"_ostr, + "rnd"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:ln/a:miter"_ostr, 1); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:custGeom/a:pathLst/a:path/a:close", 0); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:ln", "cap", "rnd"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:ln/a:miter", 1); + "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:custGeom/a:pathLst/a:path/a:close"_ostr, + 0); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:ln"_ostr, "cap"_ostr, + "rnd"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:ln/a:miter"_ostr, 1); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[4]/p:spPr/a:custGeom/a:pathLst/a:path/a:close", 0); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:spPr/a:ln", "cap", "sq"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:spPr/a:ln/a:round", 1); + "/p:sld/p:cSld/p:spTree/p:sp[4]/p:spPr/a:custGeom/a:pathLst/a:path/a:close"_ostr, + 0); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:spPr/a:ln"_ostr, "cap"_ostr, + "sq"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[4]/p:spPr/a:ln/a:round"_ostr, 1); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[5]/p:spPr/a:custGeom/a:pathLst/a:path/a:close", 0); - assertXPathNoAttribute(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[5]/p:spPr/a:ln", - "cap"); // by default it is "flat" cap style - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[5]/p:spPr/a:ln/a:bevel", 1); + "/p:sld/p:cSld/p:spTree/p:sp[5]/p:spPr/a:custGeom/a:pathLst/a:path/a:close"_ostr, + 0); + assertXPathNoAttribute(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[5]/p:spPr/a:ln"_ostr, + "cap"_ostr); // by default it is "flat" cap style + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[5]/p:spPr/a:ln/a:bevel"_ostr, 1); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[6]/p:spPr/a:custGeom/a:pathLst/a:path/a:close", 0); - assertXPathNoAttribute(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[5]/p:spPr/a:ln", - "cap"); // by default it is "flat" cap style - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[6]/p:spPr/a:ln/a:round", 1); + "/p:sld/p:cSld/p:spTree/p:sp[6]/p:spPr/a:custGeom/a:pathLst/a:path/a:close"_ostr, + 0); + assertXPathNoAttribute(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[5]/p:spPr/a:ln"_ostr, + "cap"_ostr); // by default it is "flat" cap style + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[6]/p:spPr/a:ln/a:round"_ostr, 1); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testRotateFlip) @@ -1260,23 +1290,23 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testRotateFlip) = "/p:sld/p:cSld/p:spTree/p:sp[" + OString::number(nShapeIndex + 1) + "]/p:spPr"; const OString sXfrm = sSpPr + "/a:xfrm"; if (data[nShapeIndex][nDataIndex++] == "1") - assertXPath(pXmlDocContent, sXfrm, "flipH", "1"); + assertXPath(pXmlDocContent, sXfrm, "flipH"_ostr, "1"); if (data[nShapeIndex][nDataIndex++] == "1") - assertXPath(pXmlDocContent, sXfrm, "flipV", "1"); - assertXPath(pXmlDocContent, sXfrm, "rot", "20400000"); + assertXPath(pXmlDocContent, sXfrm, "flipV"_ostr, "1"); + assertXPath(pXmlDocContent, sXfrm, "rot"_ostr, "20400000"); const OString sOff = sXfrm + "/a:off"; - assertXPath(pXmlDocContent, sOff, "x", data[nShapeIndex][nDataIndex++]); - assertXPath(pXmlDocContent, sOff, "y", data[nShapeIndex][nDataIndex++]); + assertXPath(pXmlDocContent, sOff, "x"_ostr, data[nShapeIndex][nDataIndex++]); + assertXPath(pXmlDocContent, sOff, "y"_ostr, data[nShapeIndex][nDataIndex++]); const OString sExt = sXfrm + "/a:ext"; - assertXPath(pXmlDocContent, sExt, "cx", "1800000"); - assertXPath(pXmlDocContent, sExt, "cy", "3600000"); + assertXPath(pXmlDocContent, sExt, "cx"_ostr, "1800000"); + assertXPath(pXmlDocContent, sExt, "cy"_ostr, "3600000"); for (size_t nPointIndex = 0; nPointIndex < SAL_N_ELEMENTS(points); nPointIndex++) { const OString sPt = sSpPr + "/a:custGeom/a:pathLst/a:path/a:lnTo[" + OString::number(nPointIndex + 1) + "]/a:pt"; - assertXPath(pXmlDocContent, sPt, "x", points[nPointIndex][0]); - assertXPath(pXmlDocContent, sPt, "y", points[nPointIndex][1]); + assertXPath(pXmlDocContent, sPt, "x"_ostr, points[nPointIndex][0]); + assertXPath(pXmlDocContent, sPt, "y"_ostr, points[nPointIndex][1]); } assertXPath(pXmlDocContent, sSpPr + "/a:custGeom/a:pathLst/a:path/a:close", 1); } @@ -1304,16 +1334,16 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf106867) // both the ooxml and the extended markup xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:nvPr/a:videoFile"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:nvPr/a:videoFile"_ostr); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:nvPr/p:extLst/p:ext/p14:media"); + "/p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:nvPr/p:extLst/p:ext/p14:media"_ostr); // target the shape with the video in the command assertXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/p:par/" "p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:cmd/" - "p:cBhvr/p:tgtEl/p:spTgt", - "spid", "42"); + "p:cBhvr/p:tgtEl/p:spTgt"_ostr, + "spid"_ostr, "42"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf112280) @@ -1323,10 +1353,11 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf112280) // check the animRot value xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, - "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/p:par/" - "p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:animRot", - "by", "21600000"); + assertXPath( + pXmlDocContent, + "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/p:par/" + "p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:animRot"_ostr, + "by"_ostr, "21600000"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf112088) @@ -1336,8 +1367,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf112088) // check gradient stops xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPathChildren(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:gradFill/a:gsLst", - 2); + assertXPathChildren(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:gradFill/a:gsLst"_ostr, 2); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf112333) @@ -1350,40 +1381,40 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf112333) OUString sTo = getXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/" "p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/" - "p:cTn/p:childTnLst/p:set[1]/p:to/p:strVal", - "val"); + "p:cTn/p:childTnLst/p:set[1]/p:to/p:strVal"_ostr, + "val"_ostr); CPPUNIT_ASSERT_EQUAL(OUString("solid"), sTo); OUString sAttributeName = getXPathContent( pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/" "p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/" - "p:childTnLst/p:set[1]/p:cBhvr/p:attrNameLst/p:attrName"); + "p:childTnLst/p:set[1]/p:cBhvr/p:attrNameLst/p:attrName"_ostr); CPPUNIT_ASSERT_EQUAL(OUString("fill.type"), sAttributeName); sTo = getXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/" "p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/" - "p:set[2]/p:to/p:strVal", - "val"); + "p:set[2]/p:to/p:strVal"_ostr, + "val"_ostr); CPPUNIT_ASSERT_EQUAL(OUString("true"), sTo); sAttributeName = getXPathContent( pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/" "p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/" - "p:childTnLst/p:set[2]/p:cBhvr/p:attrNameLst/p:attrName"); + "p:childTnLst/p:set[2]/p:cBhvr/p:attrNameLst/p:attrName"_ostr); CPPUNIT_ASSERT_EQUAL(OUString("fill.on"), sAttributeName); sTo = getXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/" "p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/" - "p:animClr/p:to/a:srgbClr", - "val"); + "p:animClr/p:to/a:srgbClr"_ostr, + "val"_ostr); CPPUNIT_ASSERT_EQUAL(OUString("0563c1"), sTo); sAttributeName = getXPathContent( pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/" "p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/" - "p:childTnLst/p:animClr/p:cBhvr/p:attrNameLst/p:attrName"); + "p:childTnLst/p:animClr/p:cBhvr/p:attrNameLst/p:attrName"_ostr); CPPUNIT_ASSERT_EQUAL(OUString("fillcolor"), sAttributeName); } @@ -1394,16 +1425,20 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf112552) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:custGeom/a:pathLst/a:path", - "w", "21600"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:custGeom/a:pathLst/a:path", - "h", "21600"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:custGeom/a:pathLst/a:path/a:lnTo[1]/a:pt", - "x", "21600"); + "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:custGeom/a:pathLst/a:path"_ostr, "w"_ostr, + "21600"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:custGeom/a:pathLst/a:path/a:lnTo[1]/a:pt", - "y", "0"); + "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:custGeom/a:pathLst/a:path"_ostr, "h"_ostr, + "21600"); + assertXPath( + pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:custGeom/a:pathLst/a:path/a:lnTo[1]/a:pt"_ostr, + "x"_ostr, "21600"); + assertXPath( + pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:custGeom/a:pathLst/a:path/a:lnTo[1]/a:pt"_ostr, + "y"_ostr, "0"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf112557) @@ -1413,7 +1448,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf112557) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slideMasters/slideMaster1.xml"); - assertXPath(pXmlDocContent, "/p:sldMaster/p:cSld/p:spTree/p:sp", 2); // title and object + assertXPath(pXmlDocContent, "/p:sldMaster/p:cSld/p:spTree/p:sp"_ostr, 2); // title and object } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf128049) @@ -1422,13 +1457,15 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf128049) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:custGeom", 0); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:prstGeom", "prst", - "noSmoking"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:prstGeom/a:avLst/a:gd", - "name", "adj"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:prstGeom/a:avLst/a:gd", - "fmla", "val 12500"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:custGeom"_ostr, 0); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:prstGeom"_ostr, + "prst"_ostr, "noSmoking"); + assertXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:prstGeom/a:avLst/a:gd"_ostr, "name"_ostr, + "adj"); + assertXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:prstGeom/a:avLst/a:gd"_ostr, "fmla"_ostr, + "val 12500"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf106026) @@ -1438,37 +1475,37 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf106026) xmlDocUniquePtr pXmlMasterContent = parseExport("ppt/slideMasters/slideMaster1.xml"); assertXPath(pXmlMasterContent, - "/p:sldMaster/p:cSld/p:spTree/p:sp/p:txBody/a:p[1]/a:pPr/a:spcBef/a:spcPts", "val", - "1417"); + "/p:sldMaster/p:cSld/p:spTree/p:sp/p:txBody/a:p[1]/a:pPr/a:spcBef/a:spcPts"_ostr, + "val"_ostr, "1417"); assertXPath(pXmlMasterContent, - "/p:sldMaster/p:cSld/p:spTree/p:sp/p:txBody/a:p[2]/a:pPr/a:spcBef/a:spcPts", "val", - "1134"); + "/p:sldMaster/p:cSld/p:spTree/p:sp/p:txBody/a:p[2]/a:pPr/a:spcBef/a:spcPts"_ostr, + "val"_ostr, "1134"); assertXPath(pXmlMasterContent, - "/p:sldMaster/p:cSld/p:spTree/p:sp/p:txBody/a:p[3]/a:pPr/a:spcBef/a:spcPts", "val", - "850"); + "/p:sldMaster/p:cSld/p:spTree/p:sp/p:txBody/a:p[3]/a:pPr/a:spcBef/a:spcPts"_ostr, + "val"_ostr, "850"); assertXPath(pXmlMasterContent, - "/p:sldMaster/p:cSld/p:spTree/p:sp/p:txBody/a:p[4]/a:pPr/a:spcBef/a:spcPts", "val", - "567"); + "/p:sldMaster/p:cSld/p:spTree/p:sp/p:txBody/a:p[4]/a:pPr/a:spcBef/a:spcPts"_ostr, + "val"_ostr, "567"); assertXPath(pXmlMasterContent, - "/p:sldMaster/p:cSld/p:spTree/p:sp/p:txBody/a:p[5]/a:pPr/a:spcBef/a:spcPts", "val", - "283"); + "/p:sldMaster/p:cSld/p:spTree/p:sp/p:txBody/a:p[5]/a:pPr/a:spcBef/a:spcPts"_ostr, + "val"_ostr, "283"); assertXPath(pXmlMasterContent, - "/p:sldMaster/p:cSld/p:spTree/p:sp/p:txBody/a:p[6]/a:pPr/a:spcBef/a:spcPts", "val", - "283"); + "/p:sldMaster/p:cSld/p:spTree/p:sp/p:txBody/a:p[6]/a:pPr/a:spcBef/a:spcPts"_ostr, + "val"_ostr, "283"); assertXPath(pXmlMasterContent, - "/p:sldMaster/p:cSld/p:spTree/p:sp/p:txBody/a:p[7]/a:pPr/a:spcBef/a:spcPts", "val", - "283"); + "/p:sldMaster/p:cSld/p:spTree/p:sp/p:txBody/a:p[7]/a:pPr/a:spcBef/a:spcPts"_ostr, + "val"_ostr, "283"); xmlDocUniquePtr pXmlSlideContent = parseExport("ppt/slides/slide1.xml"); assertXPath(pXmlSlideContent, - "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[1]/a:pPr/a:spcAft/a:spcPts", "val", - "11339"); + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[1]/a:pPr/a:spcAft/a:spcPts"_ostr, + "val"_ostr, "11339"); assertXPath(pXmlSlideContent, - "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[2]/a:pPr/a:spcAft/a:spcPts", "val", - "11339"); + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[2]/a:pPr/a:spcAft/a:spcPts"_ostr, + "val"_ostr, "11339"); assertXPath(pXmlSlideContent, - "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[3]/a:pPr/a:spcAft/a:spcPts", "val", - "11339"); + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[3]/a:pPr/a:spcAft/a:spcPts"_ostr, + "val"_ostr, "11339"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf112334) @@ -1481,7 +1518,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf112334) OUString sAttributeName = getXPathContent( pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/" "p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/" - "p:childTnLst/p:animClr[1]/p:cBhvr/p:attrNameLst/p:attrName"); + "p:childTnLst/p:animClr[1]/p:cBhvr/p:attrNameLst/p:attrName"_ostr); CPPUNIT_ASSERT_EQUAL(OUString("style.color"), sAttributeName); } @@ -1492,13 +1529,14 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf112089) xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - OUString sID = getXPath( - pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:graphicFrame/p:nvGraphicFramePr/p:cNvPr", "id"); + OUString sID = getXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:graphicFrame/p:nvGraphicFramePr/p:cNvPr"_ostr, + "id"_ostr); OUString sTarget = getXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/" "p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/" - "p:par/p:cTn/p:childTnLst/p:set/p:cBhvr/p:tgtEl/p:spTgt", - "spid"); + "p:par/p:cTn/p:childTnLst/p:set/p:cBhvr/p:tgtEl/p:spTgt"_ostr, + "spid"_ostr); CPPUNIT_ASSERT_EQUAL(sID, sTarget); } @@ -1512,27 +1550,27 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf112086) OUString sVal = getXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/" "p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/" - "p:cTn/p:childTnLst/p:anim[2]/p:tavLst/p:tav/p:val/p:fltVal", - "val"); + "p:cTn/p:childTnLst/p:anim[2]/p:tavLst/p:tav/p:val/p:fltVal"_ostr, + "val"_ostr); CPPUNIT_ASSERT_EQUAL(OUString("0"), sVal); OUString sAttributeName = getXPathContent( pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/" "p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/" - "p:childTnLst/p:anim[1]/p:cBhvr/p:attrNameLst/p:attrName"); + "p:childTnLst/p:anim[1]/p:cBhvr/p:attrNameLst/p:attrName"_ostr); CPPUNIT_ASSERT_EQUAL(OUString("ppt_w"), sAttributeName); sVal = getXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/" "p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/" - "p:anim[2]/p:tavLst/p:tav/p:val/p:fltVal", - "val"); + "p:anim[2]/p:tavLst/p:tav/p:val/p:fltVal"_ostr, + "val"_ostr); CPPUNIT_ASSERT_EQUAL(OUString("0"), sVal); sAttributeName = getXPathContent( pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/" "p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/" - "p:childTnLst/p:anim[2]/p:cBhvr/p:attrNameLst/p:attrName"); + "p:childTnLst/p:anim[2]/p:cBhvr/p:attrNameLst/p:attrName"_ostr); CPPUNIT_ASSERT_EQUAL(OUString("ppt_h"), sAttributeName); } @@ -1556,12 +1594,12 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testGroupRotation) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPathNoAttribute(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:grpSp/p:grpSpPr/a:xfrm", - "rot"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:grpSp/p:sp[1]/p:spPr/a:xfrm", "rot", - "20400000"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:grpSp/p:sp[2]/p:spPr/a:xfrm", "rot", - "20400000"); + assertXPathNoAttribute(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:grpSp/p:grpSpPr/a:xfrm"_ostr, + "rot"_ostr); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:grpSp/p:sp[1]/p:spPr/a:xfrm"_ostr, + "rot"_ostr, "20400000"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:grpSp/p:sp[2]/p:spPr/a:xfrm"_ostr, + "rot"_ostr, "20400000"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf104788) @@ -1574,14 +1612,14 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf104788) OUString sVal = getXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/" "p:childTnLst/p:par[2]/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/" - "p:par/p:cTn/p:childTnLst/p:anim[2]", - "to"); + "p:par/p:cTn/p:childTnLst/p:anim[2]"_ostr, + "to"_ostr); CPPUNIT_ASSERT_EQUAL(-1.0, sVal.toDouble()); OUString sAttributeName = getXPathContent( pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/" "p:par[2]/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/" - "p:childTnLst/p:anim[2]/p:cBhvr/p:attrNameLst/p:attrName"); + "p:childTnLst/p:anim[2]/p:cBhvr/p:attrNameLst/p:attrName"_ostr); CPPUNIT_ASSERT_EQUAL(OUString("xshear"), sAttributeName); } @@ -1601,15 +1639,17 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testSmartartRotation2) xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); assertXPathContent(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:grpSp/p:sp[4]/p:txBody/a:p/a:r/a:t", "Text"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:grpSp/p:sp[4]/p:txBody/a:bodyPr", "rot", - "10800000"); - double dX = getXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:grpSp/p:sp[4]/p:spPr/a:xfrm/a:off", "x") - .toDouble(); - double dY = getXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:grpSp/p:sp[4]/p:spPr/a:xfrm/a:off", "y") - .toDouble(); + "/p:sld/p:cSld/p:spTree/p:grpSp/p:sp[4]/p:txBody/a:p/a:r/a:t"_ostr, "Text"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:grpSp/p:sp[4]/p:txBody/a:bodyPr"_ostr, + "rot"_ostr, "10800000"); + double dX + = getXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:grpSp/p:sp[4]/p:spPr/a:xfrm/a:off"_ostr, "x"_ostr) + .toDouble(); + double dY + = getXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:grpSp/p:sp[4]/p:spPr/a:xfrm/a:off"_ostr, "y"_ostr) + .toDouble(); CPPUNIT_ASSERT_DOUBLES_EQUAL(2276280.0, dX, dX * .001); CPPUNIT_ASSERT_DOUBLES_EQUAL(3158280.0, dY, dY * .001); } @@ -1620,12 +1660,15 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf91999_rotateShape) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:nvSpPr/p:cNvPr", "name", + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:nvSpPr/p:cNvPr"_ostr, "name"_ostr, "CustomShape 2"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:xfrm", "rot", "10800000"); - double dX = getXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:xfrm/a:off", "x") + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:xfrm"_ostr, "rot"_ostr, + "10800000"); + double dX = getXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:xfrm/a:off"_ostr, + "x"_ostr) .toDouble(); - double dY = getXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:xfrm/a:off", "y") + double dY = getXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:spPr/a:xfrm/a:off"_ostr, + "y"_ostr) .toDouble(); CPPUNIT_ASSERT_DOUBLES_EQUAL(2960640.0, dX, dX * .001); CPPUNIT_ASSERT_DOUBLES_EQUAL(1449000.0, dY, dY * .001); @@ -1637,15 +1680,16 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf114845_rotateShape) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:cxnSp[2]/p:nvCxnSpPr/p:cNvPr", "name", - "Straight Arrow Connector 9"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:cxnSp[2]/p:spPr/a:xfrm", "flipV", "1"); - double dX - = getXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:cxnSp[2]/p:spPr/a:xfrm/a:off", "x") - .toDouble(); - double dY - = getXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:cxnSp[2]/p:spPr/a:xfrm/a:off", "y") - .toDouble(); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:cxnSp[2]/p:nvCxnSpPr/p:cNvPr"_ostr, + "name"_ostr, "Straight Arrow Connector 9"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:cxnSp[2]/p:spPr/a:xfrm"_ostr, + "flipV"_ostr, "1"); + double dX = getXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:cxnSp[2]/p:spPr/a:xfrm/a:off"_ostr, "x"_ostr) + .toDouble(); + double dY = getXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:cxnSp[2]/p:spPr/a:xfrm/a:off"_ostr, "y"_ostr) + .toDouble(); CPPUNIT_ASSERT_DOUBLES_EQUAL(4059000.0, dX, dX * .001); CPPUNIT_ASSERT_DOUBLES_EQUAL(3287520.0, dY, dY * .001); } @@ -1656,14 +1700,18 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testGroupsPosition) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:grpSp[1]/p:sp[1]/p:spPr/a:xfrm/a:off", - "x", "5004000"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:grpSp[1]/p:sp[1]/p:spPr/a:xfrm/a:off", - "y", "3310560"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:grpSp[1]/p:sp[3]/p:spPr/a:xfrm/a:off", - "x", "7760160"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:grpSp[1]/p:sp[3]/p:spPr/a:xfrm/a:off", - "y", "3310560"); + assertXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:grpSp[1]/p:sp[1]/p:spPr/a:xfrm/a:off"_ostr, "x"_ostr, + "5004000"); + assertXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:grpSp[1]/p:sp[1]/p:spPr/a:xfrm/a:off"_ostr, "y"_ostr, + "3310560"); + assertXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:grpSp[1]/p:sp[3]/p:spPr/a:xfrm/a:off"_ostr, "x"_ostr, + "7760160"); + assertXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:grpSp[1]/p:sp[3]/p:spPr/a:xfrm/a:off"_ostr, "y"_ostr, + "3310560"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testGroupsRotatedPosition) @@ -1672,10 +1720,10 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testGroupsRotatedPosition) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:grpSp/p:sp[3]/p:spPr/a:xfrm/a:off", "x", - "2857320"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:grpSp/p:sp[3]/p:spPr/a:xfrm/a:off", "y", - "4026960"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:grpSp/p:sp[3]/p:spPr/a:xfrm/a:off"_ostr, + "x"_ostr, "2857320"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:grpSp/p:sp[3]/p:spPr/a:xfrm/a:off"_ostr, + "y"_ostr, "4026960"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testAccentColor) @@ -1684,24 +1732,25 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testAccentColor) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent1 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:sp/p:style/a:fillRef/a:schemeClr", "val", - "accent6"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:sp/p:style/a:fillRef/a:schemeClr"_ostr, + "val"_ostr, "accent6"); xmlDocUniquePtr pXmlDocContent2 = parseExport("ppt/slides/slide2.xml"); - assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:spTree/p:sp/p:style/a:fillRef/a:schemeClr", "val", - "accent6"); + assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:spTree/p:sp/p:style/a:fillRef/a:schemeClr"_ostr, + "val"_ostr, "accent6"); xmlDocUniquePtr pXmlDocTheme1 = parseExport("ppt/theme/theme1.xml"); - assertXPath(pXmlDocTheme1, "/a:theme/a:themeElements/a:clrScheme/a:accent6/a:srgbClr", "val", - "70ad47"); + assertXPath(pXmlDocTheme1, "/a:theme/a:themeElements/a:clrScheme/a:accent6/a:srgbClr"_ostr, + "val"_ostr, "70ad47"); xmlDocUniquePtr pXmlDocTheme2 = parseExport("ppt/theme/theme2.xml"); - assertXPath(pXmlDocTheme2, "/a:theme/a:themeElements/a:clrScheme/a:accent6/a:srgbClr", "val", - "deb340"); + assertXPath(pXmlDocTheme2, "/a:theme/a:themeElements/a:clrScheme/a:accent6/a:srgbClr"_ostr, + "val"_ostr, "deb340"); // Without the accompanying fix in place, this test would have failed with: // - Expected: Motyw pakietu Office // - Actual : Office Theme // i.e. the theme and color scheme name was lost on export. - assertXPath(pXmlDocTheme1, "/a:theme", "name", "Motyw pakietu Office"); - assertXPath(pXmlDocTheme1, "/a:theme/a:themeElements/a:clrScheme", "name", "Pakiet Office"); + assertXPath(pXmlDocTheme1, "/a:theme"_ostr, "name"_ostr, "Motyw pakietu Office"); + assertXPath(pXmlDocTheme1, "/a:theme/a:themeElements/a:clrScheme"_ostr, "name"_ostr, + "Pakiet Office"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testThemeColors) @@ -1710,10 +1759,10 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testThemeColors) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocTheme2 = parseExport("ppt/theme/theme1.xml"); - assertXPath(pXmlDocTheme2, "/a:theme/a:themeElements/a:clrScheme/a:dk2/a:srgbClr", "val", - "44546a"); - assertXPath(pXmlDocTheme2, "/a:theme/a:themeElements/a:clrScheme/a:accent3/a:srgbClr", "val", - "a5a5a5"); + assertXPath(pXmlDocTheme2, "/a:theme/a:themeElements/a:clrScheme/a:dk2/a:srgbClr"_ostr, + "val"_ostr, "44546a"); + assertXPath(pXmlDocTheme2, "/a:theme/a:themeElements/a:clrScheme/a:accent3/a:srgbClr"_ostr, + "val"_ostr, "a5a5a5"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf111785) @@ -1726,8 +1775,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", "ed1c24"); + assertXPath(pXmlDocRels, + "/p:sld/p:cSld/p:spTree/p:sp[1]/p:spPr/a:pattFill/a:bgClr/a:srgbClr"_ostr, + "val"_ostr, "ed1c24"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf118825) @@ -1753,22 +1803,22 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf118825) u"0.363714285714286 0.0885079365079364 C 0.374930683062651 0.080580865157908 " u"0.385357142857143 0.0693333333333332 0.396178571428571 0.0596825396825396 L " u"0.404785714285714 0.0410158730158729 L 0.401892857142857 0.0342222222222221 E", - getXPath(pXmlDocContent, "(//p:animMotion)[1]", "path")); + getXPath(pXmlDocContent, "(//p:animMotion)[1]"_ostr, "path"_ostr)); CPPUNIT_ASSERT_MOTIONPATH(u"M 0.025 0.0571428571428571 L 0.0821428571428571 0.184126984126984 " u"L -0.175 0.234920634920635 L -0.246428571428571 " u"-0.0190476190476191 L -0.0821428571428573 -0.133333333333333 E", - getXPath(pXmlDocContent, "(//p:animMotion)[2]", "path")); + getXPath(pXmlDocContent, "(//p:animMotion)[2]"_ostr, "path"_ostr)); CPPUNIT_ASSERT_MOTIONPATH( u"M -0.0107142857142857 0.00634920634920635 C -0.110714285714286 0.501587301587301 " u"-0.153571428571429 -0.00634920634920635 -0.246428571428572 0.184126984126984 C " u"-0.339285714285715 0.374603174603175 -0.296428571428572 0.514285714285714 " u"-0.267857142857143 0.603174603174603 C -0.239285714285715 0.692063492063492 " u"0.0607142857142858 0.590476190476191 0.0607142857142858 0.590476190476191 E", - getXPath(pXmlDocContent, "(//p:animMotion)[3]", "path")); + getXPath(pXmlDocContent, "(//p:animMotion)[3]"_ostr, "path"_ostr)); CPPUNIT_ASSERT_MOTIONPATH(u"M 0.0535714285714286 -0.0444444444444444 L 0.132142857142857 " u"-0.0444444444444444 L 0.132142857142857 -0.146031746031746 L " u"0.0964285714285715 -0.146031746031746 E", - getXPath(pXmlDocContent, "(//p:animMotion)[4]", "path")); + getXPath(pXmlDocContent, "(//p:animMotion)[4]"_ostr, "path"_ostr)); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTextColumns_tdf140852) @@ -1813,8 +1863,9 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTextColumns_tdf140852) } xmlDocUniquePtr pXmlDocRels = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocRels, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr", "numCol", "1"); - assertXPath(pXmlDocRels, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr", "spcCol", + assertXPath(pXmlDocRels, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr"_ostr, "numCol"_ostr, + "1"); + assertXPath(pXmlDocRels, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr"_ostr, "spcCol"_ostr, "360000"); } @@ -1860,8 +1911,9 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTextColumns_3columns) } xmlDocUniquePtr pXmlDocRels = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocRels, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr", "numCol", "3"); - assertXPath(pXmlDocRels, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr", "spcCol", + assertXPath(pXmlDocRels, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr"_ostr, "numCol"_ostr, + "3"); + assertXPath(pXmlDocRels, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr"_ostr, "spcCol"_ostr, "108000"); } @@ -1885,23 +1937,23 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf59323_slideFooters) // Test placeholder indexes xmlDocUniquePtr pXmlDocMaster = parseExport("ppt/slideMasters/slideMaster1.xml"); - assertXPath(pXmlDocMaster, "//p:ph [@type='dt']", "idx", "1"); - assertXPath(pXmlDocMaster, "//p:ph [@type='ftr']", "idx", "2"); - assertXPath(pXmlDocMaster, "//p:ph [@type='sldNum']", "idx", "3"); + assertXPath(pXmlDocMaster, "//p:ph [@type='dt']"_ostr, "idx"_ostr, "1"); + assertXPath(pXmlDocMaster, "//p:ph [@type='ftr']"_ostr, "idx"_ostr, "2"); + assertXPath(pXmlDocMaster, "//p:ph [@type='sldNum']"_ostr, "idx"_ostr, "3"); xmlDocUniquePtr pXmlDocSlide1 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocSlide1, "//p:ph [@type='dt']", "idx", "1"); - assertXPath(pXmlDocSlide1, "//p:ph [@type='ftr']", "idx", "2"); - assertXPath(pXmlDocSlide1, "//p:ph [@type='sldNum']", "idx", "3"); + assertXPath(pXmlDocSlide1, "//p:ph [@type='dt']"_ostr, "idx"_ostr, "1"); + assertXPath(pXmlDocSlide1, "//p:ph [@type='ftr']"_ostr, "idx"_ostr, "2"); + assertXPath(pXmlDocSlide1, "//p:ph [@type='sldNum']"_ostr, "idx"_ostr, "3"); // Test if datetime fields have text in them // This is needed for backwards compatibility - assertXPath(pXmlDocSlide1, "//a:fld [@type='datetime1']/a:t"); + assertXPath(pXmlDocSlide1, "//a:fld [@type='datetime1']/a:t"_ostr); // tdf#143316: Without the fix in place, this test would have failed with // - Expected: 1 // - Actual : 0 - assertXPath(pXmlDocSlide1, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:fld/a:rPr"); + assertXPath(pXmlDocSlide1, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:fld/a:rPr"_ostr); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf53970) @@ -1922,7 +1974,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest2, testTdf53970) xmlDocUniquePtr pXmlRels = parseExport("ppt/slides/_rels/slide1.xml.rels"); CPPUNIT_ASSERT(pXmlRels); - assertXPath(pXmlRels, "/rels:Relationships/rels:Relationship[@TargetMode='External']", 2); + assertXPath(pXmlRels, "/rels:Relationships/rels:Relationship[@TargetMode='External']"_ostr, + 2); uno::Reference<beans::XPropertySet> xShape(getShape(0, getPage(0))); CPPUNIT_ASSERT(xShape.is()); diff --git a/sd/qa/unit/export-tests-ooxml3.cxx b/sd/qa/unit/export-tests-ooxml3.cxx index 74bcfebb40a5..dbe68d2fcd7e 100644 --- a/sd/qa/unit/export-tests-ooxml3.cxx +++ b/sd/qa/unit/export-tests-ooxml3.cxx @@ -33,14 +33,14 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf153105) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc1 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:stretch/a:fillRect", "l", - "20000"); - assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:stretch/a:fillRect", "t", - "30000"); - assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:stretch/a:fillRect", "r", - "20000"); - assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:stretch/a:fillRect", "b", - "30000"); + assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:stretch/a:fillRect"_ostr, + "l"_ostr, "20000"); + assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:stretch/a:fillRect"_ostr, + "t"_ostr, "30000"); + assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:stretch/a:fillRect"_ostr, + "r"_ostr, "20000"); + assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:bg/p:bgPr/a:blipFill/a:stretch/a:fillRect"_ostr, + "b"_ostr, "30000"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf92222) @@ -49,12 +49,12 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf92222) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocTheme = parseExport("ppt/theme/theme1.xml"); - assertXPath(pXmlDocTheme, "/a:theme/a:themeElements/a:fmtScheme/a:lnStyleLst/a:ln[1]", "w", - "6350"); - assertXPath(pXmlDocTheme, "/a:theme/a:themeElements/a:fmtScheme/a:lnStyleLst/a:ln[2]", "w", - "12700"); - assertXPath(pXmlDocTheme, "/a:theme/a:themeElements/a:fmtScheme/a:lnStyleLst/a:ln[3]", "w", - "19050"); + assertXPath(pXmlDocTheme, "/a:theme/a:themeElements/a:fmtScheme/a:lnStyleLst/a:ln[1]"_ostr, + "w"_ostr, "6350"); + assertXPath(pXmlDocTheme, "/a:theme/a:themeElements/a:fmtScheme/a:lnStyleLst/a:ln[2]"_ostr, + "w"_ostr, "12700"); + assertXPath(pXmlDocTheme, "/a:theme/a:themeElements/a:fmtScheme/a:lnStyleLst/a:ln[3]"_ostr, + "w"_ostr, "19050"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf129430) @@ -63,8 +63,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf129430) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc1 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p[2]/a:pPr/a:lnSpc/a:spcPct", - "val", "100000"); + assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p[2]/a:pPr/a:lnSpc/a:spcPct"_ostr, + "val"_ostr, "100000"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf114848) @@ -73,8 +73,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf114848) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocTheme1 = parseExport("ppt/theme/theme1.xml"); - assertXPath(pXmlDocTheme1, "/a:theme/a:themeElements/a:clrScheme/a:dk2/a:srgbClr", "val", - "1f497d"); + assertXPath(pXmlDocTheme1, "/a:theme/a:themeElements/a:clrScheme/a:dk2/a:srgbClr"_ostr, + "val"_ostr, "1f497d"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf147586) @@ -87,11 +87,11 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf147586) // - 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", - "227fc7"); + "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:p[1]/a:pPr/a:buClr/a:srgbClr"_ostr, + "val"_ostr, "227fc7"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:p[2]/a:pPr/a:buClr/a:srgbClr", "val", - "227fc7"); + "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:p[2]/a:pPr/a:buClr/a:srgbClr"_ostr, + "val"_ostr, "227fc7"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf68759) @@ -100,21 +100,24 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf68759) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[1]/p:spPr/a:xfrm/a:off", "x", - "1687320"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[1]/p:spPr/a:xfrm/a:off", "y", - "1615320"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[2]/p:spPr/a:xfrm", "flipH", "1"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[2]/p:spPr/a:xfrm", "rot", "9600000"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[2]/p:spPr/a:xfrm/a:off", "x", - "3847320"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[2]/p:spPr/a:xfrm/a:off", "y", - "1614600"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[3]/p:spPr/a:xfrm", "flipH", "1"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[3]/p:spPr/a:xfrm/a:off", "x", - "5934960"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[3]/p:spPr/a:xfrm/a:off", "y", - "1615320"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[1]/p:spPr/a:xfrm/a:off"_ostr, + "x"_ostr, "1687320"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[1]/p:spPr/a:xfrm/a:off"_ostr, + "y"_ostr, "1615320"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[2]/p:spPr/a:xfrm"_ostr, "flipH"_ostr, + "1"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[2]/p:spPr/a:xfrm"_ostr, "rot"_ostr, + "9600000"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[2]/p:spPr/a:xfrm/a:off"_ostr, + "x"_ostr, "3847320"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[2]/p:spPr/a:xfrm/a:off"_ostr, + "y"_ostr, "1614600"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[3]/p:spPr/a:xfrm"_ostr, "flipH"_ostr, + "1"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[3]/p:spPr/a:xfrm/a:off"_ostr, + "x"_ostr, "5934960"); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:pic[3]/p:spPr/a:xfrm/a:off"_ostr, + "y"_ostr, "1615320"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf127901) @@ -123,17 +126,18 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf127901) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent1 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:blip/a:lum", "bright", - "70000"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:blip/a:lum", "contrast", - "-70000"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:blip/a:lum"_ostr, + "bright"_ostr, "70000"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:blip/a:lum"_ostr, + "contrast"_ostr, "-70000"); xmlDocUniquePtr pXmlDocContent2 = parseExport("ppt/slides/slide2.xml"); - assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:blip/a:grayscl", 1); + assertXPath(pXmlDocContent2, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:blip/a:grayscl"_ostr, + 1); xmlDocUniquePtr pXmlDocContent3 = parseExport("ppt/slides/slide3.xml"); - assertXPath(pXmlDocContent3, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:blip/a:biLevel", - "thresh", "50000"); + assertXPath(pXmlDocContent3, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:blip/a:biLevel"_ostr, + "thresh"_ostr, "50000"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf48735) @@ -142,10 +146,14 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf48735) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent1 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:srcRect", "b", "23627"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:srcRect", "l", "23627"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:srcRect", "r", "23627"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:srcRect", "t", "18842"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:srcRect"_ostr, "b"_ostr, + "23627"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:srcRect"_ostr, "l"_ostr, + "23627"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:srcRect"_ostr, "r"_ostr, + "23627"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:pic/p:blipFill/a:srcRect"_ostr, "t"_ostr, + "18842"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf90626) @@ -154,14 +162,18 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf90626) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[1]/a:pPr/a:buSzPct", - "val", "100000"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[2]/a:pPr/a:buSzPct", - "val", "150142"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[3]/a:pPr/a:buSzPct", - "val", "100000"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[4]/a:pPr/a:buSzPct", - "val", "150142"); + assertXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[1]/a:pPr/a:buSzPct"_ostr, "val"_ostr, + "100000"); + assertXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[2]/a:pPr/a:buSzPct"_ostr, "val"_ostr, + "150142"); + assertXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[3]/a:pPr/a:buSzPct"_ostr, "val"_ostr, + "100000"); + assertXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[4]/a:pPr/a:buSzPct"_ostr, "val"_ostr, + "150142"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf107608) @@ -211,8 +223,9 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testFontScale) xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); // Rounding errors possible, approximate value (+/- 1%) - OUString sScale = getXPath( - pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:bodyPr/a:normAutofit", "fontScale"); + OUString sScale = getXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:bodyPr/a:normAutofit"_ostr, + "fontScale"_ostr); CPPUNIT_ASSERT_DOUBLES_EQUAL(sal_Int32(81111), sScale.toInt32(), 1000); } @@ -224,9 +237,11 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testShapeAutofitPPTX) CPPUNIT_ASSERT(pXmlDocContent); // TextAutoGrowHeight --> "Resize shape to fit text" --> true - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr/a:spAutoFit", 1); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr/a:spAutoFit"_ostr, + 1); // TextAutoGrowHeight --> "Resize shape to fit text" --> false - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:bodyPr/a:noAutofit", 1); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:bodyPr/a:noAutofit"_ostr, + 1); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testLegacyShapeAutofitPPTX) @@ -237,11 +252,14 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testLegacyShapeAutofitPPTX) CPPUNIT_ASSERT(pXmlDocContent); // Text in a legacy rectangle - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr/a:noAutofit", 1); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr/a:noAutofit"_ostr, + 1); // Text in (closed) Polygon - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:bodyPr/a:noAutofit", 1); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:bodyPr/a:noAutofit"_ostr, + 1); // Text in a legacy ellipse - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:txBody/a:bodyPr/a:noAutofit", 1); + assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:txBody/a:bodyPr/a:noAutofit"_ostr, + 1); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf115394) @@ -371,7 +389,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf118806) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "//p:animMotion", "origin", "layout"); + assertXPath(pXmlDocContent, "//p:animMotion"_ostr, "origin"_ostr, "layout"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf130058) @@ -449,7 +467,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf145162) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[2]/a:pPr/a:buNone"); + assertXPath(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[2]/a:pPr/a:buNone"_ostr); // Before the fix, that tag was missing so PP put bullet to each para. } @@ -471,19 +490,25 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testZeroIndentExport) // Each slide has 3 paragraphs, one full line, an empty and a normal para. // Check the indent and bullet. These have to match with PP. Before the fix, // they were different. - assertXPath(pSlide1, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[2]/a:pPr/a:buNone"); - - assertXPath(pSlide2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[1]/a:pPr/a:buNone"); - assertXPath(pSlide2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[1]/a:pPr", "indent", "0"); - assertXPath(pSlide2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[2]/a:pPr/a:buNone"); - assertXPath(pSlide2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[2]/a:pPr", "indent", "0"); - assertXPath(pSlide2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[3]/a:pPr/a:buNone"); - assertXPath(pSlide2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[3]/a:pPr", "indent", "0"); - - assertXPath(pSlide3, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[1]/a:pPr", "indent", "0"); - assertXPath(pSlide3, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[2]/a:pPr/a:buNone"); - assertXPath(pSlide3, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[2]/a:pPr", "indent", "0"); - assertXPath(pSlide3, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[3]/a:pPr", "indent", "0"); + assertXPath(pSlide1, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[2]/a:pPr/a:buNone"_ostr); + + assertXPath(pSlide2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[1]/a:pPr/a:buNone"_ostr); + assertXPath(pSlide2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[1]/a:pPr"_ostr, "indent"_ostr, + "0"); + assertXPath(pSlide2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[2]/a:pPr/a:buNone"_ostr); + assertXPath(pSlide2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[2]/a:pPr"_ostr, "indent"_ostr, + "0"); + assertXPath(pSlide2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[3]/a:pPr/a:buNone"_ostr); + assertXPath(pSlide2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[3]/a:pPr"_ostr, "indent"_ostr, + "0"); + + assertXPath(pSlide3, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[1]/a:pPr"_ostr, "indent"_ostr, + "0"); + assertXPath(pSlide3, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[2]/a:pPr/a:buNone"_ostr); + assertXPath(pSlide3, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[2]/a:pPr"_ostr, "indent"_ostr, + "0"); + assertXPath(pSlide3, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p[3]/a:pPr"_ostr, "indent"_ostr, + "0"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf100348_convert_Fontwork2TextWarp) @@ -548,7 +573,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf125573_FontWorkScaleX) // ensure, resulting pptx has fromWordArt="1" on textArchDown shape xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr[@fromWordArt='1']"); + "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:bodyPr[@fromWordArt='1']"_ostr); // Error was, that text in legacy shapes of category "Follow Path" was not scaled to the path. uno::Reference<beans::XPropertySet> xShapeArchProps(getShapeFromPage(0, 0)); @@ -585,7 +610,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf99497_keepAppearanceOfCircleKind const OString sPathAdj1(sPathStart1 + "/a:avLst/a:gd"); assertXPath(pXmlDocContent1, sPathAdj1 + "[@name='adj1' and @fmla='val 20493903']"); assertXPath(pXmlDocContent1, sPathAdj1 + "[@name='adj2' and @fmla='val 5400000']"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:noFill"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:noFill"_ostr); // slide 2 270° -> adj1 = 5400000, 180° -> adj2 = 10800000 xmlDocUniquePtr pXmlDocContent2 = parseExport("ppt/slides/slide2.xml"); @@ -613,7 +638,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf104792) assertXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst[1]/p:seq/p:cTn/p:childTnLst[1]/" "p:par[1]/p:cTn/p:childTnLst[1]/p:par/p:cTn/p:childTnLst[1]/p:par/p:cTn/" - "p:childTnLst[1]/p:set/p:cBhvr/p:tgtEl/p:spTgt", + "p:childTnLst[1]/p:set/p:cBhvr/p:tgtEl/p:spTgt"_ostr, 1); } @@ -627,7 +652,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf90627) assertXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst[1]/p:seq/p:cTn/p:childTnLst[1]/" "p:par[2]/p:cTn/p:childTnLst[1]/p:par/p:cTn/p:childTnLst[1]/p:par/p:cTn/" - "p:endCondLst[not(*)]", + "p:endCondLst[not(*)]"_ostr, 0); } @@ -641,7 +666,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf104786) assertXPath(pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst[1]/p:seq/p:cTn/p:childTnLst[1]/" "p:par[2]/p:cTn/p:childTnLst[1]/p:par/p:cTn/p:childTnLst[1]/p:par/p:cTn/" - "p:childTnLst/p:set[2]/p:to", + "p:childTnLst/p:set[2]/p:to"_ostr, 0); } @@ -652,7 +677,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf118783) xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); OUString sAttributeName - = getXPathContent(pXmlDocContent, "//p:animRot/p:cBhvr/p:attrNameLst/p:attrName"); + = getXPathContent(pXmlDocContent, "//p:animRot/p:cBhvr/p:attrNameLst/p:attrName"_ostr); CPPUNIT_ASSERT_EQUAL(OUString("r"), sAttributeName); } @@ -665,7 +690,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf104789) OUString sAttributeName = getXPathContent( pXmlDocContent, "/p:sld/p:timing/p:tnLst/p:par/p:cTn/p:childTnLst/p:seq/p:cTn/p:childTnLst/" "p:par/p:cTn/p:childTnLst/p:par/p:cTn/p:childTnLst/p:par/p:cTn/" - "p:childTnLst/p:set/p:cBhvr/p:attrNameLst/p:attrName"); + "p:childTnLst/p:set/p:cBhvr/p:attrNameLst/p:attrName"_ostr); CPPUNIT_ASSERT_EQUAL(OUString("style.opacity"), sAttributeName); } @@ -689,23 +714,23 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf118835) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "(//p:animClr)[1]", "clrSpc", "rgb"); - assertXPathContent(pXmlDocContent, "(//p:animClr)[1]//p:attrName", "style.color"); - assertXPath(pXmlDocContent, "(//p:animClr)[1]//p:to/a:srgbClr", "val", "ed1c24"); + assertXPath(pXmlDocContent, "(//p:animClr)[1]"_ostr, "clrSpc"_ostr, "rgb"); + assertXPathContent(pXmlDocContent, "(//p:animClr)[1]//p:attrName"_ostr, "style.color"); + assertXPath(pXmlDocContent, "(//p:animClr)[1]//p:to/a:srgbClr"_ostr, "val"_ostr, "ed1c24"); - assertXPath(pXmlDocContent, "(//p:animClr)[2]", "clrSpc", "rgb"); - assertXPathContent(pXmlDocContent, "(//p:animClr)[2]//p:attrName", "stroke.color"); - assertXPath(pXmlDocContent, "(//p:animClr)[2]//p:to/a:srgbClr", "val", "333399"); + assertXPath(pXmlDocContent, "(//p:animClr)[2]"_ostr, "clrSpc"_ostr, "rgb"); + assertXPathContent(pXmlDocContent, "(//p:animClr)[2]//p:attrName"_ostr, "stroke.color"); + assertXPath(pXmlDocContent, "(//p:animClr)[2]//p:to/a:srgbClr"_ostr, "val"_ostr, "333399"); - assertXPath(pXmlDocContent, "(//p:animClr)[3]", "clrSpc", "rgb"); - assertXPathContent(pXmlDocContent, "(//p:animClr)[3]//p:attrName", "fillcolor"); - assertXPath(pXmlDocContent, "(//p:animClr)[3]//p:to/a:srgbClr", "val", "fcd3c1"); + assertXPath(pXmlDocContent, "(//p:animClr)[3]"_ostr, "clrSpc"_ostr, "rgb"); + assertXPathContent(pXmlDocContent, "(//p:animClr)[3]//p:attrName"_ostr, "fillcolor"); + assertXPath(pXmlDocContent, "(//p:animClr)[3]//p:to/a:srgbClr"_ostr, "val"_ostr, "fcd3c1"); - assertXPath(pXmlDocContent, "(//p:animClr)[5]", "clrSpc", "hsl"); - assertXPathContent(pXmlDocContent, "(//p:animClr)[5]//p:attrName", "fillcolor"); - assertXPath(pXmlDocContent, "(//p:animClr)[5]//p:by/p:hsl", "h", "10800000"); - assertXPath(pXmlDocContent, "(//p:animClr)[5]//p:by/p:hsl", "s", "0"); - assertXPath(pXmlDocContent, "(//p:animClr)[5]//p:by/p:hsl", "l", "0"); + assertXPath(pXmlDocContent, "(//p:animClr)[5]"_ostr, "clrSpc"_ostr, "hsl"); + assertXPathContent(pXmlDocContent, "(//p:animClr)[5]//p:attrName"_ostr, "fillcolor"); + assertXPath(pXmlDocContent, "(//p:animClr)[5]//p:by/p:hsl"_ostr, "h"_ostr, "10800000"); + assertXPath(pXmlDocContent, "(//p:animClr)[5]//p:by/p:hsl"_ostr, "s"_ostr, "0"); + assertXPath(pXmlDocContent, "(//p:animClr)[5]//p:by/p:hsl"_ostr, "l"_ostr, "0"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf118768) @@ -714,15 +739,15 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf118768) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "//p:anim[1]", "from", "(-#ppt_w/2)"); - assertXPath(pXmlDocContent, "//p:anim[1]", "to", "(#ppt_x)"); - assertXPath(pXmlDocContent, "//p:anim[2]", "from", "0"); + assertXPath(pXmlDocContent, "//p:anim[1]"_ostr, "from"_ostr, "(-#ppt_w/2)"); + assertXPath(pXmlDocContent, "//p:anim[1]"_ostr, "to"_ostr, "(#ppt_x)"); + assertXPath(pXmlDocContent, "//p:anim[2]"_ostr, "from"_ostr, "0"); - assertXPath(pXmlDocContent, "//p:anim[2]", "to", "-1"); - assertXPath(pXmlDocContent, "//p:anim[2]/p:cBhvr/p:cTn", "autoRev", "1"); + assertXPath(pXmlDocContent, "//p:anim[2]"_ostr, "to"_ostr, "-1"); + assertXPath(pXmlDocContent, "//p:anim[2]/p:cBhvr/p:cTn"_ostr, "autoRev"_ostr, "1"); - assertXPath(pXmlDocContent, "//p:anim[3]", "by", "(#ppt_h/3+#ppt_w*0.1)"); - assertXPath(pXmlDocContent, "//p:anim[3]/p:cBhvr/p:cTn", "autoRev", "1"); + assertXPath(pXmlDocContent, "//p:anim[3]"_ostr, "by"_ostr, "(#ppt_h/3+#ppt_w*0.1)"); + assertXPath(pXmlDocContent, "//p:anim[3]/p:cBhvr/p:cTn"_ostr, "autoRev"_ostr, "1"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf118836) @@ -731,8 +756,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf118836) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "//p:animScale/p:by", "x", "250000"); - assertXPath(pXmlDocContent, "//p:animScale/p:by", "y", "250000"); + assertXPath(pXmlDocContent, "//p:animScale/p:by"_ostr, "x"_ostr, "250000"); + assertXPath(pXmlDocContent, "//p:animScale/p:by"_ostr, "y"_ostr, "250000"); } static double getAdjustmentValue(const uno::Reference<beans::XPropertySet>& xSet) @@ -820,9 +845,11 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf116350TextEffects) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "//p:sp[1]/p:txBody/a:bodyPr/a:prstTxWarp", "prst", "textArchUp"); - assertXPath(pXmlDocContent, "//p:sp[14]/p:txBody/a:bodyPr/a:prstTxWarp", "prst", "textCircle"); - assertXPath(pXmlDocContent, "//p:sp[14]/p:spPr/a:solidFill/a:srgbClr", 0); + assertXPath(pXmlDocContent, "//p:sp[1]/p:txBody/a:bodyPr/a:prstTxWarp"_ostr, "prst"_ostr, + "textArchUp"); + assertXPath(pXmlDocContent, "//p:sp[14]/p:txBody/a:bodyPr/a:prstTxWarp"_ostr, "prst"_ostr, + "textCircle"); + assertXPath(pXmlDocContent, "//p:sp[14]/p:spPr/a:solidFill/a:srgbClr"_ostr, 0); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf128096) @@ -832,14 +859,14 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf128096) xmlDocUniquePtr pXmlDocContent1 = parseExport("ppt/slides/slide1.xml"); assertXPath(pXmlDocContent1, - "//p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:r/a:rPr/a:highlight/a:srgbClr", "val", - "ffff00"); + "//p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:r/a:rPr/a:highlight/a:srgbClr"_ostr, + "val"_ostr, "ffff00"); // Check that underlined content is also highlighted xmlDocUniquePtr pXmlDocContent2 = parseExport("ppt/slides/slide2.xml"); assertXPath(pXmlDocContent2, - "//p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:r/a:rPr/a:highlight/a:srgbClr", "val", - "ffff00"); + "//p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:r/a:rPr/a:highlight/a:srgbClr"_ostr, + "val"_ostr, "ffff00"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf120573) { @@ -847,18 +874,19 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf120573) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc, "//p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:nvPr/a:audioFile", 1); - assertXPath(pXmlDoc, "//p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:nvPr/a:videoFile", 0); + assertXPath(pXmlDoc, "//p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:nvPr/a:audioFile"_ostr, 1); + assertXPath(pXmlDoc, "//p:sld/p:cSld/p:spTree/p:pic/p:nvPicPr/p:nvPr/a:videoFile"_ostr, 0); xmlDocUniquePtr pXmlDocRels = parseExport("ppt/slides/_rels/slide1.xml.rels"); assertXPath(pXmlDocRels, - "(/rels:Relationships/rels:Relationship[@Target='../media/media1.wav'])[1]", "Type", + "(/rels:Relationships/rels:Relationship[@Target='../media/media1.wav'])[1]"_ostr, + "Type"_ostr, "http://schemas.openxmlformats.org/officeDocument/2006/relationships/audio"); xmlDocUniquePtr pXmlContentType = parseExport("[Content_Types].xml"); assertXPath(pXmlContentType, - "/ContentType:Types/ContentType:Override[@PartName='/ppt/media/media1.wav']", - "ContentType", "audio/x-wav"); + "/ContentType:Types/ContentType:Override[@PartName='/ppt/media/media1.wav']"_ostr, + "ContentType"_ostr, "audio/x-wav"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf119118) @@ -866,8 +894,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf119118) createSdImpressDoc("pptx/tdf119118.pptx"); save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent, "//p:iterate", "type", "lt"); - assertXPath(pXmlDocContent, "//p:tmAbs", "val", "200"); + assertXPath(pXmlDocContent, "//p:iterate"_ostr, "type"_ostr, "lt"); + assertXPath(pXmlDocContent, "//p:tmAbs"_ostr, "val"_ostr, "200"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf99213) @@ -876,9 +904,9 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf99213) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); // Number of nodes with p:attrNameLst was 3, including one that missed tgtEl - assertXPath(pXmlDocContent, "//p:attrNameLst", 2); + assertXPath(pXmlDocContent, "//p:attrNameLst"_ostr, 2); // Timenode that miss its target element should be filtered. - assertXPath(pXmlDocContent, "//p:attrNameLst/preceding-sibling::p:tgtEl", 2); + assertXPath(pXmlDocContent, "//p:attrNameLst/preceding-sibling::p:tgtEl"_ostr, 2); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testPotxExport) @@ -893,8 +921,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testPotxExport) xmlDocUniquePtr pContentTypes = parseExport("[Content_Types].xml"); CPPUNIT_ASSERT(pContentTypes); assertXPath(pContentTypes, - "/ContentType:Types/ContentType:Override[@PartName='/ppt/presentation.xml']", - "ContentType", + "/ContentType:Types/ContentType:Override[@PartName='/ppt/presentation.xml']"_ostr, + "ContentType"_ostr, "application/vnd.openxmlformats-officedocument.presentationml.template.main+xml"); } @@ -913,31 +941,33 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf44223) xmlDocUniquePtr pXmlContentType = parseExport("[Content_Types].xml"); assertXPath(pXmlContentType, - "/ContentType:Types/ContentType:Override[@PartName='/ppt/media/audio1.wav']", - "ContentType", "audio/x-wav"); + "/ContentType:Types/ContentType:Override[@PartName='/ppt/media/audio1.wav']"_ostr, + "ContentType"_ostr, "audio/x-wav"); assertXPath(pXmlContentType, - "/ContentType:Types/ContentType:Override[@PartName='/ppt/media/audio2.wav']", - "ContentType", "audio/x-wav"); + "/ContentType:Types/ContentType:Override[@PartName='/ppt/media/audio2.wav']"_ostr, + "ContentType"_ostr, "audio/x-wav"); xmlDocUniquePtr pDoc1 = parseExport("ppt/slides/slide1.xml"); // tdf#124230 all nodes were under p:childTnLst, but event triggered nodes need // to be under p:subTnLst, especially for audio to work correctly. // Start condition: 0s after timenode id 5 begins. - assertXPath(pDoc1, "//p:subTnLst/p:audio/p:cMediaNode/p:cTn/p:stCondLst/p:cond", "evt", - "begin"); - assertXPath(pDoc1, "//p:subTnLst/p:audio/p:cMediaNode/p:cTn/p:stCondLst/p:cond", "delay", "0"); - assertXPath(pDoc1, "//p:subTnLst/p:audio/p:cMediaNode/p:cTn/p:stCondLst/p:cond/p:tn", "val", - "5"); + assertXPath(pDoc1, "//p:subTnLst/p:audio/p:cMediaNode/p:cTn/p:stCondLst/p:cond"_ostr, + "evt"_ostr, "begin"); + assertXPath(pDoc1, "//p:subTnLst/p:audio/p:cMediaNode/p:cTn/p:stCondLst/p:cond"_ostr, + "delay"_ostr, "0"); + assertXPath(pDoc1, "//p:subTnLst/p:audio/p:cMediaNode/p:cTn/p:stCondLst/p:cond/p:tn"_ostr, + "val"_ostr, "5"); xmlDocUniquePtr pDoc2 = parseExport("ppt/slides/slide2.xml"); - assertXPath(pDoc2, "//p:transition/p:sndAc/p:stSnd/p:snd[@r:embed]", 2); + assertXPath(pDoc2, "//p:transition/p:sndAc/p:stSnd/p:snd[@r:embed]"_ostr, 2); xmlDocUniquePtr pRels1 = parseExport("ppt/slides/_rels/slide1.xml.rels"); - assertXPath(pRels1, "//rels:Relationship[@Id='rId1']", "Type", + assertXPath(pRels1, "//rels:Relationship[@Id='rId1']"_ostr, "Type"_ostr, "http://schemas.openxmlformats.org/officeDocument/2006/relationships/audio"); - assertXPath(pRels1, "//rels:Relationship[@Id='rId1']", "Target", "../media/audio1.wav"); + assertXPath(pRels1, "//rels:Relationship[@Id='rId1']"_ostr, "Target"_ostr, + "../media/audio1.wav"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest3, testTdf135843) diff --git a/sd/qa/unit/export-tests-ooxml4.cxx b/sd/qa/unit/export-tests-ooxml4.cxx index fc83b4e5ac67..4a60941fa49f 100644 --- a/sd/qa/unit/export-tests-ooxml4.cxx +++ b/sd/qa/unit/export-tests-ooxml4.cxx @@ -43,49 +43,57 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testSmartArtPreserve) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc, "//p:sld/p:cSld/p:spTree/p:graphicFrame/p:nvGraphicFramePr/p:cNvPr"); + assertXPath(pXmlDoc, "//p:sld/p:cSld/p:spTree/p:graphicFrame/p:nvGraphicFramePr/p:cNvPr"_ostr); assertXPath(pXmlDoc, - "//p:sld/p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/dgm:relIds"); - assertXPath(pXmlDoc, - "//p:sld/p:cSld/p:spTree/p:graphicFrame/p:nvGraphicFramePr/p:nvPr/p:extLst/p:ext", - "uri", "{D42A27DB-BD31-4B8C-83A1-F6EECF244321}"); + "//p:sld/p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/dgm:relIds"_ostr); + assertXPath( + pXmlDoc, + "//p:sld/p:cSld/p:spTree/p:graphicFrame/p:nvGraphicFramePr/p:nvPr/p:extLst/p:ext"_ostr, + "uri"_ostr, "{D42A27DB-BD31-4B8C-83A1-F6EECF244321}"); assertXPath(pXmlDoc, "//p:sld/p:cSld/p:spTree/p:graphicFrame/p:nvGraphicFramePr/p:nvPr/" - "p:extLst/p:ext/p14:modId"); + "p:extLst/p:ext/p14:modId"_ostr); xmlDocUniquePtr pXmlDocRels = parseExport("ppt/slides/_rels/slide1.xml.rels"); assertXPath( pXmlDocRels, - "(/rels:Relationships/rels:Relationship[@Target='../diagrams/layout1.xml'])[1]", "Type", + "(/rels:Relationships/rels:Relationship[@Target='../diagrams/layout1.xml'])[1]"_ostr, + "Type"_ostr, "http://schemas.openxmlformats.org/officeDocument/2006/relationships/diagramLayout"); - assertXPath( - pXmlDocRels, "(/rels:Relationships/rels:Relationship[@Target='../diagrams/data1.xml'])[1]", - "Type", "http://schemas.openxmlformats.org/officeDocument/2006/relationships/diagramData"); + assertXPath(pXmlDocRels, + "(/rels:Relationships/rels:Relationship[@Target='../diagrams/data1.xml'])[1]"_ostr, + "Type"_ostr, + "http://schemas.openxmlformats.org/officeDocument/2006/relationships/diagramData"); assertXPath( pXmlDocRels, - "(/rels:Relationships/rels:Relationship[@Target='../diagrams/colors1.xml'])[1]", "Type", + "(/rels:Relationships/rels:Relationship[@Target='../diagrams/colors1.xml'])[1]"_ostr, + "Type"_ostr, "http://schemas.openxmlformats.org/officeDocument/2006/relationships/diagramColors"); assertXPath( pXmlDocRels, - "(/rels:Relationships/rels:Relationship[@Target='../diagrams/quickStyle1.xml'])[1]", "Type", + "(/rels:Relationships/rels:Relationship[@Target='../diagrams/quickStyle1.xml'])[1]"_ostr, + "Type"_ostr, "http://schemas.openxmlformats.org/officeDocument/2006/relationships/diagramQuickStyle"); xmlDocUniquePtr pXmlContentType = parseExport("[Content_Types].xml"); + assertXPath( + pXmlContentType, + "/ContentType:Types/ContentType:Override[@PartName='/ppt/diagrams/layout1.xml']"_ostr, + "ContentType"_ostr, + "application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml"); assertXPath(pXmlContentType, - "/ContentType:Types/ContentType:Override[@PartName='/ppt/diagrams/layout1.xml']", - "ContentType", - "application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml"); - assertXPath(pXmlContentType, - "/ContentType:Types/ContentType:Override[@PartName='/ppt/diagrams/data1.xml']", - "ContentType", + "/ContentType:Types/ContentType:Override[@PartName='/ppt/diagrams/data1.xml']"_ostr, + "ContentType"_ostr, "application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml"); - assertXPath(pXmlContentType, - "/ContentType:Types/ContentType:Override[@PartName='/ppt/diagrams/colors1.xml']", - "ContentType", - "application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml"); assertXPath( pXmlContentType, - "/ContentType:Types/ContentType:Override[@PartName='/ppt/diagrams/quickStyle1.xml']", - "ContentType", "application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml"); + "/ContentType:Types/ContentType:Override[@PartName='/ppt/diagrams/colors1.xml']"_ostr, + "ContentType"_ostr, + "application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml"); + assertXPath( + pXmlContentType, + "/ContentType:Types/ContentType:Override[@PartName='/ppt/diagrams/quickStyle1.xml']"_ostr, + "ContentType"_ostr, + "application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf125346) @@ -365,7 +373,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf128213) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPathNoAttribute(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:xfrm", "rot"); + assertXPathNoAttribute(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp/p:spPr/a:xfrm"_ostr, + "rot"_ostr); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf79082) @@ -375,36 +384,39 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf79082) xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[1]", "pos", - "360000"); + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[1]"_ostr, + "pos"_ostr, "360000"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[1]", "algn", "l"); + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[1]"_ostr, + "algn"_ostr, "l"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[2]", "pos", - "756000"); + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[2]"_ostr, + "pos"_ostr, "756000"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[2]", "algn", "l"); + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[2]"_ostr, + "algn"_ostr, "l"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[3]", "pos", - "1440000"); + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[3]"_ostr, + "pos"_ostr, "1440000"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[3]", "algn", - "ctr"); + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[3]"_ostr, + "algn"_ostr, "ctr"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[4]", "pos", - "1800000"); + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[4]"_ostr, + "pos"_ostr, "1800000"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[4]", "algn", "r"); + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[4]"_ostr, + "algn"_ostr, "r"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[5]", "pos", - "3240000"); + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[5]"_ostr, + "pos"_ostr, "3240000"); assertXPath(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[5]", "algn", - "dec"); + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:pPr/a:tabLst/a:tab[5]"_ostr, + "algn"_ostr, "dec"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf129372) @@ -517,14 +529,15 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf132201EffectOrder) createSdImpressDoc("pptx/effectOrder.pptx"); save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocContent = parseExport("ppt/slides/slide1.xml"); - assertXPathChildren(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:effectLst", 2); + assertXPathChildren(pXmlDocContent, "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:effectLst"_ostr, + 2); // The relative order of effects is important: glow must be before shadow - CPPUNIT_ASSERT_EQUAL(0, getXPathPosition(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:effectLst", - "glow")); - CPPUNIT_ASSERT_EQUAL(1, getXPathPosition(pXmlDocContent, - "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:effectLst", - "outerShdw")); + CPPUNIT_ASSERT_EQUAL( + 0, getXPathPosition(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:effectLst"_ostr, "glow")); + CPPUNIT_ASSERT_EQUAL( + 1, getXPathPosition(pXmlDocContent, + "/p:sld/p:cSld/p:spTree/p:sp[3]/p:spPr/a:effectLst"_ostr, "outerShdw")); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testShapeSoftEdgeEffect) @@ -556,19 +569,19 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf119223) save("Impress Office Open XML"); xmlDocUniquePtr pXmlDocRels = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocRels, "//p:cNvPr[@name='SomeCustomShape']"); + assertXPath(pXmlDocRels, "//p:cNvPr[@name='SomeCustomShape']"_ostr); - assertXPath(pXmlDocRels, "//p:cNvPr[@name='SomePicture']"); + assertXPath(pXmlDocRels, "//p:cNvPr[@name='SomePicture']"_ostr); - assertXPath(pXmlDocRels, "//p:cNvPr[@name='SomeFormula']"); + assertXPath(pXmlDocRels, "//p:cNvPr[@name='SomeFormula']"_ostr); - assertXPath(pXmlDocRels, "//p:cNvPr[@name='SomeLine']"); + assertXPath(pXmlDocRels, "//p:cNvPr[@name='SomeLine']"_ostr); - assertXPath(pXmlDocRels, "//p:cNvPr[@name='SomeTextbox']"); + assertXPath(pXmlDocRels, "//p:cNvPr[@name='SomeTextbox']"_ostr); - assertXPath(pXmlDocRels, "//p:cNvPr[@name='SomeTable']"); + assertXPath(pXmlDocRels, "//p:cNvPr[@name='SomeTable']"_ostr); - assertXPath(pXmlDocRels, "//p:cNvPr[@name='SomeGroup']"); + assertXPath(pXmlDocRels, "//p:cNvPr[@name='SomeGroup']"_ostr); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf128213ShapeRot) @@ -578,10 +591,10 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf128213ShapeRot) xmlDocUniquePtr pXmlDocRels = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocRels, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:bodyPr/a:scene3d"); + assertXPath(pXmlDocRels, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:bodyPr/a:scene3d"_ostr); assertXPath(pXmlDocRels, - "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:bodyPr/a:scene3d/a:camera/a:rot", "rev", - "5400000"); + "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:bodyPr/a:scene3d/a:camera/a:rot"_ostr, + "rev"_ostr, "5400000"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf125560_textDeflate) @@ -594,8 +607,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf125560_textDeflate) xmlDocUniquePtr pXmlDocRels = parseExport("content.xml"); assertXPath(pXmlDocRels, "/office:document-content/office:body/office:presentation/draw:page/" - "draw:custom-shape/draw:enhanced-geometry", - "type", "mso-spt161"); + "draw:custom-shape/draw:enhanced-geometry"_ostr, + "type"_ostr, "mso-spt161"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf125560_textInflateTop) @@ -608,8 +621,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf125560_textInflateTop) xmlDocUniquePtr pXmlDocRels = parseExport("content.xml"); assertXPath(pXmlDocRels, "/office:document-content/office:body/office:presentation/draw:page/" - "draw:custom-shape/draw:enhanced-geometry", - "type", "mso-spt164"); + "draw:custom-shape/draw:enhanced-geometry"_ostr, + "type"_ostr, "mso-spt164"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf142235_TestPlaceholderTextAlignment) @@ -623,8 +636,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf142235_TestPlaceholderTextAlignm // Without the fix in place many of these asserts failed, because alignment was bad. - assertXPath(pXml1, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:bodyPr", "anchor", "t"); - assertXPath(pXml2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:bodyPr", "anchor", "t"); + assertXPath(pXml1, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:bodyPr"_ostr, "anchor"_ostr, "t"); + assertXPath(pXml2, "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:bodyPr"_ostr, "anchor"_ostr, "t"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf96061_textHighlight) @@ -700,12 +713,14 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf143315) // - Actual : 216000 // - In <file:///tmp/lu161922zcvd.tmp>, XPath '/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:pPr' unexpected 'marL' attribute - assertXPathNoAttribute(pXml, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:pPr", "marL"); - assertXPathNoAttribute(pXml, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:pPr", "indent"); - assertXPath(pXml, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:pPr/a:buClr", 0); - assertXPath(pXml, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:pPr/a:buSzPct", 0); - assertXPath(pXml, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:pPr/a:buFont", 0); - assertXPath(pXml, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:pPr/a:buChar", 0); + assertXPathNoAttribute(pXml, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:pPr"_ostr, + "marL"_ostr); + assertXPathNoAttribute(pXml, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:pPr"_ostr, + "indent"_ostr); + assertXPath(pXml, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:pPr/a:buClr"_ostr, 0); + assertXPath(pXml, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:pPr/a:buSzPct"_ostr, 0); + assertXPath(pXml, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:pPr/a:buFont"_ostr, 0); + assertXPath(pXml, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:pPr/a:buChar"_ostr, 0); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf147121) @@ -727,7 +742,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf147121) // Parse the export xmlDocUniquePtr pXml = parseExport("ppt/slides/slide1.xml"); const auto nFontSizeAfter - = getXPath(pXml, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:br[1]/a:rPr", "sz").toFloat(); + = getXPath(pXml, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:br[1]/a:rPr"_ostr, "sz"_ostr) + .toFloat(); // The font size was not saved before now it must be equal with the saved one. CPPUNIT_ASSERT_EQUAL_MESSAGE("Unexpected font size", nFontSizeBefore, nFontSizeAfter); @@ -876,7 +892,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf149551_tbrl90) // Test, that it is exported to vert="vert" save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc, "//a:bodyPr", "vert", "vert"); + assertXPath(pXmlDoc, "//a:bodyPr"_ostr, "vert"_ostr, "vert"); // Test, that the shape has writing mode TB_RL90 after read from pptx uno::Reference<beans::XPropertySet> xShapeProps2(getShapeFromPage(0, 0)); @@ -889,7 +905,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf149551_tbrl90) pXmlDoc = parseExport("content.xml"); assertXPath( pXmlDoc, - "//style:style[@style:name='gr1']/style:graphic-properties[@loext:writing-mode='tb-rl90']"); + "//style:style[@style:name='gr1']/style:graphic-properties[@loext:writing-mode='tb-rl90']"_ostr); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf149551_btlr) @@ -908,7 +924,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf149551_btlr) // Test, that it is exported to vert="vert270" save("Impress Office Open XML"); xmlDocUniquePtr pXmlDoc = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDoc, "//a:bodyPr", "vert", "vert270"); + assertXPath(pXmlDoc, "//a:bodyPr"_ostr, "vert"_ostr, "vert270"); // Test, that the shape has writing mode BT_LR after read from pptx uno::Reference<beans::XPropertySet> xShapeProps2(getShapeFromPage(0, 0)); @@ -921,7 +937,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf149551_btlr) pXmlDoc = parseExport("content.xml"); assertXPath( pXmlDoc, - "//style:style[@style:name='gr1']/style:graphic-properties[@loext:writing-mode='bt-lr']"); + "//style:style[@style:name='gr1']/style:graphic-properties[@loext:writing-mode='bt-lr']"_ostr); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf94122_autoColor) @@ -945,21 +961,21 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf94122_autoColor) xmlDocUniquePtr pXmlDocContent1 = parseExport("ppt/slides/slide1.xml"); assertXPath(pXmlDocContent1, - "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:r/a:rPr/a:solidFill/a:srgbClr", "val", - "000000"); + "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:r/a:rPr/a:solidFill/a:srgbClr"_ostr, + "val"_ostr, "000000"); xmlDocUniquePtr pXmlDocContent2 = parseExport("ppt/slides/slide2.xml"); assertXPath(pXmlDocContent2, - "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:r/a:rPr/a:solidFill/a:srgbClr", "val", - "ffffff"); + "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:r/a:rPr/a:solidFill/a:srgbClr"_ostr, + "val"_ostr, "ffffff"); xmlDocUniquePtr pXmlDocContent3 = parseExport("ppt/slides/slide3.xml"); assertXPath(pXmlDocContent3, - "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:p/a:r/a:rPr/a:solidFill/a:srgbClr", - "val", "ffffff"); + "/p:sld/p:cSld/p:spTree/p:sp[1]/p:txBody/a:p/a:r/a:rPr/a:solidFill/a:srgbClr"_ostr, + "val"_ostr, "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", "000000"); + "/p:sld/p:cSld/p:spTree/p:sp[2]/p:txBody/a:p/a:r/a:rPr/a:solidFill/a:srgbClr"_ostr, + "val"_ostr, "000000"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf124333) @@ -989,8 +1005,8 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testAutofittedTextboxIndent) // (the behaviour changed). xmlDocUniquePtr pXmlDocContent1 = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p[1]/a:pPr", "marL", - "1080000"); + assertXPath(pXmlDocContent1, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p[1]/a:pPr"_ostr, + "marL"_ostr, "1080000"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf151622_oleIcon) @@ -1005,7 +1021,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf151622_oleIcon) // - Expression: prop // - In ..., XPath '//p:oleObj' no attribute 'showAsIcon' exist // i.e. show as icon option wasn't exported. - assertXPath(pXml, "//p:oleObj", "showAsIcon", "1"); + assertXPath(pXml, "//p:oleObj"_ostr, "showAsIcon"_ostr, "1"); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf152436) @@ -1030,7 +1046,7 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testLinkedOLE) // - Actual : 0 // - In<>, XPath '//p:oleObj' number of nodes is incorrect // i.e. the linked ole object wasn't exported. - assertXPath(pXml, "//p:oleObj", 1); + assertXPath(pXml, "//p:oleObj"_ostr, 1); } CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTdf102261_testParaTabStopDefaultDistance) @@ -1062,9 +1078,9 @@ CPPUNIT_TEST_FIXTURE(SdOOXMLExportTest4, testTableCellVerticalPropertyRoundtrip) xmlDocUniquePtr pXml = parseExport("ppt/slides/slide1.xml"); - assertXPath(pXml, "(//a:tcPr)[1]", "vert", "vert"); - assertXPath(pXml, "(//a:tcPr)[2]", "vert", "vert270"); - assertXPath(pXml, "(//a:tcPr)[3]", "vert", "wordArtVert"); + assertXPath(pXml, "(//a:tcPr)[1]"_ostr, "vert"_ostr, "vert"); + assertXPath(pXml, "(//a:tcPr)[2]"_ostr, "vert"_ostr, "vert270"); + assertXPath(pXml, "(//a:tcPr)[3]"_ostr, "vert"_ostr, "wordArtVert"); } CPPUNIT_PLUGIN_IMPLEMENT(); diff --git a/sd/qa/unit/export-tests.cxx b/sd/qa/unit/export-tests.cxx index 9d9ba03f14a9..c39d110c3022 100644 --- a/sd/qa/unit/export-tests.cxx +++ b/sd/qa/unit/export-tests.cxx @@ -205,16 +205,16 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testDecorative) auto doTest = [this](OString const test) { ::std::set<OString> const decorative = { - "Picture 6", - "Rectangle 7", - "Group 24", - "Connector: Elbow 9", - "Connector: Elbow 11", - "Connector: Elbow 14", - "Connector: Elbow 17", - "Straight Arrow Connector 21", - "Straight Arrow Connector 22", - "Straight Arrow Connector 23", + "Picture 6"_ostr, + "Rectangle 7"_ostr, + "Group 24"_ostr, + "Connector: Elbow 9"_ostr, + "Connector: Elbow 11"_ostr, + "Connector: Elbow 14"_ostr, + "Connector: Elbow 17"_ostr, + "Straight Arrow Connector 21"_ostr, + "Straight Arrow Connector 22"_ostr, + "Straight Arrow Connector 23"_ostr, }; uno::Reference<drawing::XDrawPage> const xPage(getPage(0)); @@ -276,13 +276,13 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testDecorative) nInnerShapes); }; - doTest("initial pptx load: "); + doTest("initial pptx load: "_ostr); saveAndReload("Impress Office Open XML"); - doTest("reload OOXML: "); + doTest("reload OOXML: "_ostr); saveAndReload("impress8"); - doTest("reload ODF: "); + doTest("reload ODF: "_ostr); } CPPUNIT_TEST_FIXTURE(SdExportTest, testTdf142716) @@ -323,71 +323,73 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testFillBitmapUnused) // shapes assertXPath( pXmlDoc, - "//style:style[@style:family='graphic']/style:graphic-properties[@draw:fill='bitmap']", 1); + "//style:style[@style:family='graphic']/style:graphic-properties[@draw:fill='bitmap']"_ostr, + 1); assertXPath( pXmlDoc, - "//style:style[@style:family='graphic']/style:graphic-properties[@draw:fill='bitmap']", - "fill-image-name", "nav_5f_up"); + "//style:style[@style:family='graphic']/style:graphic-properties[@draw:fill='bitmap']"_ostr, + "fill-image-name"_ostr, "nav_5f_up"); assertXPath( pXmlDoc, - "//style:style[@style:family='graphic']/style:graphic-properties[@draw:fill='solid']", 1); + "//style:style[@style:family='graphic']/style:graphic-properties[@draw:fill='solid']"_ostr, + 1); assertXPath(pXmlDoc, "//style:style[@style:family='graphic']/" - "style:graphic-properties[@draw:fill='solid' and @draw:fill-image-name]", + "style:graphic-properties[@draw:fill='solid' and @draw:fill-image-name]"_ostr, 0); assertXPath( pXmlDoc, - "//style:style[@style:family='graphic']/style:graphic-properties[@draw:fill='solid']", - "fill-color", "#808080"); + "//style:style[@style:family='graphic']/style:graphic-properties[@draw:fill='solid']"_ostr, + "fill-color"_ostr, "#808080"); xmlDocUniquePtr pStyles = parseExport("styles.xml"); // master slide presentation style assertXPath(pStyles, "/office:document-styles/office:styles/style:style[@style:family='presentation' " - "and @style:name='Default-background']/style:graphic-properties", - "fill", "bitmap"); + "and @style:name='Default-background']/style:graphic-properties"_ostr, + "fill"_ostr, "bitmap"); assertXPath(pStyles, "/office:document-styles/office:styles/style:style[@style:family='presentation' " - "and @style:name='Default-background']/style:graphic-properties", - "fill-image-name", "nav_5f_up"); + "and @style:name='Default-background']/style:graphic-properties"_ostr, + "fill-image-name"_ostr, "nav_5f_up"); assertXPath(pStyles, "/office:document-styles/office:styles/style:style[@style:family='presentation' " - "and @style:name='Default_20_1-background']/style:graphic-properties", - "fill", "solid"); + "and @style:name='Default_20_1-background']/style:graphic-properties"_ostr, + "fill"_ostr, "solid"); assertXPath(pStyles, "/office:document-styles/office:styles/style:style[@style:family='presentation' " - "and @style:name='Default_20_1-background']/style:graphic-properties", - "fill-color", "#808080"); + "and @style:name='Default_20_1-background']/style:graphic-properties"_ostr, + "fill-color"_ostr, "#808080"); assertXPath( pStyles, "/office:document-styles/office:styles/style:style[@style:family='presentation' and " - "@style:name='Default_20_1-background']/style:graphic-properties[@draw:fill-image-name]", + "@style:name='Default_20_1-background']/style:graphic-properties[@draw:fill-image-name]"_ostr, 0); // master slide drawing-page style assertXPath(pStyles, "/office:document-styles/office:automatic-styles/style:style[@style:name='Mdp1']/" - "style:drawing-page-properties", - "fill", "bitmap"); + "style:drawing-page-properties"_ostr, + "fill"_ostr, "bitmap"); assertXPath(pStyles, "/office:document-styles/office:automatic-styles/style:style[@style:name='Mdp1']/" - "style:drawing-page-properties", - "fill-image-name", "nav_5f_up"); + "style:drawing-page-properties"_ostr, + "fill-image-name"_ostr, "nav_5f_up"); assertXPath(pStyles, "/office:document-styles/office:automatic-styles/style:style[@style:name='Mdp2']/" - "style:drawing-page-properties", - "fill", "solid"); + "style:drawing-page-properties"_ostr, + "fill"_ostr, "solid"); assertXPath(pStyles, "/office:document-styles/office:automatic-styles/style:style[@style:name='Mdp2']/" - "style:drawing-page-properties", - "fill-color", "#808080"); + "style:drawing-page-properties"_ostr, + "fill-color"_ostr, "#808080"); assertXPath(pStyles, "/office:document-styles/office:automatic-styles/style:style[@style:name='Mdp2']/" - "style:drawing-page-properties[@draw:fill-image-name]", + "style:drawing-page-properties[@draw:fill-image-name]"_ostr, 0); // the named items - assertXPath(pStyles, "/office:document-styles/office:styles/draw:fill-image", 1); - assertXPath(pStyles, "/office:document-styles/office:styles/draw:fill-image", "name", + assertXPath(pStyles, "/office:document-styles/office:styles/draw:fill-image"_ostr, 1); + assertXPath(pStyles, "/office:document-styles/office:styles/draw:fill-image"_ostr, "name"_ostr, "nav_5f_up"); } @@ -466,28 +468,28 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testTdf97630) assertXPath(pXmlDoc, "//style:style[@style:family='presentation']/" "style:graphic-properties[@draw:fit-to-size='false' and " - "@style:shrink-to-fit='false']", + "@style:shrink-to-fit='false']"_ostr, 1); assertXPath(pXmlDoc, "//style:style[@style:family='presentation']/" "style:graphic-properties[@draw:fit-to-size='true' and " - "@style:shrink-to-fit='false']", + "@style:shrink-to-fit='false']"_ostr, 2); assertXPath(pXmlDoc, "//style:style[@style:family='presentation']/" "style:graphic-properties[@draw:fit-to-size='false' and " - "@style:shrink-to-fit='true']", + "@style:shrink-to-fit='true']"_ostr, 1); // fontworks assertXPath(pXmlDoc, "//style:style[@style:family='graphic']/" "style:graphic-properties[@draw:fit-to-size='false' and " - "@style:shrink-to-fit='false']", + "@style:shrink-to-fit='false']"_ostr, 1); assertXPath(pXmlDoc, "//style:style[@style:family='graphic']/" "style:graphic-properties[@draw:fit-to-size='true' and " - "@style:shrink-to-fit='false']", + "@style:shrink-to-fit='false']"_ostr, 1); } @@ -585,9 +587,9 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testOOoXMLAnimations) // the problem was that legacy OOoXML animations were lost if store // immediately follows load because they were "converted" async by a timer xmlDocUniquePtr pXmlDoc = parseExport("content.xml"); - assertXPath(pXmlDoc, "//anim:par[@presentation:node-type='timing-root']", 26); + assertXPath(pXmlDoc, "//anim:par[@presentation:node-type='timing-root']"_ostr, 26); // currently getting 52 of these without the fix (depends on timing) - assertXPath(pXmlDoc, "//anim:par", 223); + assertXPath(pXmlDoc, "//anim:par"_ostr, 223); } CPPUNIT_TEST_FIXTURE(SdExportTest, testBnc480256) @@ -655,11 +657,11 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testUnknownAttributes) xmlDocUniquePtr pXmlDoc = parseExport("content.xml"); assertXPath(pXmlDoc, "/office:document-content/office:automatic-styles/" "style:style[@style:name='gr1']/" - "style:graphic-properties[@foo:non-existent-att='bar']"); + "style:graphic-properties[@foo:non-existent-att='bar']"_ostr); // TODO: if the namespace is *known*, the attribute is not preserved, but that seems to be a pre-existing problem, or maybe it's even intentional? // assertXPath(pXmlDoc, "/office:document-content/office:automatic-styles/style:style[@style:name='gr1']/style:graphic-properties[@svg:non-existent-att='blah']"); // this was on style:graphic-properties on the import, but the export moves it to root node which is OK - assertXPathNSDef(pXmlDoc, "/office:document-content", u"foo", u"http://example.com/"); + assertXPathNSDef(pXmlDoc, "/office:document-content"_ostr, u"foo", u"http://example.com/"); } CPPUNIT_TEST_FIXTURE(SdExportTest, testTdf80020) @@ -790,31 +792,32 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testTdf79082) // P1 should have 6 tab stops defined assertXPathChildren( - pXmlDoc, "//style:style[@style:name='P1']/style:paragraph-properties/style:tab-stops", 6); + pXmlDoc, "//style:style[@style:name='P1']/style:paragraph-properties/style:tab-stops"_ostr, + 6); assertXPath(pXmlDoc, "//style:style[@style:name='P1']/style:paragraph-properties/style:tab-stops/" - "style:tab-stop[1]", - "position", "0cm"); + "style:tab-stop[1]"_ostr, + "position"_ostr, "0cm"); assertXPath(pXmlDoc, "//style:style[@style:name='P1']/style:paragraph-properties/style:tab-stops/" - "style:tab-stop[2]", - "position", "5.08cm"); + "style:tab-stop[2]"_ostr, + "position"_ostr, "5.08cm"); assertXPath(pXmlDoc, "//style:style[@style:name='P1']/style:paragraph-properties/style:tab-stops/" - "style:tab-stop[3]", - "position", "10.16cm"); + "style:tab-stop[3]"_ostr, + "position"_ostr, "10.16cm"); assertXPath(pXmlDoc, "//style:style[@style:name='P1']/style:paragraph-properties/style:tab-stops/" - "style:tab-stop[4]", - "position", "15.24cm"); + "style:tab-stop[4]"_ostr, + "position"_ostr, "15.24cm"); assertXPath(pXmlDoc, "//style:style[@style:name='P1']/style:paragraph-properties/style:tab-stops/" - "style:tab-stop[5]", - "position", "20.32cm"); + "style:tab-stop[5]"_ostr, + "position"_ostr, "20.32cm"); assertXPath(pXmlDoc, "//style:style[@style:name='P1']/style:paragraph-properties/style:tab-stops/" - "style:tab-stop[6]", - "position", "25.4cm"); + "style:tab-stop[6]"_ostr, + "position"_ostr, "25.4cm"); } CPPUNIT_TEST_FIXTURE(SdExportTest, testImageWithSpecialID) @@ -1001,7 +1004,7 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testTdf98477) save("impress8"); xmlDocUniquePtr pXmlDoc = parseExport("content.xml"); - assertXPath(pXmlDoc, "//anim:animateTransform", "by", "0.5,0.5"); + assertXPath(pXmlDoc, "//anim:animateTransform"_ostr, "by"_ostr, "0.5,0.5"); } CPPUNIT_TEST_FIXTURE(SdExportTest, testAuthorField) @@ -1026,9 +1029,9 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testTdf50499) save("impress8"); xmlDocUniquePtr pXmlDoc = parseExport("content.xml"); - assertXPath(pXmlDoc, "//anim:animate[1]", "from", "(-width/2)"); - assertXPath(pXmlDoc, "//anim:animate[1]", "to", "(x)"); - assertXPath(pXmlDoc, "//anim:animate[3]", "by", "(height/3+width*0.1)"); + assertXPath(pXmlDoc, "//anim:animate[1]"_ostr, "from"_ostr, "(-width/2)"); + assertXPath(pXmlDoc, "//anim:animate[1]"_ostr, "to"_ostr, "(x)"); + assertXPath(pXmlDoc, "//anim:animate[3]"_ostr, "by"_ostr, "(height/3+width*0.1)"); } CPPUNIT_TEST_FIXTURE(SdExportTest, testTdf100926) @@ -1333,11 +1336,11 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testTdf113822) // IterateContainer was created as ParallelTimeContainer before, so // the iterate type is not set too. - assertXPath(pXmlDoc, "//anim:iterate", "iterate-type", "by-letter"); + assertXPath(pXmlDoc, "//anim:iterate"_ostr, "iterate-type"_ostr, "by-letter"); // The target of the child animation nodes need to be in the iterate container. - assertXPath(pXmlDoc, "//anim:iterate", "targetElement", "id1"); - assertXPath(pXmlDoc, "//anim:iterate/anim:set", "attributeName", "text-underline"); - assertXPath(pXmlDoc, "//anim:iterate/anim:set", "to", "solid"); + assertXPath(pXmlDoc, "//anim:iterate"_ostr, "targetElement"_ostr, "id1"); + assertXPath(pXmlDoc, "//anim:iterate/anim:set"_ostr, "attributeName"_ostr, "text-underline"); + assertXPath(pXmlDoc, "//anim:iterate/anim:set"_ostr, "to"_ostr, "solid"); } CPPUNIT_TEST_FIXTURE(SdExportTest, testTdf113818) @@ -1348,8 +1351,8 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testTdf113818) save("impress8"); xmlDocUniquePtr pXmlDoc = parseExport("content.xml"); - assertXPath(pXmlDoc, "//anim:animate[1]", "formula", "width*sin(2.5*pi*$)"); - assertXPath(pXmlDoc, "//anim:animate[1]", "values", "0;1"); + assertXPath(pXmlDoc, "//anim:animate[1]"_ostr, "formula"_ostr, "width*sin(2.5*pi*$)"); + assertXPath(pXmlDoc, "//anim:animate[1]"_ostr, "values"_ostr, "0;1"); } CPPUNIT_TEST_FIXTURE(SdExportTest, testTdf119629) @@ -1369,7 +1372,7 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testTdf119629) "/anim:par[@presentation:node-type='on-click']" "/anim:par[@presentation:node-type='with-previous']" "/anim:par[@presentation:node-type='on-click']" - "/anim:animate[@anim:formula='width*sin(2.5*pi*$)']", + "/anim:animate[@anim:formula='width*sin(2.5*pi*$)']"_ostr, 1); } @@ -1407,18 +1410,18 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testTdf123557) xmlDocUniquePtr pXmlDoc = parseExport("content.xml"); // Contains 2 interactive sequences and 3 triggered effects. - assertXPath(pXmlDoc, "//draw:page", 1); - assertXPath(pXmlDoc, "//draw:page/anim:par", 1); + assertXPath(pXmlDoc, "//draw:page"_ostr, 1); + assertXPath(pXmlDoc, "//draw:page/anim:par"_ostr, 1); assertXPath(pXmlDoc, "//draw:page" "/anim:par[@presentation:node-type='timing-root']" - "/anim:seq[@presentation:node-type='interactive-sequence']", + "/anim:seq[@presentation:node-type='interactive-sequence']"_ostr, 2); assertXPath(pXmlDoc, "//draw:page" "/anim:par[@presentation:node-type='timing-root']" "/anim:seq[@presentation:node-type='interactive-sequence']" - "/anim:par[@smil:begin]", + "/anim:par[@smil:begin]"_ostr, 3); } @@ -1462,21 +1465,21 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testGlow) xmlDocUniquePtr pXmlDoc = parseExport("content.xml"); // check that we actually test graphic style - assertXPath(pXmlDoc, "/office:document-content/office:automatic-styles/style:style[2]", - "family", "graphic"); + assertXPath(pXmlDoc, "/office:document-content/office:automatic-styles/style:style[2]"_ostr, + "family"_ostr, "graphic"); // check loext graphic attributes assertXPath( pXmlDoc, - "/office:document-content/office:automatic-styles/style:style[2]/style:graphic-properties", - "glow-radius", "0.529cm"); + "/office:document-content/office:automatic-styles/style:style[2]/style:graphic-properties"_ostr, + "glow-radius"_ostr, "0.529cm"); assertXPath( pXmlDoc, - "/office:document-content/office:automatic-styles/style:style[2]/style:graphic-properties", - "glow-color", "#ff4000"); + "/office:document-content/office:automatic-styles/style:style[2]/style:graphic-properties"_ostr, + "glow-color"_ostr, "#ff4000"); assertXPath( pXmlDoc, - "/office:document-content/office:automatic-styles/style:style[2]/style:graphic-properties", - "glow-transparency", "60%"); + "/office:document-content/office:automatic-styles/style:style[2]/style:graphic-properties"_ostr, + "glow-transparency"_ostr, "60%"); } CPPUNIT_TEST_FIXTURE(SdExportTest, testSoftEdges) @@ -1494,13 +1497,13 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testSoftEdges) xmlDocUniquePtr pXmlDoc = parseExport("content.xml"); // check that we actually test graphic style - assertXPath(pXmlDoc, "/office:document-content/office:automatic-styles/style:style[2]", - "family", "graphic"); + assertXPath(pXmlDoc, "/office:document-content/office:automatic-styles/style:style[2]"_ostr, + "family"_ostr, "graphic"); // check loext graphic attribute assertXPath( pXmlDoc, - "/office:document-content/office:automatic-styles/style:style[2]/style:graphic-properties", - "softedge-radius", "0.635cm"); + "/office:document-content/office:automatic-styles/style:style[2]/style:graphic-properties"_ostr, + "softedge-radius"_ostr, "0.635cm"); } CPPUNIT_TEST_FIXTURE(SdExportTest, testShadowBlur) @@ -1515,12 +1518,12 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testShadowBlur) xmlDocUniquePtr pXmlDoc = parseExport("content.xml"); - assertXPath(pXmlDoc, "/office:document-content/office:automatic-styles/style:style[3]", - "family", "graphic"); + assertXPath(pXmlDoc, "/office:document-content/office:automatic-styles/style:style[3]"_ostr, + "family"_ostr, "graphic"); assertXPath( pXmlDoc, - "/office:document-content/office:automatic-styles/style:style[3]/style:graphic-properties", - "shadow-blur", "0.388cm"); + "/office:document-content/office:automatic-styles/style:style[3]/style:graphic-properties"_ostr, + "shadow-blur"_ostr, "0.388cm"); } CPPUNIT_TEST_FIXTURE(SdExportTest, testRhbz1870501) @@ -1562,8 +1565,8 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testTdf128550) createSdImpressDoc("pptx/tdf128550.pptx"); save("impress8"); xmlDocUniquePtr pXmlDoc = parseExport("content.xml"); - assertXPath(pXmlDoc, "//anim:iterate[@anim:sub-item='background']", 1); - assertXPath(pXmlDoc, "//anim:iterate[@anim:sub-item='text']", 4); + assertXPath(pXmlDoc, "//anim:iterate[@anim:sub-item='background']"_ostr, 1); + assertXPath(pXmlDoc, "//anim:iterate[@anim:sub-item='text']"_ostr, 4); } CPPUNIT_TEST_FIXTURE(SdExportTest, testTdf140714) @@ -1753,29 +1756,29 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testMasterPageBackgroundFullSize) "style:style[@style:family='drawing-page' and @style:name = " "/office:document-styles/office:master-styles/" "style:master-page[@style:name='Default']/attribute::draw:style-name" - "]/style:drawing-page-properties", - "background-size", "border"); + "]/style:drawing-page-properties"_ostr, + "background-size"_ostr, "border"); assertXPath(pXmlDoc, "/office:document-styles/office:automatic-styles/" "style:style[@style:family='drawing-page' and @style:name = " "/office:document-styles/office:master-styles/" "style:master-page[@style:name='Default_20_3']/attribute::draw:style-name" - "]/style:drawing-page-properties", - "background-size", "full"); + "]/style:drawing-page-properties"_ostr, + "background-size"_ostr, "full"); assertXPath(pXmlDoc, "/office:document-styles/office:automatic-styles/" "style:style[@style:family='drawing-page' and @style:name = " "/office:document-styles/office:master-styles/" "style:master-page[@style:name='Default_20_2']/attribute::draw:style-name" - "]/style:drawing-page-properties", - "background-size", "border"); + "]/style:drawing-page-properties"_ostr, + "background-size"_ostr, "border"); assertXPath(pXmlDoc, "/office:document-styles/office:automatic-styles/" "style:style[@style:family='drawing-page' and @style:name = " "/office:document-styles/office:master-styles/" "style:master-page[@style:name='Default_20_1']/attribute::draw:style-name" - "]/style:drawing-page-properties", - "background-size", "full"); + "]/style:drawing-page-properties"_ostr, + "background-size"_ostr, "full"); } CPPUNIT_TEST_FIXTURE(SdExportTest, testColumnsODG) @@ -1831,12 +1834,12 @@ CPPUNIT_TEST_FIXTURE(SdExportTest, testColumnsODG) xmlDocUniquePtr pXmlDoc = parseExport("content.xml"); assertXPath(pXmlDoc, "/office:document-content/office:automatic-styles/style:style/" - "style:graphic-properties/style:columns", - "column-count", "2"); + "style:graphic-properties/style:columns"_ostr, + "column-count"_ostr, "2"); assertXPath(pXmlDoc, "/office:document-content/office:automatic-styles/style:style/" - "style:graphic-properties/style:columns", - "column-gap", "0.7cm"); + "style:graphic-properties/style:columns"_ostr, + "column-gap"_ostr, "0.7cm"); } CPPUNIT_TEST_FIXTURE(SdExportTest, testTdf112126) diff --git a/sd/qa/unit/layout-tests.cxx b/sd/qa/unit/layout-tests.cxx index 7fdcfe19f90d..81e5521ab308 100644 --- a/sd/qa/unit/layout-tests.cxx +++ b/sd/qa/unit/layout-tests.cxx @@ -42,9 +42,9 @@ CPPUNIT_TEST_FIXTURE(SdLayoutTest, testTdf104722) // Without the fix in place, this would have failed with // - Expected: 2093 // - Actual : -10276 - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[1]", "x", "2093"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[1]"_ostr, "x"_ostr, "2093"); - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[1]", "y", "9273"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[1]"_ostr, "y"_ostr, "9273"); } CPPUNIT_TEST_FIXTURE(SdLayoutTest, testTdf135843) @@ -54,11 +54,15 @@ CPPUNIT_TEST_FIXTURE(SdLayoutTest, testTdf135843) // Without the fix, the test fails with: // - Expected: 21165 // - Actual : 4218 - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[5]/polyline[1]/point[1]", "x", "21165"); - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[5]/polyline[1]/point[1]", "y", "3866"); - - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[5]/polyline[1]/point[2]", "x", "21165"); - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[5]/polyline[1]/point[2]", "y", "5956"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[5]/polyline[1]/point[1]"_ostr, "x"_ostr, + "21165"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[5]/polyline[1]/point[1]"_ostr, "y"_ostr, + "3866"); + + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[5]/polyline[1]/point[2]"_ostr, "x"_ostr, + "21165"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[5]/polyline[1]/point[2]"_ostr, "y"_ostr, + "5956"); } CPPUNIT_TEST_FIXTURE(SdLayoutTest, testTdf146876) @@ -72,8 +76,8 @@ CPPUNIT_TEST_FIXTURE(SdLayoutTest, testTdf146876) { const OString xPath = "/metafile/push[1]/push[1]/push[" + OString::number(i) + "]/polyline/point[" + OString::number(j) + "]"; - const sal_Int32 nX = getXPath(pXmlDoc, xPath, "x").toInt32(); - const sal_Int32 nY = getXPath(pXmlDoc, xPath, "y").toInt32(); + const sal_Int32 nX = getXPath(pXmlDoc, xPath, "x"_ostr).toInt32(); + const sal_Int32 nY = getXPath(pXmlDoc, xPath, "y"_ostr).toInt32(); // Without the fix in place, this test would have failed with // - Expected greater or equal than: 5000 @@ -94,8 +98,10 @@ CPPUNIT_TEST_FIXTURE(SdLayoutTest, testTdf136949) // Without the fix in place, this test would have failed with // - Expected: 13687 // - Actual : 2832 - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[7]/polyline/point[1]", "x", "13687"); - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[7]/polyline/point[2]", "x", "24759"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[7]/polyline/point[1]"_ostr, "x"_ostr, + "13687"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[7]/polyline/point[2]"_ostr, "x"_ostr, + "24759"); } CPPUNIT_TEST_FIXTURE(SdLayoutTest, testTdf128212) @@ -105,8 +111,8 @@ CPPUNIT_TEST_FIXTURE(SdLayoutTest, testTdf128212) // Without the fix in place, this test would have failed with // - Expected: 7792 // - Actual : 12068 - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray", "x", "4520"); - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray", "y", "7792"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray"_ostr, "x"_ostr, "4520"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray"_ostr, "y"_ostr, "7792"); } CPPUNIT_TEST_FIXTURE(SdLayoutTest, testColumnsLayout) @@ -194,10 +200,10 @@ CPPUNIT_TEST_FIXTURE(SdLayoutTest, testColumnsLayout) const auto & [ sentence, index, length, x, y ] = strings[i]; OString sXPath = "/metafile/push[1]/push[1]/textarray[" + OString::number(i + 1) + "]"; assertXPathContent(pXmlDoc, sXPath + "/text", sText[sentence]); - assertXPath(pXmlDoc, sXPath, "index", OUString::number(index)); - assertXPath(pXmlDoc, sXPath, "length", OUString::number(length)); - assertXPath(pXmlDoc, sXPath, "x", OUString::number(x)); - assertXPath(pXmlDoc, sXPath, "y", OUString::number(y)); + assertXPath(pXmlDoc, sXPath, "index"_ostr, OUString::number(index)); + assertXPath(pXmlDoc, sXPath, "length"_ostr, OUString::number(length)); + assertXPath(pXmlDoc, sXPath, "x"_ostr, OUString::number(x)); + assertXPath(pXmlDoc, sXPath, "y"_ostr, OUString::number(y)); } } @@ -231,25 +237,25 @@ CPPUNIT_TEST_FIXTURE(SdLayoutTest, tdf143258_testTbRlLayout) xmlDocUniquePtr pXmlDoc = load("odg/tb-rl-textbox.odg"); - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/font", SAL_N_ELEMENTS(strings)); - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray", SAL_N_ELEMENTS(strings)); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/font"_ostr, SAL_N_ELEMENTS(strings)); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray"_ostr, SAL_N_ELEMENTS(strings)); for (size_t i = 0; i < SAL_N_ELEMENTS(strings); ++i) { const auto & [ sentence, index, length, x, y ] = strings[i]; OString sXPath = "/metafile/push[1]/push[1]/font[" + OString::number(i + 1) + "]"; - assertXPath(pXmlDoc, sXPath, "orientation", "-900"); - assertXPath(pXmlDoc, sXPath, "vertical", "true"); + assertXPath(pXmlDoc, sXPath, "orientation"_ostr, "-900"); + assertXPath(pXmlDoc, sXPath, "vertical"_ostr, "true"); sXPath = "/metafile/push[1]/push[1]/textarray[" + OString::number(i + 1) + "]"; assertXPathContent(pXmlDoc, sXPath + "/text", sText[sentence]); - assertXPath(pXmlDoc, sXPath, "index", OUString::number(index)); - assertXPath(pXmlDoc, sXPath, "length", OUString::number(length)); + assertXPath(pXmlDoc, sXPath, "index"_ostr, OUString::number(index)); + assertXPath(pXmlDoc, sXPath, "length"_ostr, OUString::number(length)); // Without the fix in place, this would have failed with // - Expected: 5346 // - Actual : 503924 // - In <>, attribute 'x' of '/metafile/push[1]/push[1]/textarray[1]' incorrect value. - assertXPath(pXmlDoc, sXPath, "x", OUString::number(x)); - assertXPath(pXmlDoc, sXPath, "y", OUString::number(y)); + assertXPath(pXmlDoc, sXPath, "x"_ostr, OUString::number(x)); + assertXPath(pXmlDoc, sXPath, "y"_ostr, OUString::number(y)); } } @@ -257,15 +263,15 @@ CPPUNIT_TEST_FIXTURE(SdLayoutTest, testTdf146731) { xmlDocUniquePtr pXmlDoc = load("pptx/tdf146731.pptx"); - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[3]/polyline[1]", "width", "187"); - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[4]/polyline[1]", "width", "187"); - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[5]/polyline[1]", "width", "187"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[3]/polyline[1]"_ostr, "width"_ostr, "187"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[4]/polyline[1]"_ostr, "width"_ostr, "187"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[5]/polyline[1]"_ostr, "width"_ostr, "187"); // Without the fix in place, this test would have failed with // - Expected: 30 // - Actual : 187 - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[6]/polyline[1]", "width", "30"); - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[7]/polyline[1]", "width", "187"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[6]/polyline[1]"_ostr, "width"_ostr, "30"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[7]/polyline[1]"_ostr, "width"_ostr, "187"); } CPPUNIT_TEST_FIXTURE(SdLayoutTest, testTdf135843_InsideHBorders) @@ -277,7 +283,7 @@ CPPUNIT_TEST_FIXTURE(SdLayoutTest, testTdf135843_InsideHBorders) //- Actual : 36 // We shouldn't see two vertical borders inside the table on ui. - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push", 34); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push"_ostr, 34); } CPPUNIT_TEST_FIXTURE(SdLayoutTest, testBnc480256) @@ -289,7 +295,8 @@ CPPUNIT_TEST_FIXTURE(SdLayoutTest, testBnc480256) //- Actual : #ffffff // We should see the red vertical border inside the table. - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[8]/linecolor[1]", "color", "#ff0000"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/push[8]/linecolor[1]"_ostr, "color"_ostr, + "#ff0000"); } CPPUNIT_TEST_FIXTURE(SdLayoutTest, testFitToFrameTextFitting) @@ -306,11 +313,13 @@ CPPUNIT_TEST_FIXTURE(SdLayoutTest, testFitToFrameTextFitting) xmlDocUniquePtr pXmlDoc = load("odg/FitToFrameText.odg"); - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[1]", "x", "0"); - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[1]", "y", "406"); - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[1]/dxarray", "first", "110"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[1]"_ostr, "x"_ostr, "0"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[1]"_ostr, "y"_ostr, "406"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[1]/dxarray"_ostr, "first"_ostr, + "110"); #ifndef _WIN32 // Windows seems to differ in text layouting, so ignore for now - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[1]/dxarray", "last", "6981"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[1]/dxarray"_ostr, "last"_ostr, + "6981"); #endif } @@ -323,7 +332,7 @@ CPPUNIT_TEST_FIXTURE(SdLayoutTest, testTdf148966) // - Expected: 5952 // - Actual : 7814 // i.e. Line break after multiline field should have been ignored. - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[3]", "y", "5952"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[3]"_ostr, "y"_ostr, "5952"); } { xmlDocUniquePtr pXmlDoc = load("odp/tdf148966-withflag.odp"); @@ -332,11 +341,11 @@ CPPUNIT_TEST_FIXTURE(SdLayoutTest, testTdf148966) // - Actual : 7814 // i.e. When IgnoreBreakAfterMultilineField flag is set, line break // after multiline field should have been ignored. - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[3]", "y", "5952"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[3]"_ostr, "y"_ostr, "5952"); } { xmlDocUniquePtr pXmlDoc = load("odp/tdf148966-withoutflag.odp"); - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[3]", "y", "7814"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[3]"_ostr, "y"_ostr, "7814"); } } @@ -350,8 +359,8 @@ CPPUNIT_TEST_FIXTURE(SdLayoutTest, testTableVerticalText) // - In <>, attribute 'orientation' of '//font[1]' incorrect value. // i.e. table cell text that was supposed to be vertical (rotated 90 // degrees) was not vertical. - assertXPath(pXmlDoc, "//font[1]", "orientation", "-900"); - assertXPath(pXmlDoc, "//font[2]", "orientation", "900"); + assertXPath(pXmlDoc, "//font[1]"_ostr, "orientation"_ostr, "-900"); + assertXPath(pXmlDoc, "//font[2]"_ostr, "orientation"_ostr, "900"); } CPPUNIT_TEST_FIXTURE(SdLayoutTest, testTdf112594) @@ -365,9 +374,9 @@ CPPUNIT_TEST_FIXTURE(SdLayoutTest, testTdf112594) // - Expected: 4 // - Actual : 3 // - In <>, attribute 'length' of '/metafile/push[1]/push[1]/textarray[3]' incorrect value. - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[3]", "index", "0"); - assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[3]", "length", "4"); - assertXPathContent(pXmlDoc, "/metafile/push[1]/push[1]/textarray[3]/text", + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[3]"_ostr, "index"_ostr, "0"); + assertXPath(pXmlDoc, "/metafile/push[1]/push[1]/textarray[3]"_ostr, "length"_ostr, "4"); + assertXPathContent(pXmlDoc, "/metafile/push[1]/push[1]/textarray[3]/text"_ostr, u"11\u202f\u1824"_ustr); } diff --git a/sd/qa/unit/misc-tests.cxx b/sd/qa/unit/misc-tests.cxx index 36259c17355a..1bbf8364fd3e 100644 --- a/sd/qa/unit/misc-tests.cxx +++ b/sd/qa/unit/misc-tests.cxx @@ -773,7 +773,8 @@ void SdMiscTest::testTdf98839_ShearVFlipH() static constexpr OString sPathStart( "/office:document-content/office:body/office:drawing/draw:page"_ostr); assertXPath(pXmlDoc, sPathStart); - const OUString sTransform = getXPath(pXmlDoc, sPathStart + "/draw:custom-shape", "transform"); + const OUString sTransform + = getXPath(pXmlDoc, sPathStart + "/draw:custom-shape", "transform"_ostr); // Error was, that the shear angle had a wrong sign. CPPUNIT_ASSERT_MESSAGE("expected: draw:transform='skewX (-0.64350...)", diff --git a/sd/qa/unit/tiledrendering/LOKitSearchTest.cxx b/sd/qa/unit/tiledrendering/LOKitSearchTest.cxx index 2ba0a8f27848..0081fdfae938 100644 --- a/sd/qa/unit/tiledrendering/LOKitSearchTest.cxx +++ b/sd/qa/unit/tiledrendering/LOKitSearchTest.cxx @@ -205,9 +205,9 @@ void LOKitSearchTest::testSearchAll() lcl_search("match", /*bFindAll=*/true); // This was empty: find-all did not highlight the first match. - CPPUNIT_ASSERT_EQUAL(OString("match"), + CPPUNIT_ASSERT_EQUAL("match"_ostr, apitest::helper::transferable::getTextSelection( - pXImpressDocument->getSelection(), "text/plain;charset=utf-8")); + pXImpressDocument->getSelection(), "text/plain;charset=utf-8"_ostr)); // We're on the first slide, search for something on the second slide and make sure we get a SET_PART. mpCallbackRecorder->m_nPart = 0; @@ -253,9 +253,9 @@ void LOKitSearchTest::testSearchAllFollowedBySearch() // This used to give wrong result: 'search' after 'search all' still // returned 'third' - CPPUNIT_ASSERT_EQUAL(OString("match"), + CPPUNIT_ASSERT_EQUAL("match"_ostr, apitest::helper::transferable::getTextSelection( - pXImpressDocument->getSelection(), "text/plain;charset=utf-8")); + pXImpressDocument->getSelection(), "text/plain;charset=utf-8"_ostr)); } void LOKitSearchTest::testDontSearchInMasterPages() @@ -336,7 +336,7 @@ void LOKitSearchTest::testSearchInPDF() CPPUNIT_ASSERT_EQUAL(1, mpCallbackRecorder->m_nSearchResultCount); CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultSelection.size()); - CPPUNIT_ASSERT_EQUAL(OString("3763, 1331, 1432, 483"), + CPPUNIT_ASSERT_EQUAL("3763, 1331, 1432, 483"_ostr, mpCallbackRecorder->m_aSearchResultSelection[0]); CPPUNIT_ASSERT_EQUAL(tools::Rectangle(Point(3763, 1331), Size(1433, 484)), mpCallbackRecorder->m_aSelection[0]); @@ -348,7 +348,7 @@ void LOKitSearchTest::testSearchInPDF() CPPUNIT_ASSERT_EQUAL(2, mpCallbackRecorder->m_nSearchResultCount); CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultSelection.size()); - CPPUNIT_ASSERT_EQUAL(OString("3763, 1331, 1432, 483"), + CPPUNIT_ASSERT_EQUAL("3763, 1331, 1432, 483"_ostr, mpCallbackRecorder->m_aSearchResultSelection[0]); CPPUNIT_ASSERT_EQUAL(tools::Rectangle(Point(3763, 1331), Size(1433, 484)), mpCallbackRecorder->m_aSelection[0]); @@ -433,7 +433,7 @@ void LOKitSearchTest::testSearchInPDFInMultiplePages() CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultPart.size()); CPPUNIT_ASSERT_EQUAL(0, mpCallbackRecorder->m_aSearchResultPart[0]); - CPPUNIT_ASSERT_EQUAL(OString("9463, 3382, 1099, 499"), + CPPUNIT_ASSERT_EQUAL("9463, 3382, 1099, 499"_ostr, mpCallbackRecorder->m_aSearchResultSelection[0]); // Search for "him" @@ -446,7 +446,7 @@ void LOKitSearchTest::testSearchInPDFInMultiplePages() CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultPart.size()); CPPUNIT_ASSERT_EQUAL(0, mpCallbackRecorder->m_aSearchResultPart[0]); - CPPUNIT_ASSERT_EQUAL(OString("5592, 5038, 1100, 499"), + CPPUNIT_ASSERT_EQUAL("5592, 5038, 1100, 499"_ostr, mpCallbackRecorder->m_aSearchResultSelection[0]); // Search for "him" @@ -459,7 +459,7 @@ void LOKitSearchTest::testSearchInPDFInMultiplePages() CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultPart.size()); CPPUNIT_ASSERT_EQUAL(1, mpCallbackRecorder->m_aSearchResultPart[0]); - CPPUNIT_ASSERT_EQUAL(OString("9463, 1308, 1099, 499"), + CPPUNIT_ASSERT_EQUAL("9463, 1308, 1099, 499"_ostr, mpCallbackRecorder->m_aSearchResultSelection[0]); // Search for "him" @@ -472,7 +472,7 @@ void LOKitSearchTest::testSearchInPDFInMultiplePages() CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultPart.size()); CPPUNIT_ASSERT_EQUAL(1, mpCallbackRecorder->m_aSearchResultPart[0]); - CPPUNIT_ASSERT_EQUAL(OString("5592, 2964, 1100, 499"), + CPPUNIT_ASSERT_EQUAL("5592, 2964, 1100, 499"_ostr, mpCallbackRecorder->m_aSearchResultSelection[0]); // Search for "him" - back to start @@ -485,7 +485,7 @@ void LOKitSearchTest::testSearchInPDFInMultiplePages() CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultPart.size()); CPPUNIT_ASSERT_EQUAL(0, mpCallbackRecorder->m_aSearchResultPart[0]); - CPPUNIT_ASSERT_EQUAL(OString("9463, 3382, 1099, 499"), + CPPUNIT_ASSERT_EQUAL("9463, 3382, 1099, 499"_ostr, mpCallbackRecorder->m_aSearchResultSelection[0]); } @@ -536,7 +536,7 @@ void LOKitSearchTest::testSearchInPDFInMultiplePagesBackwards() CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultPart.size()); CPPUNIT_ASSERT_EQUAL(0, mpCallbackRecorder->m_aSearchResultPart[0]); - CPPUNIT_ASSERT_EQUAL(OString("5592, 5038, 1100, 499"), + CPPUNIT_ASSERT_EQUAL("5592, 5038, 1100, 499"_ostr, mpCallbackRecorder->m_aSearchResultSelection[0]); // Search for "him" @@ -549,7 +549,7 @@ void LOKitSearchTest::testSearchInPDFInMultiplePagesBackwards() CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultPart.size()); CPPUNIT_ASSERT_EQUAL(0, mpCallbackRecorder->m_aSearchResultPart[0]); - CPPUNIT_ASSERT_EQUAL(OString("9463, 3382, 1099, 499"), + CPPUNIT_ASSERT_EQUAL("9463, 3382, 1099, 499"_ostr, mpCallbackRecorder->m_aSearchResultSelection[0]); // Search for "him" @@ -562,7 +562,7 @@ void LOKitSearchTest::testSearchInPDFInMultiplePagesBackwards() CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultPart.size()); CPPUNIT_ASSERT_EQUAL(1, mpCallbackRecorder->m_aSearchResultPart[0]); - CPPUNIT_ASSERT_EQUAL(OString("5592, 2964, 1100, 499"), + CPPUNIT_ASSERT_EQUAL("5592, 2964, 1100, 499"_ostr, mpCallbackRecorder->m_aSearchResultSelection[0]); // Search for "him" @@ -575,7 +575,7 @@ void LOKitSearchTest::testSearchInPDFInMultiplePagesBackwards() CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultPart.size()); CPPUNIT_ASSERT_EQUAL(1, mpCallbackRecorder->m_aSearchResultPart[0]); - CPPUNIT_ASSERT_EQUAL(OString("9463, 1308, 1099, 499"), + CPPUNIT_ASSERT_EQUAL("9463, 1308, 1099, 499"_ostr, mpCallbackRecorder->m_aSearchResultSelection[0]); // Search for "him" - back to start @@ -588,7 +588,7 @@ void LOKitSearchTest::testSearchInPDFInMultiplePagesBackwards() CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultPart.size()); CPPUNIT_ASSERT_EQUAL(0, mpCallbackRecorder->m_aSearchResultPart[0]); - CPPUNIT_ASSERT_EQUAL(OString("5592, 5038, 1100, 499"), + CPPUNIT_ASSERT_EQUAL("5592, 5038, 1100, 499"_ostr, mpCallbackRecorder->m_aSearchResultSelection[0]); } @@ -653,7 +653,7 @@ void LOKitSearchTest::testSearchIn2MixedObjects() CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultSelection.size()); CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultPart.size()); - CPPUNIT_ASSERT_EQUAL(OString("3546, 3174, 738, 402"), + CPPUNIT_ASSERT_EQUAL("3546, 3174, 738, 402"_ostr, mpCallbackRecorder->m_aSearchResultSelection[0]); // Search next @@ -666,7 +666,7 @@ void LOKitSearchTest::testSearchIn2MixedObjects() CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultSelection.size()); CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultPart.size()); - CPPUNIT_ASSERT_EQUAL(OString("8412, 6385, 519, 174"), + CPPUNIT_ASSERT_EQUAL("8412, 6385, 519, 174"_ostr, mpCallbackRecorder->m_aSearchResultSelection[0]); // Search next again - we should get the first object again @@ -679,7 +679,7 @@ void LOKitSearchTest::testSearchIn2MixedObjects() CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultSelection.size()); CPPUNIT_ASSERT_EQUAL(size_t(1), mpCallbackRecorder->m_aSearchResultPart.size()); - CPPUNIT_ASSERT_EQUAL(OString("3546, 3174, 738, 402"), + CPPUNIT_ASSERT_EQUAL("3546, 3174, 738, 402"_ostr, mpCallbackRecorder->m_aSearchResultSelection[0]); } diff --git a/sd/qa/unit/tiledrendering/tiledrendering.cxx b/sd/qa/unit/tiledrendering/tiledrendering.cxx index 8bf43891b697..dd0182ef8ea2 100644 --- a/sd/qa/unit/tiledrendering/tiledrendering.cxx +++ b/sd/qa/unit/tiledrendering/tiledrendering.cxx @@ -406,10 +406,10 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testGetTextSelection) ESelection aWordSelection(0, 0, 0, 5); rEditView.SetSelection(aWordSelection); // Did we indeed manage to copy the selected text? - CPPUNIT_ASSERT_EQUAL(OString("Shape"), apitest::helper::transferable::getTextSelection(pXImpressDocument->getSelection(), "text/plain;charset=utf-8")); + CPPUNIT_ASSERT_EQUAL("Shape"_ostr, apitest::helper::transferable::getTextSelection(pXImpressDocument->getSelection(), "text/plain;charset=utf-8"_ostr)); // Make sure returned RTF is not empty. - CPPUNIT_ASSERT(!apitest::helper::transferable::getTextSelection(pXImpressDocument->getSelection(), "text/rtf").isEmpty()); + CPPUNIT_ASSERT(!apitest::helper::transferable::getTextSelection(pXImpressDocument->getSelection(), "text/rtf"_ostr).isEmpty()); } CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testSetGraphicSelection) @@ -730,9 +730,9 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testResizeTableColumn) // Remember the original cell widths. xmlDocUniquePtr pXmlDoc = parseXmlDump(); - OString aPrefix = "/SdDrawDocument/SdrModel/maPages/SdPage/SdrPage/SdrObjList/SdrTableObj/SdrTableObjImpl/TableLayouter/columns/"; - sal_Int32 nExpectedColumn1 = getXPath(pXmlDoc, aPrefix + "TableLayouter_Layout[1]", "size").toInt32(); - sal_Int32 nExpectedColumn2 = getXPath(pXmlDoc, aPrefix + "TableLayouter_Layout[2]", "size").toInt32(); + OString aPrefix = "/SdDrawDocument/SdrModel/maPages/SdPage/SdrPage/SdrObjList/SdrTableObj/SdrTableObjImpl/TableLayouter/columns/"_ostr; + sal_Int32 nExpectedColumn1 = getXPath(pXmlDoc, aPrefix + "TableLayouter_Layout[1]", "size"_ostr).toInt32(); + sal_Int32 nExpectedColumn2 = getXPath(pXmlDoc, aPrefix + "TableLayouter_Layout[2]", "size"_ostr).toInt32(); pXmlDoc = nullptr; // Resize the left column, decrease its width by 1 cm. @@ -742,9 +742,9 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testResizeTableColumn) // Remember the resized column widths. pXmlDoc = parseXmlDump(); - sal_Int32 nResizedColumn1 = getXPath(pXmlDoc, aPrefix + "TableLayouter_Layout[1]", "size").toInt32(); + sal_Int32 nResizedColumn1 = getXPath(pXmlDoc, aPrefix + "TableLayouter_Layout[1]", "size"_ostr).toInt32(); CPPUNIT_ASSERT(nResizedColumn1 < nExpectedColumn1); - sal_Int32 nResizedColumn2 = getXPath(pXmlDoc, aPrefix + "TableLayouter_Layout[2]", "size").toInt32(); + sal_Int32 nResizedColumn2 = getXPath(pXmlDoc, aPrefix + "TableLayouter_Layout[2]", "size"_ostr).toInt32(); CPPUNIT_ASSERT(nResizedColumn2 > nExpectedColumn2); pXmlDoc = nullptr; @@ -753,10 +753,10 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testResizeTableColumn) // Check the undo result. pXmlDoc = parseXmlDump(); - sal_Int32 nActualColumn1 = getXPath(pXmlDoc, aPrefix + "TableLayouter_Layout[1]", "size").toInt32(); + sal_Int32 nActualColumn1 = getXPath(pXmlDoc, aPrefix + "TableLayouter_Layout[1]", "size"_ostr).toInt32(); // Expected was 7049, actual was 6048, i.e. the first column width after undo was 1cm smaller than expected. CPPUNIT_ASSERT_EQUAL(nExpectedColumn1, nActualColumn1); - sal_Int32 nActualColumn2 = getXPath(pXmlDoc, aPrefix + "TableLayouter_Layout[2]", "size").toInt32(); + sal_Int32 nActualColumn2 = getXPath(pXmlDoc, aPrefix + "TableLayouter_Layout[2]", "size"_ostr).toInt32(); CPPUNIT_ASSERT_EQUAL(nExpectedColumn2, nActualColumn2); pXmlDoc = nullptr; } @@ -1569,8 +1569,8 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testTdf104405) getXPath( pXmlDoc, "/SdDrawDocument/SdrModel/maPages/SdPage/SdrPage/SdrObjList/SdrTableObj/SdrTableObjImpl" - "/TableModel/Cell[1]/DefaultProperties/SfxItemSet/SdrTextVertAdjustItem", - "value")); + "/TableModel/Cell[1]/DefaultProperties/SfxItemSet/SdrTextVertAdjustItem"_ostr, + "value"_ostr)); } CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testTdf81754) @@ -1638,8 +1638,8 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testTdf105502) // Assert that the selected A1 has now a larger font than the unselected // A2. xmlDocUniquePtr pXmlDoc = parseXmlDump(); - sal_Int32 nA1Height = getXPath(pXmlDoc, "//Cell[1]/SdrText/OutlinerParaObject/EditTextObject/ContentInfo/SfxItemSet/SvxFontHeightItem[1]", "height").toInt32(); - sal_Int32 nA2Height = getXPath(pXmlDoc, "//Cell[3]/SdrText/OutlinerParaObject/EditTextObject/ContentInfo/attribs[1]/SvxFontHeightItem", "height").toInt32(); + sal_Int32 nA1Height = getXPath(pXmlDoc, "//Cell[1]/SdrText/OutlinerParaObject/EditTextObject/ContentInfo/SfxItemSet/SvxFontHeightItem[1]"_ostr, "height"_ostr).toInt32(); + sal_Int32 nA2Height = getXPath(pXmlDoc, "//Cell[3]/SdrText/OutlinerParaObject/EditTextObject/ContentInfo/attribs[1]/SvxFontHeightItem"_ostr, "height"_ostr).toInt32(); // This failed when FuText::ChangeFontSize() never did "continue" in the // text loop, instead of doing so depending on what IsInSelection() returns. CPPUNIT_ASSERT(nA1Height > nA2Height); @@ -2163,7 +2163,7 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testIMESupport) SfxCallMode::SYNCHRON, { &aInputString }); // sequence of chinese IME compositions when 'nihao' is typed in an IME - const std::vector<OString> aUtf8Inputs{ "年", "你", "你好", "你哈", "你好", "你好" }; + const std::vector<OString> aUtf8Inputs{ "年"_ostr, "你"_ostr, "你好"_ostr, "你哈"_ostr, "你好"_ostr, "你好"_ostr }; std::vector<OUString> aInputs; std::transform(aUtf8Inputs.begin(), aUtf8Inputs.end(), std::back_inserter(aInputs), [](OString aInput) { @@ -2398,11 +2398,11 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testGetViewRenderState) SdXImpressDocument* pXImpressDocument = createDoc("dummy.odp"); int nFirstViewId = SfxLokHelper::getView(); ViewCallback aView1; - CPPUNIT_ASSERT_EQUAL(OString(";Default"), pXImpressDocument->getViewRenderState()); + CPPUNIT_ASSERT_EQUAL(";Default"_ostr, pXImpressDocument->getViewRenderState()); // Create a second view SfxLokHelper::createView(); ViewCallback aView2; - CPPUNIT_ASSERT_EQUAL(OString(";Default"), pXImpressDocument->getViewRenderState()); + CPPUNIT_ASSERT_EQUAL(";Default"_ostr, pXImpressDocument->getViewRenderState()); // Set to dark scheme { uno::Sequence<beans::PropertyValue> aPropertyValues = comphelper::InitPropertySequence( @@ -2412,10 +2412,10 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testGetViewRenderState) ); dispatchCommand(mxComponent, ".uno:ChangeTheme", aPropertyValues); } - CPPUNIT_ASSERT_EQUAL(OString(";Dark"), pXImpressDocument->getViewRenderState()); + CPPUNIT_ASSERT_EQUAL(";Dark"_ostr, pXImpressDocument->getViewRenderState()); // Switch back to the first view, and check that the options string is the same SfxLokHelper::setView(nFirstViewId); - CPPUNIT_ASSERT_EQUAL(OString(";Default"), pXImpressDocument->getViewRenderState()); + CPPUNIT_ASSERT_EQUAL(";Default"_ostr, pXImpressDocument->getViewRenderState()); } // Helper function to get a tile to a bitmap and check the pixel color diff --git a/sd/source/filter/eppt/pptx-epptooxml.cxx b/sd/source/filter/eppt/pptx-epptooxml.cxx index ef87fcc81a8a..6cb5e277ee87 100644 --- a/sd/source/filter/eppt/pptx-epptooxml.cxx +++ b/sd/source/filter/eppt/pptx-epptooxml.cxx @@ -1883,7 +1883,7 @@ ShapeExport& PowerPointShapeExport::WritePlaceholderShape(const Reference< XShap // visual shape properties mpFS->startElementNS(XML_p, XML_spPr); WriteShapeTransformation(xShape, XML_a); - WritePresetShape("rect"); + WritePresetShape("rect"_ostr); if (xProps.is()) { WriteBlipFill(xProps, "Graphic"); diff --git a/sd/source/ui/app/sdmod.cxx b/sd/source/ui/app/sdmod.cxx index c7d56831dbb2..22f566706c46 100644 --- a/sd/source/ui/app/sdmod.cxx +++ b/sd/source/ui/app/sdmod.cxx @@ -55,7 +55,7 @@ void SdModule::InitInterface_Impl() // Ctor SdModule::SdModule(SfxObjectFactory* pFact1, SfxObjectFactory* pFact2 ) -: SfxModule("sd", {pFact1, pFact2}), +: SfxModule("sd"_ostr, {pFact1, pFact2}), pTransferClip(nullptr), pTransferDrag(nullptr), pTransferSelection(nullptr), diff --git a/sd/source/ui/remotecontrol/Communicator.cxx b/sd/source/ui/remotecontrol/Communicator.cxx index 65e40925d8a7..0618675559db 100644 --- a/sd/source/ui/remotecontrol/Communicator.cxx +++ b/sd/source/ui/remotecontrol/Communicator.cxx @@ -53,10 +53,10 @@ void Communicator::execute() pTransmitter.reset( new Transmitter( mpSocket.get() ) ); pTransmitter->create(); - pTransmitter->addMessage( "LO_SERVER_SERVER_PAIRED\n\n", + pTransmitter->addMessage( "LO_SERVER_SERVER_PAIRED\n\n"_ostr, Transmitter::PRIORITY_HIGH ); - pTransmitter->addMessage( "LO_SERVER_INFO\n" LIBO_VERSION_DOTTED "\n\n", + pTransmitter->addMessage( "LO_SERVER_INFO\n" LIBO_VERSION_DOTTED "\n\n"_ostr, Transmitter::PRIORITY_HIGH ); Receiver aReceiver( pTransmitter.get() ); @@ -82,7 +82,7 @@ void Communicator::execute() } else { - pTransmitter->addMessage( "slideshow_finished\n\n", + pTransmitter->addMessage( "slideshow_finished\n\n"_ostr, Transmitter::PRIORITY_HIGH ); } } @@ -131,7 +131,7 @@ void Communicator::informListenerDestroyed() // during disposal of this communicator if ( pTransmitter ) - pTransmitter->addMessage( "slideshow_finished\n\n", + pTransmitter->addMessage( "slideshow_finished\n\n"_ostr, Transmitter::PRIORITY_HIGH ); } diff --git a/sd/source/ui/remotecontrol/ImagePreparer.cxx b/sd/source/ui/remotecontrol/ImagePreparer.cxx index 55cdca4d1976..c3738d894217 100644 --- a/sd/source/ui/remotecontrol/ImagePreparer.cxx +++ b/sd/source/ui/remotecontrol/ImagePreparer.cxx @@ -181,7 +181,7 @@ OString ImagePreparer::prepareNotes( sal_uInt32 aSlideNumber ) OUStringBuffer aRet; if ( !xController->isRunning() ) - return ""; + return ""_ostr; uno::Reference<css::drawing::XDrawPage> aNotesPage; uno::Reference< drawing::XDrawPage > xSourceDoc( @@ -192,7 +192,7 @@ OString ImagePreparer::prepareNotes( sal_uInt32 aSlideNumber ) if (xPresentationPage.is()) aNotesPage = xPresentationPage->getNotesPage(); else - return ""; + return ""_ostr; static constexpr OUString sNotesShapeName ( u"com.sun.star.presentation.NotesShape"_ustr ); diff --git a/sd/source/ui/view/ViewShellBase.cxx b/sd/source/ui/view/ViewShellBase.cxx index 6c083b2ef45c..9e8e7b1aa5d4 100644 --- a/sd/source/ui/view/ViewShellBase.cxx +++ b/sd/source/ui/view/ViewShellBase.cxx @@ -253,9 +253,9 @@ ViewShellBase::ViewShellBase ( ViewShellBase::~ViewShellBase() { // Notify other LOK views that we are going away. - SfxLokHelper::notifyOtherViews(this, LOK_CALLBACK_VIEW_CURSOR_VISIBLE, "visible", "false"); - SfxLokHelper::notifyOtherViews(this, LOK_CALLBACK_TEXT_VIEW_SELECTION, "selection", ""); - SfxLokHelper::notifyOtherViews(this, LOK_CALLBACK_GRAPHIC_VIEW_SELECTION, "selection", "EMPTY"); + SfxLokHelper::notifyOtherViews(this, LOK_CALLBACK_VIEW_CURSOR_VISIBLE, "visible", "false"_ostr); + SfxLokHelper::notifyOtherViews(this, LOK_CALLBACK_TEXT_VIEW_SELECTION, "selection", ""_ostr); + SfxLokHelper::notifyOtherViews(this, LOK_CALLBACK_GRAPHIC_VIEW_SELECTION, "selection", "EMPTY"_ostr); sfx2::SfxNotebookBar::CloseMethod(GetFrame()->GetBindings()); diff --git a/sd/source/ui/view/drviews1.cxx b/sd/source/ui/view/drviews1.cxx index 309a5d5ed3cc..a48ab7a11546 100644 --- a/sd/source/ui/view/drviews1.cxx +++ b/sd/source/ui/view/drviews1.cxx @@ -454,7 +454,7 @@ void DrawViewShell::ChangeEditMode(EditMode eEMode, bool bIsLayerModeActive) if (comphelper::LibreOfficeKit::isActive()) GetViewShell()->libreOfficeKitViewCallback(LOK_CALLBACK_STATE_CHANGED, - ".uno:SlideMasterPage=true"); + ".uno:SlideMasterPage=true"_ostr); if (!mpActualPage) { // as long as there is no mpActualPage, take first diff --git a/sd/source/ui/view/drviewse.cxx b/sd/source/ui/view/drviewse.cxx index 3f0a5792dc5f..0b293773b07a 100644 --- a/sd/source/ui/view/drviewse.cxx +++ b/sd/source/ui/view/drviewse.cxx @@ -1035,7 +1035,7 @@ void DrawViewShell::FuSupport(SfxRequest& rReq) { if (comphelper::LibreOfficeKit::isActive()) GetViewShell()->libreOfficeKitViewCallback(LOK_CALLBACK_STATE_CHANGED, - ".uno:SlideMasterPage=true"); + ".uno:SlideMasterPage=true"_ostr); // AutoLayouts needs to be finished GetDoc()->StopWorkStartupDelay(); @@ -1074,7 +1074,7 @@ void DrawViewShell::FuSupport(SfxRequest& rReq) // Notify of disabling master view, which is enabled in DrawViewShell::ChangeEditMode. if (comphelper::LibreOfficeKit::isActive()) GetViewShell()->libreOfficeKitViewCallback(LOK_CALLBACK_STATE_CHANGED, - ".uno:SlideMasterPage=false"); + ".uno:SlideMasterPage=false"_ostr); Broadcast ( ViewShellHint(ViewShellHint::HINT_CHANGE_EDIT_MODE_START)); diff --git a/sd/source/ui/view/sdview.cxx b/sd/source/ui/view/sdview.cxx index 02a1243e0264..dd4ddaab1fcf 100644 --- a/sd/source/ui/view/sdview.cxx +++ b/sd/source/ui/view/sdview.cxx @@ -811,7 +811,7 @@ SdrEndTextEditKind View::SdrEndTextEdit(bool bDontDeleteReally) mpViewSh->GetViewShellBase().GetDrawController()->FireSelectionChangeListener(); if (comphelper::LibreOfficeKit::isActive()) - SfxLokHelper::notifyOtherViews(&mpViewSh->GetViewShellBase(), LOK_CALLBACK_VIEW_LOCK, "rectangle", "EMPTY"); + SfxLokHelper::notifyOtherViews(&mpViewSh->GetViewShellBase(), LOK_CALLBACK_VIEW_LOCK, "rectangle", "EMPTY"_ostr); } |