diff options
author | Kohei Yoshida <kohei.yoshida@collabora.com> | 2014-08-07 14:16:22 -0400 |
---|---|---|
committer | Kohei Yoshida <kohei.yoshida@collabora.com> | 2014-08-07 14:22:05 -0400 |
commit | 844d143905411ef9d3a1fce2fc448b29f643500d (patch) | |
tree | dd1d957c23c3dd2c055d5f2844861b13beb25971 /chart2 | |
parent | ed39df130c6319409eb78eb5e9f03a070120c9d8 (diff) |
Add test for default data label placement for line chart.
Change-Id: I25cf48703a286470907ccc5415a0fab479aa4b8c
Diffstat (limited to 'chart2')
-rw-r--r-- | chart2/qa/extras/chart2export.cxx | 25 | ||||
-rw-r--r-- | chart2/qa/extras/charttest.hxx | 1 | ||||
-rwxr-xr-x | chart2/qa/extras/data/docx/line-chart-label-default-placement.docx | bin | 0 -> 17824 bytes |
3 files changed, 26 insertions, 0 deletions
diff --git a/chart2/qa/extras/chart2export.cxx b/chart2/qa/extras/chart2export.cxx index 4d51dc41c7c2..2ebfd9d4d016 100644 --- a/chart2/qa/extras/chart2export.cxx +++ b/chart2/qa/extras/chart2export.cxx @@ -72,6 +72,7 @@ public: void testDataLabelBordersDOCX(); void testDataLabel3DChartDOCX(); void testDataLabelDoughnutChartDOCX(); + void testDataLabelDefaultLineChartDOCX(); CPPUNIT_TEST_SUITE(Chart2ExportTest); CPPUNIT_TEST(test); @@ -109,6 +110,7 @@ public: CPPUNIT_TEST(testDataLabelBordersDOCX); CPPUNIT_TEST(testDataLabel3DChartDOCX); CPPUNIT_TEST(testDataLabelDoughnutChartDOCX); + CPPUNIT_TEST(testDataLabelDefaultLineChartDOCX); CPPUNIT_TEST_SUITE_END(); protected: @@ -837,6 +839,29 @@ void Chart2ExportTest::testDataLabelDoughnutChartDOCX() assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:doughnutChart/c:ser/c:dLbls/c:dLbl/c:dLblPos", 0); } +void Chart2ExportTest::testDataLabelDefaultLineChartDOCX() +{ + // This file was created by Word 2007, which doesn't provide default data + // label position (2010 does). Make sure its default data label position + // is RIGHT when exporting. + + load("/chart2/qa/extras/data/docx/", "line-chart-label-default-placement.docx"); + + Reference<chart2::XChartDocument> xChartDoc(getChartDocFromWriter(0), uno::UNO_QUERY); + CPPUNIT_ASSERT(xChartDoc.is()); + + reload("Office Open XML Text"); + + xChartDoc.set(getChartDocFromWriter(0), uno::UNO_QUERY); + Reference<chart2::XDataSeries> xDataSeries = getDataSeriesFromDoc(xChartDoc, 0); + Reference<beans::XPropertySet> xPropSet(xDataSeries, uno::UNO_QUERY); + CPPUNIT_ASSERT(xPropSet.is()); + sal_Int32 nLabelPlacement = -1; + if (xPropSet->getPropertyValue("LabelPlacement") >>= nLabelPlacement) + // This option may not be set. Check its value only when it's set. + CPPUNIT_ASSERT_MESSAGE("Line chart's default label placement should be 'right'.", nLabelPlacement == chart::DataLabelPlacement::RIGHT); +} + void Chart2ExportTest::testBarChartRotation() { load ("/chart2/qa/extras/data/docx/", "barChartRotation.docx"); diff --git a/chart2/qa/extras/charttest.hxx b/chart2/qa/extras/charttest.hxx index d9c022d82103..a76a76c1153c 100644 --- a/chart2/qa/extras/charttest.hxx +++ b/chart2/qa/extras/charttest.hxx @@ -44,6 +44,7 @@ #include <com/sun/star/chart2/data/XDataSource.hpp> #include <com/sun/star/chart/XChartDataArray.hpp> #include <com/sun/star/chart/XComplexDescriptionAccess.hpp> +#include <com/sun/star/chart/DataLabelPlacement.hpp> #include <com/sun/star/drawing/XDrawPagesSupplier.hpp> #include <com/sun/star/drawing/XDrawPageSupplier.hpp> #include <com/sun/star/drawing/FillStyle.hpp> diff --git a/chart2/qa/extras/data/docx/line-chart-label-default-placement.docx b/chart2/qa/extras/data/docx/line-chart-label-default-placement.docx Binary files differnew file mode 100755 index 000000000000..ab9548d59cae --- /dev/null +++ b/chart2/qa/extras/data/docx/line-chart-label-default-placement.docx |