diff options
author | Tamas Bunth <tamas.bunth@collabora.co.uk> | 2020-01-02 12:55:16 +0100 |
---|---|---|
committer | Andras Timar <andras.timar@collabora.com> | 2020-01-06 14:47:36 +0100 |
commit | ab142e036dfdaa05fa990d998e3380aa54c4d9a8 (patch) | |
tree | 16d424ee13ea5eab3d4ebc8586afacc3c962ce0a | |
parent | 892f784856288645226e2339c9bd5c614f58d333 (diff) |
tdf#123206 Add test: import custom-label-field
Add test for deprecated custom-label-field attribute of the data-point
element.
Change-Id: I9a7619898fa72900323e5b41728d2146c14203e3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86103
Tested-by: Jenkins
Reviewed-by: Tamás Bunth <btomi96@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86117
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Andras Timar <andras.timar@collabora.com>
-rw-r--r-- | chart2/qa/extras/chart2import.cxx | 22 | ||||
-rw-r--r-- | chart2/qa/extras/data/odp/tdf123206.odp | bin | 0 -> 19589 bytes | |||
-rw-r--r-- | xmloff/source/chart/SchXMLPlotAreaContext.cxx | 2 |
3 files changed, 22 insertions, 2 deletions
diff --git a/chart2/qa/extras/chart2import.cxx b/chart2/qa/extras/chart2import.cxx index 960d12b72a57..a4c5313cf4a1 100644 --- a/chart2/qa/extras/chart2import.cxx +++ b/chart2/qa/extras/chart2import.cxx @@ -120,7 +120,7 @@ public: void testTdf114179(); void testTdf123504(); void testTdf122765(); - + void testTdf123206CustomLabelField(); CPPUNIT_TEST_SUITE(Chart2ImportTest); CPPUNIT_TEST(Fdo60083); CPPUNIT_TEST(testSteppedLines); @@ -194,7 +194,7 @@ public: CPPUNIT_TEST(testTdf114179); CPPUNIT_TEST(testTdf123504); CPPUNIT_TEST(testTdf122765); - + CPPUNIT_TEST(testTdf123206CustomLabelField); CPPUNIT_TEST_SUITE_END(); private: @@ -1755,6 +1755,24 @@ void Chart2ImportTest::testTdf122765() CPPUNIT_ASSERT_GREATER(sal_Int32(7000), aSlicePosition.X); } +void Chart2ImportTest::testTdf123206CustomLabelField() +{ + // File contains the deprecated "custom-label-field" attribute of the + // "data-point" element. It should be interpreted and stored as a data point + // property. + uno::Reference< chart2::XChartDocument > xChartDoc(getChartDocFromImpress("/chart2/qa/extras/data/odp/", "tdf123206.odp"), uno::UNO_QUERY_THROW); + CPPUNIT_ASSERT_MESSAGE("failed to load chart", xChartDoc.is()); + CPPUNIT_ASSERT(xChartDoc.is()); + Reference<chart2::XDataSeries> xDataSeries = getDataSeriesFromDoc(xChartDoc, 0); + CPPUNIT_ASSERT(xDataSeries.is()); + Reference<beans::XPropertySet> xDp = xDataSeries->getDataPointByIndex(1); + Sequence<Reference<chart2::XDataPointCustomLabelField>> aLabelFields; + CPPUNIT_ASSERT(xDp->getPropertyValue("CustomLabelFields") >>= aLabelFields); + CPPUNIT_ASSERT_EQUAL(static_cast<sal_Int32>(1), aLabelFields.getLength()); + CPPUNIT_ASSERT_EQUAL(OUString("Kiskacsa"), aLabelFields[0]->getString()); + +} + CPPUNIT_TEST_SUITE_REGISTRATION(Chart2ImportTest); CPPUNIT_PLUGIN_IMPLEMENT(); diff --git a/chart2/qa/extras/data/odp/tdf123206.odp b/chart2/qa/extras/data/odp/tdf123206.odp Binary files differnew file mode 100644 index 000000000000..1975756bce18 --- /dev/null +++ b/chart2/qa/extras/data/odp/tdf123206.odp diff --git a/xmloff/source/chart/SchXMLPlotAreaContext.cxx b/xmloff/source/chart/SchXMLPlotAreaContext.cxx index 385b59d48bd2..fe6a196005f7 100644 --- a/xmloff/source/chart/SchXMLPlotAreaContext.cxx +++ b/xmloff/source/chart/SchXMLPlotAreaContext.cxx @@ -711,6 +711,8 @@ void SchXMLDataPointContext::StartElement( const uno::Reference< xml::sax::XAttr } else if( nPrefix == XML_NAMESPACE_LO_EXT) { + // Deprecated. New documents use the chart:data-label element + // instead in order to store custom label text. if( IsXMLToken( aLocalName, XML_CUSTOM_LABEL_FIELD) && !mbHasLabelParagraph) { sCustomLabelField = xAttrList->getValueByIndex( i ); |