diff options
author | Jens Carl <j.carl43@gmx.de> | 2018-06-13 05:51:11 +0000 |
---|---|---|
committer | Jens Carl <j.carl43@gmx.de> | 2018-06-13 17:53:30 +0200 |
commit | 600987b415e537362125b4445ab7132535e6e1e1 (patch) | |
tree | d032d3fda7e2c8d4987ceb5963bf21e3b0f40302 /sc | |
parent | 0554e74260ee684d0859d655e42da8ad6eefd4a9 (diff) |
tdf#45904 Move remaining _XCellRangeReferrer Java tests to C++
Move remaining _XCellRangeReferrer tests to C++ and partly fix #i84656.
Change-Id: I77cc8550888f460a6ae265816907a19a81cbe871
Reviewed-on: https://gerrit.libreoffice.org/55732
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Jens Carl <j.carl43@gmx.de>
Diffstat (limited to 'sc')
-rw-r--r-- | sc/qa/extras/scdatabaserangeobj.cxx | 41 | ||||
-rw-r--r-- | sc/qa/extras/scnamedrangeobj.cxx | 25 | ||||
-rw-r--r-- | sc/qa/extras/sctabviewobj.cxx | 8 | ||||
-rw-r--r-- | sc/qa/extras/scviewpaneobj.cxx | 11 |
4 files changed, 65 insertions, 20 deletions
diff --git a/sc/qa/extras/scdatabaserangeobj.cxx b/sc/qa/extras/scdatabaserangeobj.cxx index fed4a8dd7d5e..d7ffdf80c3bf 100644 --- a/sc/qa/extras/scdatabaserangeobj.cxx +++ b/sc/qa/extras/scdatabaserangeobj.cxx @@ -9,38 +9,37 @@ #include <test/calc_unoapi_test.hxx> #include <test/sheet/databaserange.hxx> +#include <test/sheet/xcellrangereferrer.hxx> #include <test/sheet/xdatabaserange.hxx> #include <com/sun/star/beans/XPropertySet.hpp> -#include <com/sun/star/sheet/XSpreadsheetDocument.hpp> #include <com/sun/star/container/XNameAccess.hpp> +#include <com/sun/star/sheet/XCellRangeAddressable.hpp> +#include <com/sun/star/sheet/XCellRangeReferrer.hpp> #include <com/sun/star/sheet/XDatabaseRange.hpp> +#include <com/sun/star/sheet/XSpreadsheetDocument.hpp> using namespace css; using namespace css::uno; namespace sc_apitest { -class ScDatabaseRangeObj : public CalcUnoApiTest, public apitest::DatabaseRange, public apitest::XDatabaseRange +class ScDatabaseRangeObj : public CalcUnoApiTest, + public apitest::DatabaseRange, + public apitest::XCellRangeReferrer, + public apitest::XDatabaseRange { public: virtual void setUp() override; virtual void tearDown() override; + virtual uno::Reference< uno::XInterface > init() override; virtual uno::Reference< uno::XInterface > init( const OUString& rDBName ) override; ScDatabaseRangeObj(); CPPUNIT_TEST_SUITE(ScDatabaseRangeObj); - // XDatabaseRange - CPPUNIT_TEST(testDataArea); - CPPUNIT_TEST(testGetSortDescriptor); - CPPUNIT_TEST(testGetSubtotalDescriptor); - CPPUNIT_TEST(testGetImportDescriptor); - CPPUNIT_TEST(testGetFilterDescriptor); - CPPUNIT_TEST(testRefresh); - // DatabaseRange CPPUNIT_TEST(testMoveCells); CPPUNIT_TEST(testKeepFormats); @@ -54,6 +53,17 @@ public: CPPUNIT_TEST(testTotalsRow); CPPUNIT_TEST(testContainsHeader); + // XCellRangeReferrer + CPPUNIT_TEST(testGetReferredCells); + + // XDatabaseRange + CPPUNIT_TEST(testDataArea); + CPPUNIT_TEST(testGetSortDescriptor); + CPPUNIT_TEST(testGetSubtotalDescriptor); + CPPUNIT_TEST(testGetImportDescriptor); + CPPUNIT_TEST(testGetFilterDescriptor); + CPPUNIT_TEST(testRefresh); + CPPUNIT_TEST_SUITE_END(); private: uno::Reference< lang::XComponent > mxComponent; @@ -64,14 +74,25 @@ ScDatabaseRangeObj::ScDatabaseRangeObj() { } +uno::Reference<uno::XInterface> ScDatabaseRangeObj::init() +{ + return init("DataArea"); +} + uno::Reference< uno::XInterface > ScDatabaseRangeObj::init( const OUString& rDBName ) { uno::Reference< sheet::XSpreadsheetDocument > xDoc(mxComponent, UNO_QUERY_THROW); uno::Reference< beans::XPropertySet > xPropSet(xDoc, UNO_QUERY_THROW); uno::Reference< container::XNameAccess > xNameAccess( xPropSet->getPropertyValue("DatabaseRanges"), UNO_QUERY_THROW); + + uno::Reference<sheet::XCellRangeReferrer> xCRR(xNameAccess->getByName(rDBName), UNO_QUERY_THROW); + uno::Reference<sheet::XCellRangeAddressable> xCRA(xCRR->getReferredCells(), UNO_QUERY_THROW); + setCellRange(xCRA->getRangeAddress()); + uno::Reference< sheet::XDatabaseRange > xDBRange( xNameAccess->getByName(rDBName), UNO_QUERY_THROW); CPPUNIT_ASSERT(xDBRange.is()); + return xDBRange; } diff --git a/sc/qa/extras/scnamedrangeobj.cxx b/sc/qa/extras/scnamedrangeobj.cxx index f0021cca3c9f..85e32cacb0b5 100644 --- a/sc/qa/extras/scnamedrangeobj.cxx +++ b/sc/qa/extras/scnamedrangeobj.cxx @@ -8,21 +8,24 @@ */ #include <test/calc_unoapi_test.hxx> -#include <test/sheet/xnamedrange.hxx> #include <test/container/xnamed.hxx> +#include <test/sheet/xnamedrange.hxx> #include <test/sheet/xcellrangereferrer.hxx> #include <com/sun/star/beans/XPropertySet.hpp> +#include <com/sun/star/sheet/XNamedRanges.hpp> #include <com/sun/star/sheet/XSpreadsheetDocument.hpp> #include <com/sun/star/sheet/XSpreadsheet.hpp> -#include <com/sun/star/sheet/XNamedRanges.hpp> using namespace css; using namespace css::uno; namespace sc_apitest { -class ScNamedRangeObj : public CalcUnoApiTest, public apitest::XNamedRange, public apitest::XNamed, public apitest::XCellRangeReferrer +class ScNamedRangeObj : public CalcUnoApiTest, + public apitest::XCellRangeReferrer, + public apitest::XNamed, + public apitest::XNamedRange { public: ScNamedRangeObj(); @@ -35,15 +38,20 @@ public: CPPUNIT_TEST_SUITE(ScNamedRangeObj); + // XCellRangeReferrer + CPPUNIT_TEST(testGetReferredCells); + + // XNamed + CPPUNIT_TEST(testSetName); + CPPUNIT_TEST(testGetName); + + // XNamedRange CPPUNIT_TEST(testGetContent); CPPUNIT_TEST(testSetContent); CPPUNIT_TEST(testGetType); CPPUNIT_TEST(testSetType); CPPUNIT_TEST(testGetReferencePosition); CPPUNIT_TEST(testSetReferencePosition); - CPPUNIT_TEST(testSetName); - CPPUNIT_TEST(testGetName); - CPPUNIT_TEST(testGetReferredCells); CPPUNIT_TEST_SUITE_END(); private: @@ -53,8 +61,7 @@ private: ScNamedRangeObj::ScNamedRangeObj(): CalcUnoApiTest("/sc/qa/extras/testdocuments"), - apitest::XNamed("NamedRange"), - apitest::XCellRangeReferrer(table::CellRangeAddress(0,1,7,1,7)) + apitest::XNamed("NamedRange") { } @@ -66,6 +73,8 @@ uno::Reference< sheet::XNamedRanges > ScNamedRangeObj::init_impl() uno::Reference< sheet::XNamedRanges > xNamedRanges(xPropSet->getPropertyValue("NamedRanges"), UNO_QUERY_THROW); CPPUNIT_ASSERT(xNamedRanges.is()); + setCellRange(table::CellRangeAddress(0, 1, 7, 1, 7)); + return xNamedRanges; } diff --git a/sc/qa/extras/sctabviewobj.cxx b/sc/qa/extras/sctabviewobj.cxx index 106e13617c29..e8d9a8c8afd1 100644 --- a/sc/qa/extras/sctabviewobj.cxx +++ b/sc/qa/extras/sctabviewobj.cxx @@ -10,6 +10,7 @@ #include <test/calc_unoapi_test.hxx> #include <test/sheet/spreadsheetviewsettings.hxx> #include <test/sheet/xactivationbroadcaster.hxx> +#include <test/sheet/xcellrangereferrer.hxx> #include <test/sheet/xspreadsheetview.hxx> #include <test/sheet/xviewfreezable.hxx> #include <test/sheet/xviewsplitable.hxx> @@ -31,6 +32,7 @@ namespace sc_apitest class ScTabViewObj : public CalcUnoApiTest, public apitest::SpreadsheetViewSettings, public apitest::XActivationBroadcaster, + public apitest::XCellRangeReferrer, public apitest::XSpreadsheetView, public apitest::XViewFreezable, public apitest::XViewSplitable @@ -52,6 +54,9 @@ public: // XActivationBroadcaster CPPUNIT_TEST(testAddRemoveActivationEventListener); + // XCellRangeReferrer + CPPUNIT_TEST(testGetReferredCells); + // XSpreadsheetView CPPUNIT_TEST(testGetSetActiveSheet); @@ -75,9 +80,10 @@ ScTabViewObj::ScTabViewObj() uno::Reference< uno::XInterface > ScTabViewObj::init() { uno::Reference<sheet::XSpreadsheetDocument> xDoc(mxComponent, uno::UNO_QUERY_THROW); - uno::Reference<frame::XModel> xModel(xDoc, uno::UNO_QUERY_THROW); + setCellRange(table::CellRangeAddress(0, 0, 0, 6, 23)); + return xModel->getCurrentController(); } diff --git a/sc/qa/extras/scviewpaneobj.cxx b/sc/qa/extras/scviewpaneobj.cxx index f999edd7b35d..9aee4a553cd6 100644 --- a/sc/qa/extras/scviewpaneobj.cxx +++ b/sc/qa/extras/scviewpaneobj.cxx @@ -8,6 +8,7 @@ */ #include <test/calc_unoapi_test.hxx> +#include <test/sheet/xcellrangereferrer.hxx> #include <test/sheet/xviewpane.hxx> #include <com/sun/star/container/XIndexAccess.hpp> @@ -23,7 +24,9 @@ using namespace css::uno; namespace sc_apitest { -class ScViewPaneObj : public CalcUnoApiTest, public apitest::XViewPane +class ScViewPaneObj : public CalcUnoApiTest, + public apitest::XCellRangeReferrer, + public apitest::XViewPane { public: ScViewPaneObj(); @@ -34,6 +37,9 @@ public: CPPUNIT_TEST_SUITE(ScViewPaneObj); + // XCellRangeReferrer + CPPUNIT_TEST(testGetReferredCells); + // XViewPane CPPUNIT_TEST(testFirstVisibleColumn); CPPUNIT_TEST(testFirstVisibleRow); @@ -58,6 +64,9 @@ uno::Reference< uno::XInterface > ScViewPaneObj::init() uno::Reference< frame::XController > xController = xModel->getCurrentController(); uno::Reference< container::XIndexAccess > xIndexAccess(xController, uno::UNO_QUERY_THROW); uno::Reference< sheet::XViewPane > xViewPane (xIndexAccess->getByIndex(0), uno::UNO_QUERY_THROW); + + setCellRange(xViewPane->getVisibleRange()); + return xViewPane; } |