diff options
author | Jens Carl <j.carl43@gmx.de> | 2017-12-01 01:00:41 +0000 |
---|---|---|
committer | Jens Carl <j.carl43@gmx.de> | 2017-12-01 19:17:54 +0100 |
commit | 350eec67a5989365560e38e9270990dcd0a019e8 (patch) | |
tree | c758839bc70046a86b9f41f698750ed09117defa /sc | |
parent | dccfe8765c25caf8485e659711a6df6c43ed63a9 (diff) |
tdf#45904 Move _XMultipleOperation Java tests to C++
Change-Id: I102b726e673f69bfe64eff7e28e380dd6f15f1f8
Reviewed-on: https://gerrit.libreoffice.org/45629
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Jens Carl <j.carl43@gmx.de>
Diffstat (limited to 'sc')
-rw-r--r-- | sc/qa/extras/sccellcursorobj.cxx | 7 | ||||
-rw-r--r-- | sc/qa/extras/sccellrangeobj.cxx | 42 | ||||
-rw-r--r-- | sc/qa/extras/sctablesheetobj.cxx | 48 |
3 files changed, 71 insertions, 26 deletions
diff --git a/sc/qa/extras/sccellcursorobj.cxx b/sc/qa/extras/sccellcursorobj.cxx index 26dcb3f86bc4..543b32123ba9 100644 --- a/sc/qa/extras/sccellcursorobj.cxx +++ b/sc/qa/extras/sccellcursorobj.cxx @@ -9,6 +9,7 @@ #include <test/calc_unoapi_test.hxx> #include <test/sheet/xcellseries.hxx> +#include <test/sheet/xmultipleoperation.hxx> #include <test/sheet/xsheetcellrange.hxx> #include <test/sheet/xsheetfilterable.hxx> #include <test/sheet/xsheetfilterableex.hxx> @@ -26,9 +27,10 @@ using namespace css::uno; namespace sc_apitest { -#define NUMBER_OF_TESTS 13 +#define NUMBER_OF_TESTS 14 class ScCellCursorObj : public CalcUnoApiTest, public apitest::XCellSeries, + public apitest::XMultipleOperation, public apitest::XSheetCellRange, public apitest::XSheetFilterable, public apitest::XSheetFilterableEx, @@ -51,6 +53,9 @@ public: CPPUNIT_TEST(testGotoStartOfUsedArea); CPPUNIT_TEST(testGotoEndOfUsedArea); + // XMultipleOperation + CPPUNIT_TEST(testSetTableOperation); + // XCellSeries CPPUNIT_TEST(testFillAuto); CPPUNIT_TEST(testFillSeries); diff --git a/sc/qa/extras/sccellrangeobj.cxx b/sc/qa/extras/sccellrangeobj.cxx index d3735b6ad518..8732137d447a 100644 --- a/sc/qa/extras/sccellrangeobj.cxx +++ b/sc/qa/extras/sccellrangeobj.cxx @@ -12,6 +12,7 @@ #include <test/sheet/xcellrangedata.hxx> #include <test/sheet/xcellrangesquery.hxx> #include <test/sheet/xcellseries.hxx> +#include <test/sheet/xmultipleoperation.hxx> #include <test/sheet/xsheetcellrange.hxx> #include <test/sheet/xsheetfilterable.hxx> #include <test/sheet/xsheetfilterableex.hxx> @@ -43,12 +44,13 @@ using namespace css::uno; namespace sc_apitest { -#define NUMBER_OF_TESTS 26 +#define NUMBER_OF_TESTS 27 class ScCellRangeObj : public CalcUnoApiTest, public apitest::CellProperties, public apitest::XCellRangeData, public apitest::XCellRangesQuery, public apitest::XCellSeries, + public apitest::XMultipleOperation, public apitest::XReplaceable, public apitest::XSearchable, public apitest::XSheetCellRange, @@ -70,47 +72,47 @@ public: CPPUNIT_TEST_SUITE(ScCellRangeObj); + // CellProperties + CPPUNIT_TEST(testVertJustify); + CPPUNIT_TEST(testRotateReference); + + // XCellSeries + CPPUNIT_TEST(testFillAuto); + CPPUNIT_TEST(testFillSeries); + + // XCellRangeData + CPPUNIT_TEST(testGetDataArray); + CPPUNIT_TEST(testSetDataArray); + // XCellRangesQuery CPPUNIT_TEST(testQueryColumnDifference); CPPUNIT_TEST(testQueryContentDifference); CPPUNIT_TEST(testQueryEmptyCells); - //CPPUNIT_TEST(testQueryFormulaCells); CPPUNIT_TEST(testQueryIntersection); CPPUNIT_TEST(testQueryRowDifference); CPPUNIT_TEST(testQueryVisibleCells); - // CellProperties - CPPUNIT_TEST(testVertJustify); - CPPUNIT_TEST(testRotateReference); - // XSearchable CPPUNIT_TEST(testFindAll); CPPUNIT_TEST(testFindFirst); + // XMultipleOperation + CPPUNIT_TEST(testSetTableOperation); + // XSheetCellRange CPPUNIT_TEST(testGetSpreadsheet); - // XSheetFilterableEx - CPPUNIT_TEST(testCreateFilterDescriptorByObject); - // XReplaceable CPPUNIT_TEST(testReplaceAll); CPPUNIT_TEST(testCreateReplaceDescriptor); - // XCellRangeData - CPPUNIT_TEST(testGetDataArray); - CPPUNIT_TEST(testSetDataArray); - - CPPUNIT_TEST(testSortOOB); - - // XCellSeries - CPPUNIT_TEST(testFillAuto); - CPPUNIT_TEST(testFillSeries); - // XUniqueCellFormatRangesSupplier CPPUNIT_TEST(testGetUniqueCellFormatRanges); + // XSheetFilterableEx + CPPUNIT_TEST(testCreateFilterDescriptorByObject); + // XSheetOperation CPPUNIT_TEST(testComputeFunction); CPPUNIT_TEST(testClearContents); @@ -119,6 +121,8 @@ public: CPPUNIT_TEST(testCreateSubTotalDescriptor); CPPUNIT_TEST(testApplyRemoveSubTotals); + CPPUNIT_TEST(testSortOOB); + // XSheetFilterable (has to be last tests; otherwise it'll crash) CPPUNIT_TEST(testCreateFilterDescriptor); CPPUNIT_TEST(testFilter); diff --git a/sc/qa/extras/sctablesheetobj.cxx b/sc/qa/extras/sctablesheetobj.cxx index b06765b539c8..b0839a691f55 100644 --- a/sc/qa/extras/sctablesheetobj.cxx +++ b/sc/qa/extras/sctablesheetobj.cxx @@ -9,6 +9,7 @@ #include <test/calc_unoapi_test.hxx> #include <test/sheet/xcellseries.hxx> +#include <test/sheet/xmultipleoperation.hxx> #include <test/sheet/xprintareas.hxx> #include <test/sheet/xscenarioenhanced.hxx> #include <test/sheet/xscenariossupplier.hxx> @@ -40,6 +41,7 @@ namespace sc_apitest #define NUMBER_OF_TESTS 31 class ScTableSheetObj : public CalcUnoApiTest, public apitest::XCellSeries, + public apitest::XMultipleOperation, public apitest::XPrintAreas, public apitest::XReplaceable, public apitest::XScenarioEnhanced, @@ -75,6 +77,16 @@ public: CPPUNIT_TEST(testFillAuto); CPPUNIT_TEST(testFillSeries); + // XSearchable + CPPUNIT_TEST(testFindAll); + CPPUNIT_TEST(testFindNext); + CPPUNIT_TEST(testFindFirst); + + // XMultipleOperation +#if 0 // disable, because test never finishes (see i87863) + CPPUNIT_TEST(testSetTableOperation); +#endif + // XPrintAreas CPPUNIT_TEST(testSetAndGetPrintTitleColumns); CPPUNIT_TEST(testSetAndGetPrintTitleRows); @@ -89,11 +101,6 @@ public: // XScenariosSupplier CPPUNIT_TEST(testGetScenarios); - // XSearchable - CPPUNIT_TEST(testFindAll); - CPPUNIT_TEST(testFindNext); - CPPUNIT_TEST(testFindFirst); - // XSheetAnnotationsSupplier CPPUNIT_TEST(testGetAnnotations); @@ -112,7 +119,7 @@ public: CPPUNIT_TEST(testFilter); // XSheetFilterableEx -#if 0 // temporarily disabled, takes too long +#if 0 // temporarily disabled, takes too long (see i87876) CPPUNIT_TEST(testCreateFilterDescriptorByObject); #endif @@ -170,6 +177,10 @@ uno::Reference< uno::XInterface > ScTableSheetObj::init() uno::Reference< container::XIndexAccess > xIndex (xDoc->getSheets(), UNO_QUERY_THROW); uno::Reference< sheet::XSpreadsheet > xSheet( xIndex->getByIndex(0), UNO_QUERY_THROW); + xSheet->getCellByPosition(5 ,5)->setValue(15); + xSheet->getCellByPosition(2 ,0)->setValue(-5.15); + xSheet->getCellByPosition(2 ,0)->setFormula("= B5 + C1"); + xSheet->getCellByPosition(6, 6)->setValue(3); xSheet->getCellByPosition(7, 6)->setValue(3); xSheet->getCellByPosition(8, 6)->setFormula("= SUM(G7:H7)"); @@ -197,6 +208,15 @@ uno::Reference<uno::XInterface> ScTableSheetObj::getScenarioSpreadsheet() uno::Reference<container::XIndexAccess> xIndex (xDoc->getSheets(), UNO_QUERY_THROW); uno::Reference<sheet::XSpreadsheet> xSheet(xIndex->getByIndex(0), UNO_QUERY_THROW); + xSheet->getCellByPosition(5 ,5)->setValue(15); + xSheet->getCellByPosition(2 ,0)->setValue(-5.15); + xSheet->getCellByPosition(2 ,0)->setFormula("= B5 + C1"); + + xSheet->getCellByPosition(6, 6)->setValue(3); + xSheet->getCellByPosition(7, 6)->setValue(3); + xSheet->getCellByPosition(8, 6)->setFormula("= SUM(G7:H7)"); + xSheet->getCellByPosition(9, 6)->setFormula("= G7*I7"); + uno::Sequence<table::CellRangeAddress> aCellRangeAddr(1); aCellRangeAddr[0] = table::CellRangeAddress(0, 0, 0, 10, 10); @@ -215,9 +235,25 @@ uno::Reference< uno::XInterface > ScTableSheetObj::getXSpreadsheet() CPPUNIT_ASSERT_MESSAGE("no calc document", mxComponent.is()); uno::Reference< sheet::XSpreadsheetDocument > xDoc(mxComponent, UNO_QUERY_THROW); + uno::Reference<sheet::XSpreadsheets> xSheets(xDoc->getSheets(), UNO_QUERY_THROW); + uno::Reference< container::XIndexAccess > xIndex (xDoc->getSheets(), UNO_QUERY_THROW); uno::Reference< sheet::XSpreadsheet > xSheet( xIndex->getByIndex(0), UNO_QUERY_THROW); + xSheet->getCellByPosition(5 ,5)->setValue(15); + xSheet->getCellByPosition(2 ,0)->setValue(-5.15); + xSheet->getCellByPosition(2 ,0)->setFormula("= B5 + C1"); + + xSheet->getCellByPosition(6, 6)->setValue(3); + xSheet->getCellByPosition(7, 6)->setValue(3); + xSheet->getCellByPosition(8, 6)->setFormula("= SUM(G7:H7)"); + xSheet->getCellByPosition(9, 6)->setFormula("= G7*I7"); + + uno::Sequence<table::CellRangeAddress> aCellRangeAddr(1); + aCellRangeAddr[0] = table::CellRangeAddress(0, 0, 0, 10, 10); + uno::Reference<sheet::XScenariosSupplier> xScence(xSheet, UNO_QUERY_THROW); + xScence->getScenarios()->addNewByName("Scenario", aCellRangeAddr, "Comment"); + xSheets->getByName("Scenario"); return xSheet; } |