chart2/CppunitTest_chart2_import.mk | 1 chart2/qa/extras/chart2import.cxx | 40 ++++++++++------------------------ chart2/qa/extras/charttest.hxx | 20 +++++++++++++++++ chart2/qa/extras/data/docx/chart.docx |binary 4 files changed, 33 insertions(+), 28 deletions(-)
New commits: commit 486222c7c003e250813bd885a95192bc63cc9830 Author: Vinaya Mandke <vinaya.man...@synerzip.com> Date: Thu Oct 31 11:46:10 2013 +0530 Unit test for Docx Chart Series Name UT to verify that the series labels are imported (or rendered) as in the docx file. Change-Id: I9e4ade7a905dbb894bc163ecec8c333fa6797818 Reviewed-on: https://gerrit.libreoffice.org/6502 Tested-by: Markus Mohrhard <markus.mohrh...@googlemail.com> Reviewed-by: Markus Mohrhard <markus.mohrh...@googlemail.com> diff --git a/chart2/CppunitTest_chart2_import.mk b/chart2/CppunitTest_chart2_import.mk index f702ea9..8075625 100644 --- a/chart2/CppunitTest_chart2_import.mk +++ b/chart2/CppunitTest_chart2_import.mk @@ -114,6 +114,7 @@ $(eval $(call gb_CppunitTest_use_components,chart2_import,\ unotools/util/utl \ unoxml/source/rdf/unordf \ unoxml/source/service/unoxml \ + writerfilter/util/writerfilter \ xmloff/util/xo \ )) diff --git a/chart2/qa/extras/chart2import.cxx b/chart2/qa/extras/chart2import.cxx index f20b834..9ca95b6 100644 --- a/chart2/qa/extras/chart2import.cxx +++ b/chart2/qa/extras/chart2import.cxx @@ -9,7 +9,6 @@ #include "charttest.hxx" -#include <com/sun/star/drawing/XDrawPageSupplier.hpp> #include <com/sun/star/style/XStyleFamiliesSupplier.hpp> #include <com/sun/star/chart2/CurveStyle.hpp> #include <com/sun/star/chart/ErrorBarStyle.hpp> @@ -17,7 +16,6 @@ #include <com/sun/star/chart/XChartDocument.hpp> #include <com/sun/star/chart/XChartData.hpp> #include <com/sun/star/chart2/XInternalDataProvider.hpp> -#include <com/sun/star/chart2/XAnyDescriptionAccess.hpp> #include <com/sun/star/chart/XChartDataArray.hpp> class Chart2ImportTest : public ChartTest @@ -31,6 +29,7 @@ public: void testXLSChartSeries(); void testODTChartSeries(); void testDOCChartSeries(); + void testDOCXChartSeries(); void testPPTXChartSeries(); void testPPTChartSeries(); void testODPChartSeries(); @@ -44,6 +43,7 @@ public: CPPUNIT_TEST(testXLSChartSeries); CPPUNIT_TEST(testODTChartSeries); CPPUNIT_TEST(testDOCChartSeries); + CPPUNIT_TEST(testDOCXChartSeries); /* * Disabling Impress Uts. * ChartTest::tearDown() calls dispose of mxComponent @@ -225,19 +225,7 @@ void Chart2ImportTest::testXLSChartSeries() void Chart2ImportTest::testODTChartSeries() { load("/chart2/qa/extras/data/odt/", "chart.odt"); - uno::Reference<drawing::XDrawPageSupplier> xDrawPageSupplier(mxComponent, uno::UNO_QUERY); - uno::Reference<drawing::XDrawPage> xDrawPage = xDrawPageSupplier->getDrawPage(); - uno::Reference<drawing::XShape> xShape(xDrawPage->getByIndex(0), uno::UNO_QUERY); - CPPUNIT_ASSERT( xShape.is() ); - uno::Reference<beans::XPropertySet> xPropertySet(xShape, uno::UNO_QUERY); - uno::Reference< chart2::XChartDocument > xChartDoc; - xChartDoc.set( xPropertySet->getPropertyValue( "Model" ), uno::UNO_QUERY ); - CPPUNIT_ASSERT( xChartDoc.is() ); - CPPUNIT_ASSERT( xChartDoc->getDataProvider().is() ); - uno::Reference<beans::XPropertySet> xProp(xChartDoc->getDataProvider(), uno::UNO_QUERY ); - uno::Reference< chart2::XAnyDescriptionAccess > xAnyDescriptionAccess ( xChartDoc->getDataProvider(), uno::UNO_QUERY_THROW ); - CPPUNIT_ASSERT( xAnyDescriptionAccess.is() ); - uno::Sequence< OUString > seriesList = xAnyDescriptionAccess->getColumnDescriptions(); + uno::Sequence< OUString > seriesList = getWriterChartColumnDescriptions(mxComponent); CPPUNIT_ASSERT_EQUAL(OUString("Column 1"), seriesList[0]); CPPUNIT_ASSERT_EQUAL(OUString("Column 2"), seriesList[1]); CPPUNIT_ASSERT_EQUAL(OUString("Column 3"), seriesList[2]); @@ -247,24 +235,20 @@ void Chart2ImportTest::testODTChartSeries() void Chart2ImportTest::testDOCChartSeries() { load("/chart2/qa/extras/data/doc/", "chart.doc"); - uno::Reference<drawing::XDrawPageSupplier> xDrawPageSupplier(mxComponent, uno::UNO_QUERY); - uno::Reference<drawing::XDrawPage> xDrawPage = xDrawPageSupplier->getDrawPage(); - uno::Reference<drawing::XShape> xShape(xDrawPage->getByIndex(0), uno::UNO_QUERY); - CPPUNIT_ASSERT( xShape.is() ); - uno::Reference<beans::XPropertySet> xPropertySet(xShape, uno::UNO_QUERY); - uno::Reference< chart2::XChartDocument > xChartDoc; - xChartDoc.set( xPropertySet->getPropertyValue( "Model" ), uno::UNO_QUERY ); - CPPUNIT_ASSERT( xChartDoc.is() ); - CPPUNIT_ASSERT( xChartDoc->getDataProvider().is() ); - uno::Reference<beans::XPropertySet> xProp(xChartDoc->getDataProvider(), uno::UNO_QUERY ); - uno::Reference< chart2::XAnyDescriptionAccess > xAnyDescriptionAccess ( xChartDoc->getDataProvider(), uno::UNO_QUERY_THROW ); - CPPUNIT_ASSERT( xAnyDescriptionAccess.is() ); - uno::Sequence< OUString > seriesList = xAnyDescriptionAccess->getColumnDescriptions(); + uno::Sequence< OUString > seriesList = getWriterChartColumnDescriptions(mxComponent); CPPUNIT_ASSERT_EQUAL(OUString("Column 1"), seriesList[0]); CPPUNIT_ASSERT_EQUAL(OUString("Column 2"), seriesList[1]); CPPUNIT_ASSERT_EQUAL(OUString("Column 3"), seriesList[2]); } +void Chart2ImportTest::testDOCXChartSeries() +{ + load("/chart2/qa/extras/data/docx/", "chart.docx"); + uno::Sequence< OUString > seriesList = getWriterChartColumnDescriptions(mxComponent); + CPPUNIT_ASSERT_EQUAL(OUString("Series 1"), seriesList[0]); + CPPUNIT_ASSERT_EQUAL(OUString("Series 2"), seriesList[1]); + CPPUNIT_ASSERT_EQUAL(OUString("Series 3"), seriesList[2]); +} void Chart2ImportTest::testPPTChartSeries() { diff --git a/chart2/qa/extras/charttest.hxx b/chart2/qa/extras/charttest.hxx index b33312c..637cfe0 100644 --- a/chart2/qa/extras/charttest.hxx +++ b/chart2/qa/extras/charttest.hxx @@ -27,6 +27,8 @@ #include <unotools/tempfile.hxx> +#include <com/sun/star/drawing/XDrawPageSupplier.hpp> +#include <com/sun/star/chart2/XAnyDescriptionAccess.hpp> #include <com/sun/star/chart2/XChartDocument.hpp> #include <com/sun/star/chart2/XDiagram.hpp> #include <com/sun/star/chart2/XDataSeries.hpp> @@ -165,6 +167,24 @@ Reference< chart2::XDataSeries > getDataSeriesFromDoc( uno::Reference< chart2::X } +uno::Sequence < OUString > getWriterChartColumnDescriptions( Reference< lang::XComponent > mxComponent ) +{ + uno::Reference<drawing::XDrawPageSupplier> xDrawPageSupplier(mxComponent, uno::UNO_QUERY); + uno::Reference<drawing::XDrawPage> xDrawPage = xDrawPageSupplier->getDrawPage(); + uno::Reference<drawing::XShape> xShape(xDrawPage->getByIndex(0), uno::UNO_QUERY); + CPPUNIT_ASSERT( xShape.is() ); + uno::Reference<beans::XPropertySet> xPropertySet(xShape, uno::UNO_QUERY); + uno::Reference< chart2::XChartDocument > xChartDoc; + xChartDoc.set( xPropertySet->getPropertyValue( "Model" ), uno::UNO_QUERY ); + CPPUNIT_ASSERT( xChartDoc.is() ); + CPPUNIT_ASSERT( xChartDoc->getDataProvider().is() ); + uno::Reference<beans::XPropertySet> xProp(xChartDoc->getDataProvider(), uno::UNO_QUERY ); + uno::Reference< chart2::XAnyDescriptionAccess > xAnyDescriptionAccess ( xChartDoc->getDataProvider(), uno::UNO_QUERY_THROW ); + CPPUNIT_ASSERT( xAnyDescriptionAccess.is() ); + uno::Sequence< OUString > seriesList = xAnyDescriptionAccess->getColumnDescriptions(); + return seriesList; +} + uno::Sequence < OUString > ChartTest::getImpressChartColumnDescriptions( const char* pDir, const char* pName ) { mxComponent = loadFromDesktop(getURLFromSrc(pDir) + OUString::createFromAscii(pName), "com.sun.star.comp.Draw.PresentationDocument"); diff --git a/chart2/qa/extras/data/docx/chart.docx b/chart2/qa/extras/data/docx/chart.docx new file mode 100644 index 0000000..f9cddd4 Binary files /dev/null and b/chart2/qa/extras/data/docx/chart.docx differ _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits