Kaydet (Commit) 391220ef authored tarafından Markus Mohrhard's avatar Markus Mohrhard Kaydeden (comit) Markus Mohrhard

add test for bnc#864396

Change-Id: I38d77a11acf6684cb583ba3e5ffb80f30f3f2fdc
üst 599472a1
...@@ -33,6 +33,7 @@ public: ...@@ -33,6 +33,7 @@ public:
void testPPTXChartSeries(); void testPPTXChartSeries();
void testPPTChartSeries(); void testPPTChartSeries();
void testODPChartSeries(); void testODPChartSeries();
void testBnc864396();
CPPUNIT_TEST_SUITE(Chart2ImportTest); CPPUNIT_TEST_SUITE(Chart2ImportTest);
CPPUNIT_TEST(Fdo60083); CPPUNIT_TEST(Fdo60083);
...@@ -50,9 +51,10 @@ public: ...@@ -50,9 +51,10 @@ public:
* this causes the UT to crash in sd. * this causes the UT to crash in sd.
* sd::DrawView::Notify tries to reset by calling sd::DrawViewShell::ResetActualPage * sd::DrawView::Notify tries to reset by calling sd::DrawViewShell::ResetActualPage
*/ */
// CPPUNIT_TEST(testPPTChartSeries); CPPUNIT_TEST(testPPTChartSeries);
// CPPUNIT_TEST(testPPTXChartSeries); CPPUNIT_TEST(testPPTXChartSeries);
// CPPUNIT_TEST(testODPChartSeries); CPPUNIT_TEST(testODPChartSeries);
CPPUNIT_TEST(testBnc864396);
CPPUNIT_TEST_SUITE_END(); CPPUNIT_TEST_SUITE_END();
private: private:
...@@ -281,6 +283,21 @@ void Chart2ImportTest::testODPChartSeries() ...@@ -281,6 +283,21 @@ void Chart2ImportTest::testODPChartSeries()
} }
void Chart2ImportTest::testBnc864396()
{
uno::Reference< chart2::XChartDocument > xChartDoc(getChartDocFromImpress("/chart2/qa/extras/data/pptx/", "bnc864396.pptx"), uno::UNO_QUERY_THROW);
CPPUNIT_ASSERT(xChartDoc->hasInternalDataProvider());
uno::Reference< chart2::XInternalDataProvider > xDataProvider( xChartDoc->getDataProvider(), uno::UNO_QUERY_THROW );
uno::Reference< chart::XChartDataArray > xChartDataArray(xDataProvider, uno::UNO_QUERY_THROW);
uno::Sequence< OUString > aRowLabels = xChartDataArray->getRowDescriptions();
for(sal_Int32 i = 0; i < aRowLabels.getLength(); ++i)
{
OUString aExpected = OUString("cat") + OUString::number(i+1);
CPPUNIT_ASSERT_EQUAL(aExpected, aRowLabels[i]);
}
}
CPPUNIT_TEST_SUITE_REGISTRATION(Chart2ImportTest); CPPUNIT_TEST_SUITE_REGISTRATION(Chart2ImportTest);
CPPUNIT_PLUGIN_IMPLEMENT(); CPPUNIT_PLUGIN_IMPLEMENT();
......
...@@ -58,6 +58,8 @@ public: ...@@ -58,6 +58,8 @@ public:
uno::Sequence < OUString > getImpressChartColumnDescriptions( const char* pDir, const char* pName ); uno::Sequence < OUString > getImpressChartColumnDescriptions( const char* pDir, const char* pName );
OUString getFileExtension( const OUString& rFileName ); OUString getFileExtension( const OUString& rFileName );
uno::Reference< chart::XChartDocument > getChartDocFromImpress( const char* pDir, const char* pName );
void loadDocx(const char* pDir, const char* pName); void loadDocx(const char* pDir, const char* pName);
utl::TempFile reloadDocx(); utl::TempFile reloadDocx();
virtual void setUp(); virtual void setUp();
...@@ -215,7 +217,7 @@ uno::Sequence < OUString > getWriterChartColumnDescriptions( Reference< lang::XC ...@@ -215,7 +217,7 @@ uno::Sequence < OUString > getWriterChartColumnDescriptions( Reference< lang::XC
return seriesList; return seriesList;
} }
uno::Sequence < OUString > ChartTest::getImpressChartColumnDescriptions( const char* pDir, const char* pName ) uno::Reference< chart::XChartDocument > ChartTest::getChartDocFromImpress( const char* pDir, const char* pName )
{ {
mxComponent = loadFromDesktop(getURLFromSrc(pDir) + OUString::createFromAscii(pName), "com.sun.star.comp.Draw.PresentationDocument"); mxComponent = loadFromDesktop(getURLFromSrc(pDir) + OUString::createFromAscii(pName), "com.sun.star.comp.Draw.PresentationDocument");
uno::Reference< drawing::XDrawPagesSupplier > xDoc(mxComponent, uno::UNO_QUERY_THROW ); uno::Reference< drawing::XDrawPagesSupplier > xDoc(mxComponent, uno::UNO_QUERY_THROW );
...@@ -228,8 +230,15 @@ uno::Sequence < OUString > ChartTest::getImpressChartColumnDescriptions( const c ...@@ -228,8 +230,15 @@ uno::Sequence < OUString > ChartTest::getImpressChartColumnDescriptions( const c
uno::Reference< frame::XModel > xDocModel; uno::Reference< frame::XModel > xDocModel;
xShapeProps->getPropertyValue("Model") >>= xDocModel; xShapeProps->getPropertyValue("Model") >>= xDocModel;
CPPUNIT_ASSERT(xDocModel.is()); CPPUNIT_ASSERT(xDocModel.is());
uno::Reference< chart::XChartDocument > xChart1Doc( xDocModel, uno::UNO_QUERY_THROW ); uno::Reference< chart::XChartDocument > xChartDoc( xDocModel, uno::UNO_QUERY_THROW );
uno::Reference< chart::XChartDataArray > xChartData ( xChart1Doc->getData(), uno::UNO_QUERY_THROW);
return xChartDoc;
}
uno::Sequence < OUString > ChartTest::getImpressChartColumnDescriptions( const char* pDir, const char* pName )
{
uno::Reference< chart::XChartDocument > xChartDoc = getChartDocFromImpress( pDir, pName );
uno::Reference< chart::XChartDataArray > xChartData ( xChartDoc->getData(), uno::UNO_QUERY_THROW);
CPPUNIT_ASSERT(xChartData.is()); CPPUNIT_ASSERT(xChartData.is());
uno::Sequence < OUString > seriesList = xChartData->getColumnDescriptions(); uno::Sequence < OUString > seriesList = xChartData->getColumnDescriptions();
return seriesList; return seriesList;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment