From 3dbc46d99a14b56f27371d45736b11904a1f3dc8 Mon Sep 17 00:00:00 2001 From: Markus Mohrhard Date: Wed, 30 Nov 2011 20:09:22 +0100 Subject: move c++ based subsequenttest to sc/qa/extras --- sc/CppunitTest_sc_unoapi_xcellrangesquery.mk | 141 ------------------- sc/CppunitTest_sc_xcellrangesquery.mk | 141 +++++++++++++++++++ sc/Module_sc.mk | 2 +- sc/qa/extras/testdocuments/xcellrangesquery.ods | Bin 0 -> 8881 bytes sc/qa/extras/xcellrangesquery.cxx | 179 ++++++++++++++++++++++++ sc/qa/unoapi/testdocuments/xcellrangesquery.ods | Bin 8881 -> 0 bytes sc/qa/unoapi/xcellrangesquery.cxx | 179 ------------------------ test/source/unoapi_test.cxx | 2 +- 8 files changed, 322 insertions(+), 322 deletions(-) delete mode 100644 sc/CppunitTest_sc_unoapi_xcellrangesquery.mk create mode 100644 sc/CppunitTest_sc_xcellrangesquery.mk create mode 100644 sc/qa/extras/testdocuments/xcellrangesquery.ods create mode 100644 sc/qa/extras/xcellrangesquery.cxx delete mode 100644 sc/qa/unoapi/testdocuments/xcellrangesquery.ods delete mode 100644 sc/qa/unoapi/xcellrangesquery.cxx diff --git a/sc/CppunitTest_sc_unoapi_xcellrangesquery.mk b/sc/CppunitTest_sc_unoapi_xcellrangesquery.mk deleted file mode 100644 index 2dc2f18547c1..000000000000 --- a/sc/CppunitTest_sc_unoapi_xcellrangesquery.mk +++ /dev/null @@ -1,141 +0,0 @@ -# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- -#************************************************************************* -# Version: MPL 1.1 / GPLv3+ / LGPLv3+ -# -# The contents of this file are subject to the Mozilla Public License Version -# 1.1 (the "License"); you may not use this file except in compliance with -# the License or as specified alternatively below. You may obtain a copy of -# the License at http://www.mozilla.org/MPL/ -# -# Software distributed under the License is distributed on an "AS IS" basis, -# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -# for the specific language governing rights and limitations under the -# License. -# -# The Initial Developer of the Original Code is -# Markus Mohrhard -# Portions created by the Initial Developer are Copyright (C) 2011 the -# Initial Developer. All Rights Reserved. -# -# Major Contributor(s): -# -# For minor contributions see the git repository. -# -# Alternatively, the contents of this file may be used under the terms of -# either the GNU General Public License Version 3 or later (the "GPLv3+"), or -# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"), -# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable -# instead of those above. -#************************************************************************* - -$(eval $(call gb_CppunitTest_CppunitTest,sc_unoapi_xcellrangesquery)) - -$(eval $(call gb_CppunitTest_add_exception_objects,sc_unoapi_xcellrangesquery, \ - sc/qa/unoapi/xcellrangesquery \ -)) - -$(eval $(call gb_CppunitTest_add_linked_libs,sc_unoapi_xcellrangesquery, \ - avmedia \ - basegfx \ - comphelper \ - cppu \ - cppuhelper \ - drawinglayer \ - editeng \ - fileacc \ - for \ - forui \ - i18nisolang1 \ - msfilter \ - oox \ - sal \ - salhelper \ - sax \ - sb \ - sc \ - sfx \ - sot \ - svl \ - svt \ - svx \ - svxcore \ - test \ - tl \ - tk \ - ucbhelper \ - unotest \ - utl \ - vbahelper \ - vcl \ - xo \ - $(gb_STDLIBS) \ -)) - -$(eval $(call gb_CppunitTest_set_include,sc_unoapi_xcellrangesquery,\ - -I$(realpath $(SRCDIR)/sc/source/ui/inc) \ - -I$(realpath $(SRCDIR)/sc/inc) \ - $$(INCLUDE) \ - -I$(OUTDIR)/inc \ -)) - -$(eval $(call gb_CppunitTest_add_api,sc_unoapi_xcellrangesquery,\ - offapi \ - udkapi \ -)) - -$(eval $(call gb_CppunitTest_uses_ure,sc_unoapi_xcellrangesquery)) - -$(eval $(call gb_CppunitTest_add_type_rdbs,sc_unoapi_xcellrangesquery,\ - types \ -)) - -$(eval $(call gb_CppunitTest_add_components,sc_unoapi_xcellrangesquery,\ - basic/util/sb \ - comphelper/util/comphelp \ - dbaccess/util/dba \ - fileaccess/source/fileacc \ - filter/source/config/cache/filterconfig1 \ - forms/util/frm \ - framework/util/fwk \ - i18npool/util/i18npool \ - oox/util/oox \ - package/source/xstor/xstor \ - package/util/package2 \ - sax/source/expatwrap/expwrap \ - sax/source/fastparser/fastsax \ - sc/util/sc \ - sc/util/scd \ - sc/util/scfilt \ - sc/util/vbaobj \ - scripting/source/basprov/basprov \ - scripting/util/scriptframe \ - sfx2/util/sfx \ - sot/util/sot \ - svl/source/fsstor/fsstorage \ - toolkit/util/tk \ - unotools/util/utl \ - unoxml/source/rdf/unordf \ - unoxml/source/service/unoxml \ -)) - -$(eval $(call gb_CppunitTest_add_old_components,sc_unoapi_xcellrangesquery,\ - configmgr \ - ucb1 \ - ucpfile1 \ - ucptdoc1 \ -)) - -$(eval $(call gb_CppunitTest_set_args,sc_unoapi_xcellrangesquery,\ - --headless \ - --protector unoexceptionprotector$(gb_Library_DLLEXT) unoexceptionprotector \ - "-env:CONFIGURATION_LAYERS=xcsxcu:$(call gb_CppunitTarget__make_url,$(OUTDIR)/xml/registry) module:$(call gb_CppunitTarget__make_url,$(OUTDIR)/xml/registry/spool) xcsxcu:$(call gb_CppunitTarget__make_url,$(SRCDIR)/sc/qa/unit/data/registry)" \ -)) - # .../spool is required for the (somewhat strange) filter configuration - -# we need to -# a) explicitly depend on library msword because it is not implied by a link -# relation -# b) explicitly depend on the sc resource files needed at unit-test runtime -$(call gb_CppunitTest_get_target,sc_unoapi_xcellrangesquery) : $(call gb_Library_get_target,scfilt) $(WORKDIR)/AllLangRes/sc - -# vim: set noet sw=4 ts=4: diff --git a/sc/CppunitTest_sc_xcellrangesquery.mk b/sc/CppunitTest_sc_xcellrangesquery.mk new file mode 100644 index 000000000000..a0e4bf45e26c --- /dev/null +++ b/sc/CppunitTest_sc_xcellrangesquery.mk @@ -0,0 +1,141 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +#************************************************************************* +# Version: MPL 1.1 / GPLv3+ / LGPLv3+ +# +# The contents of this file are subject to the Mozilla Public License Version +# 1.1 (the "License"); you may not use this file except in compliance with +# the License or as specified alternatively below. You may obtain a copy of +# the License at http://www.mozilla.org/MPL/ +# +# Software distributed under the License is distributed on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License +# for the specific language governing rights and limitations under the +# License. +# +# The Initial Developer of the Original Code is +# Markus Mohrhard +# Portions created by the Initial Developer are Copyright (C) 2011 the +# Initial Developer. All Rights Reserved. +# +# Major Contributor(s): +# +# For minor contributions see the git repository. +# +# Alternatively, the contents of this file may be used under the terms of +# either the GNU General Public License Version 3 or later (the "GPLv3+"), or +# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"), +# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable +# instead of those above. +#************************************************************************* + +$(eval $(call gb_CppunitTest_CppunitTest,sc_xcellrangesquery)) + +$(eval $(call gb_CppunitTest_add_exception_objects,sc_xcellrangesquery, \ + sc/qa/extras/xcellrangesquery \ +)) + +$(eval $(call gb_CppunitTest_add_linked_libs,sc_xcellrangesquery, \ + avmedia \ + basegfx \ + comphelper \ + cppu \ + cppuhelper \ + drawinglayer \ + editeng \ + fileacc \ + for \ + forui \ + i18nisolang1 \ + msfilter \ + oox \ + sal \ + salhelper \ + sax \ + sb \ + sc \ + sfx \ + sot \ + svl \ + svt \ + svx \ + svxcore \ + test \ + tl \ + tk \ + ucbhelper \ + unotest \ + utl \ + vbahelper \ + vcl \ + xo \ + $(gb_STDLIBS) \ +)) + +$(eval $(call gb_CppunitTest_set_include,sc_xcellrangesquery,\ + -I$(realpath $(SRCDIR)/sc/source/ui/inc) \ + -I$(realpath $(SRCDIR)/sc/inc) \ + $$(INCLUDE) \ + -I$(OUTDIR)/inc \ +)) + +$(eval $(call gb_CppunitTest_add_api,sc_xcellrangesquery,\ + offapi \ + udkapi \ +)) + +$(eval $(call gb_CppunitTest_uses_ure,sc_xcellrangesquery)) + +$(eval $(call gb_CppunitTest_add_type_rdbs,sc_xcellrangesquery,\ + types \ +)) + +$(eval $(call gb_CppunitTest_add_components,sc_xcellrangesquery,\ + basic/util/sb \ + comphelper/util/comphelp \ + dbaccess/util/dba \ + fileaccess/source/fileacc \ + filter/source/config/cache/filterconfig1 \ + forms/util/frm \ + framework/util/fwk \ + i18npool/util/i18npool \ + oox/util/oox \ + package/source/xstor/xstor \ + package/util/package2 \ + sax/source/expatwrap/expwrap \ + sax/source/fastparser/fastsax \ + sc/util/sc \ + sc/util/scd \ + sc/util/scfilt \ + sc/util/vbaobj \ + scripting/source/basprov/basprov \ + scripting/util/scriptframe \ + sfx2/util/sfx \ + sot/util/sot \ + svl/source/fsstor/fsstorage \ + toolkit/util/tk \ + unotools/util/utl \ + unoxml/source/rdf/unordf \ + unoxml/source/service/unoxml \ +)) + +$(eval $(call gb_CppunitTest_add_old_components,sc_xcellrangesquery,\ + configmgr \ + ucb1 \ + ucpfile1 \ + ucptdoc1 \ +)) + +$(eval $(call gb_CppunitTest_set_args,sc_xcellrangesquery,\ + --headless \ + --protector unoexceptionprotector$(gb_Library_DLLEXT) unoexceptionprotector \ + "-env:CONFIGURATION_LAYERS=xcsxcu:$(call gb_CppunitTarget__make_url,$(OUTDIR)/xml/registry) module:$(call gb_CppunitTarget__make_url,$(OUTDIR)/xml/registry/spool) xcsxcu:$(call gb_CppunitTarget__make_url,$(SRCDIR)/sc/qa/unit/data/registry)" \ +)) + # .../spool is required for the (somewhat strange) filter configuration + +# we need to +# a) explicitly depend on library msword because it is not implied by a link +# relation +# b) explicitly depend on the sc resource files needed at unit-test runtime +$(call gb_CppunitTest_get_target,sc_xcellrangesquery) : $(call gb_Library_get_target,scfilt) $(WORKDIR)/AllLangRes/sc + +# vim: set noet sw=4 ts=4: diff --git a/sc/Module_sc.mk b/sc/Module_sc.mk index 5b2d9fd27e42..eb855911b3a3 100644 --- a/sc/Module_sc.mk +++ b/sc/Module_sc.mk @@ -41,7 +41,7 @@ $(eval $(call gb_Module_add_check_targets,sc,\ $(eval $(call gb_Module_add_subsequentcheck_targets,sc,\ CppunitTest_sc_macros_test \ - CppunitTest_sc_unoapi_xcellrangesquery \ + CppunitTest_sc_xcellrangesquery \ JunitTest_sc_complex \ JunitTest_sc_unoapi \ )) diff --git a/sc/qa/extras/testdocuments/xcellrangesquery.ods b/sc/qa/extras/testdocuments/xcellrangesquery.ods new file mode 100644 index 000000000000..562229c4070f Binary files /dev/null and b/sc/qa/extras/testdocuments/xcellrangesquery.ods differ diff --git a/sc/qa/extras/xcellrangesquery.cxx b/sc/qa/extras/xcellrangesquery.cxx new file mode 100644 index 000000000000..3d395d60ebf2 --- /dev/null +++ b/sc/qa/extras/xcellrangesquery.cxx @@ -0,0 +1,179 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * Version: MPL 1.1 / GPLv3+ / LGPLv3+ + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License or as specified alternatively below. You may obtain a copy of + * the License at http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * Major Contributor(s): + * [ Copyright (C) 2011 Markus Mohrhard (initial developer) ] + * + * All Rights Reserved. + * + * For minor contributions see the git repository. + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 3 or later (the "GPLv3+"), or + * the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"), + * in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable + * instead of those above. + */ + +#include + +#include +#include +#include +#include +#include +#include + +using namespace com::sun::star; + + +namespace ScCellRangeObj { + +class ScXCellRangesQuery : public UnoApiTest +{ +public: + ScXCellRangesQuery(); + + uno::Reference init(); + + void setRowVisible(bool bVisible); + + //Testcases + void testQueryColumnDifference(); + void testQueryContentDifference(); + void testQueryEmptyCells(); + void testQueryFormulaCells(); + void testQueryIntersection(); + void testQueryRowDifference(); + void testQueryVisibleCells(); + + CPPUNIT_TEST_SUITE(ScXCellRangesQuery); + CPPUNIT_TEST(testQueryColumnDifference); + CPPUNIT_TEST(testQueryContentDifference); + CPPUNIT_TEST(testQueryEmptyCells); + //looks broken + //CPPUNIT_TEST(testQueryFormulaCells); + CPPUNIT_TEST(testQueryIntersection); + CPPUNIT_TEST(testQueryRowDifference); + CPPUNIT_TEST_SUITE_END(); + +}; + +ScXCellRangesQuery::ScXCellRangesQuery() +{ + +} + +uno::Reference ScXCellRangesQuery::init() +{ + rtl::OUString aFileURL; + const rtl::OUString aFileBase(RTL_CONSTASCII_USTRINGPARAM("xcellrangesquery.ods")); + createFileURL(aFileBase, aFileURL); + std::cout << rtl::OUStringToOString(aFileURL, RTL_TEXTENCODING_UTF8).getStr() << std::endl; + uno::Reference< lang::XComponent > xComponent = loadFromDesktop(aFileURL); + uno::Reference< sheet::XSpreadsheetDocument> xDoc (xComponent, UNO_QUERY_THROW); + uno::Reference< container::XIndexAccess > xIndex (xDoc->getSheets(), UNO_QUERY_THROW); + uno::Reference< sheet::XSpreadsheet > xSheet( xIndex->getByIndex(0), UNO_QUERY_THROW); + + CPPUNIT_ASSERT_MESSAGE("Could not create interface of type XSpreadsheet", xSheet.is()); + + uno::Reference xReturn(xSheet->getCellRangeByPosition(0,0,3,4), UNO_QUERY_THROW); + + CPPUNIT_ASSERT_MESSAGE("Could not create object of type XCellRangesQuery", xReturn.is()); + return xReturn; +} + +void ScXCellRangesQuery::testQueryColumnDifference() +{ + rtl::OUString aExpected(RTL_CONSTASCII_USTRINGPARAM("Sheet1.B1:C1,Sheet1.B3:C5")); + uno::Reference xCellRangesQuery = init(); + uno::Reference xRanges = xCellRangesQuery->queryColumnDifferences(table::CellAddress(0, 1, 1)); + rtl::OUString aResult = xRanges->getRangeAddressesAsString(); + std::cout << "testQueryColumnDifference: Result: " << rtl::OUStringToOString(aResult, RTL_TEXTENCODING_UTF8).getStr() << std::endl; + CPPUNIT_ASSERT_MESSAGE("testQueryColumnDifference", aResult == aExpected); +} + +void ScXCellRangesQuery::testQueryContentDifference() +{ + rtl::OUString aExpected(RTL_CONSTASCII_USTRINGPARAM("Sheet1.B2:B3")); + uno::Reference xCellRangesQuery = init(); + uno::Reference xRanges = xCellRangesQuery->queryContentCells(sheet::CellFlags::VALUE); + rtl::OUString aResult = xRanges->getRangeAddressesAsString(); + std::cout << "testQueryContentDifference: Result: " << rtl::OUStringToOString(aResult, RTL_TEXTENCODING_UTF8).getStr() << std::endl; + CPPUNIT_ASSERT_MESSAGE("testQueryContentDifference", aResult == aExpected); +} + +void ScXCellRangesQuery::testQueryEmptyCells() +{ + rtl::OUString aExpected(RTL_CONSTASCII_USTRINGPARAM("Sheet1.A1:A5,Sheet1.B1:C1,Sheet1.B5,Sheet1.C3:C5,Sheet1.D1:D5")); + uno::Reference xCellRangesQuery = init(); + uno::Reference xRanges = xCellRangesQuery->queryEmptyCells(); + rtl::OUString aResult = xRanges->getRangeAddressesAsString(); + std::cout << "testQueryEmptyCells: Result: " << rtl::OUStringToOString(aResult, RTL_TEXTENCODING_UTF8).getStr() << std::endl; + CPPUNIT_ASSERT_MESSAGE("testQueryEmptyCells", aResult == aExpected); +} + +void ScXCellRangesQuery::testQueryFormulaCells() +{ + rtl::OUString aExpected(RTL_CONSTASCII_USTRINGPARAM("Sheet1.C2")); + uno::Reference xCellRangesQuery = init(); + uno::Reference xRanges = xCellRangesQuery->queryFormulaCells(sheet::CellFlags::FORMULA); + rtl::OUString aResult = xRanges->getRangeAddressesAsString(); + std::cout << "testQueryFormulaCells: Result: " << rtl::OUStringToOString(aResult, RTL_TEXTENCODING_UTF8).getStr() << std::endl; + CPPUNIT_ASSERT_MESSAGE("testQueryFormulaCells", aResult == aExpected); +} + +void ScXCellRangesQuery::testQueryIntersection() +{ + rtl::OUString aExpected(RTL_CONSTASCII_USTRINGPARAM("Sheet1.D4:D5")); + uno::Reference xCellRangesQuery = init(); + uno::Reference xRanges = xCellRangesQuery->queryIntersection(table::CellRangeAddress(0,3,3,7,7)); + rtl::OUString aResult = xRanges->getRangeAddressesAsString(); + std::cout << "testQueryIntersection: Result: " << rtl::OUStringToOString(aResult, RTL_TEXTENCODING_UTF8).getStr() << std::endl; + CPPUNIT_ASSERT_MESSAGE("testQueryFormulaCells", aResult == aExpected); +} + +void ScXCellRangesQuery::testQueryRowDifference() +{ + rtl::OUString aExpected(RTL_CONSTASCII_USTRINGPARAM("Sheet1.A2:A4,Sheet1.C2:D4")); + uno::Reference xCellRangesQuery = init(); + uno::Reference xRanges = xCellRangesQuery->queryRowDifferences(table::CellAddress(0,1,1)); + rtl::OUString aResult = xRanges->getRangeAddressesAsString(); + std::cout << "testQueryRowDifference: Result: " << rtl::OUStringToOString(aResult, RTL_TEXTENCODING_UTF8).getStr() << std::endl; + CPPUNIT_ASSERT_MESSAGE("testQueryFormulaCells", aResult == aExpected); +} + +void ScXCellRangesQuery::testQueryVisibleCells() +{ + setRowVisible(false); + rtl::OUString aExpected(RTL_CONSTASCII_USTRINGPARAM("Sheet1.A2")); + uno::Reference xCellRangesQuery = init(); + uno::Reference xRanges = xCellRangesQuery->queryVisibleCells(); + rtl::OUString aResult = xRanges->getRangeAddressesAsString(); + std::cout << "testQueryVisibleCells: Result: " << rtl::OUStringToOString(aResult, RTL_TEXTENCODING_UTF8).getStr() << std::endl; + CPPUNIT_ASSERT_MESSAGE("testQueryFormulaCells", aResult == aExpected); +} + +void ScXCellRangesQuery::setRowVisible(bool bVisible) +{ + +} + +CPPUNIT_TEST_SUITE_REGISTRATION(ScXCellRangesQuery); + +CPPUNIT_PLUGIN_IMPLEMENT(); + +} + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sc/qa/unoapi/testdocuments/xcellrangesquery.ods b/sc/qa/unoapi/testdocuments/xcellrangesquery.ods deleted file mode 100644 index 562229c4070f..000000000000 Binary files a/sc/qa/unoapi/testdocuments/xcellrangesquery.ods and /dev/null differ diff --git a/sc/qa/unoapi/xcellrangesquery.cxx b/sc/qa/unoapi/xcellrangesquery.cxx deleted file mode 100644 index 3d395d60ebf2..000000000000 --- a/sc/qa/unoapi/xcellrangesquery.cxx +++ /dev/null @@ -1,179 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * Version: MPL 1.1 / GPLv3+ / LGPLv3+ - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License or as specified alternatively below. You may obtain a copy of - * the License at http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * Major Contributor(s): - * [ Copyright (C) 2011 Markus Mohrhard (initial developer) ] - * - * All Rights Reserved. - * - * For minor contributions see the git repository. - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 3 or later (the "GPLv3+"), or - * the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"), - * in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable - * instead of those above. - */ - -#include - -#include -#include -#include -#include -#include -#include - -using namespace com::sun::star; - - -namespace ScCellRangeObj { - -class ScXCellRangesQuery : public UnoApiTest -{ -public: - ScXCellRangesQuery(); - - uno::Reference init(); - - void setRowVisible(bool bVisible); - - //Testcases - void testQueryColumnDifference(); - void testQueryContentDifference(); - void testQueryEmptyCells(); - void testQueryFormulaCells(); - void testQueryIntersection(); - void testQueryRowDifference(); - void testQueryVisibleCells(); - - CPPUNIT_TEST_SUITE(ScXCellRangesQuery); - CPPUNIT_TEST(testQueryColumnDifference); - CPPUNIT_TEST(testQueryContentDifference); - CPPUNIT_TEST(testQueryEmptyCells); - //looks broken - //CPPUNIT_TEST(testQueryFormulaCells); - CPPUNIT_TEST(testQueryIntersection); - CPPUNIT_TEST(testQueryRowDifference); - CPPUNIT_TEST_SUITE_END(); - -}; - -ScXCellRangesQuery::ScXCellRangesQuery() -{ - -} - -uno::Reference ScXCellRangesQuery::init() -{ - rtl::OUString aFileURL; - const rtl::OUString aFileBase(RTL_CONSTASCII_USTRINGPARAM("xcellrangesquery.ods")); - createFileURL(aFileBase, aFileURL); - std::cout << rtl::OUStringToOString(aFileURL, RTL_TEXTENCODING_UTF8).getStr() << std::endl; - uno::Reference< lang::XComponent > xComponent = loadFromDesktop(aFileURL); - uno::Reference< sheet::XSpreadsheetDocument> xDoc (xComponent, UNO_QUERY_THROW); - uno::Reference< container::XIndexAccess > xIndex (xDoc->getSheets(), UNO_QUERY_THROW); - uno::Reference< sheet::XSpreadsheet > xSheet( xIndex->getByIndex(0), UNO_QUERY_THROW); - - CPPUNIT_ASSERT_MESSAGE("Could not create interface of type XSpreadsheet", xSheet.is()); - - uno::Reference xReturn(xSheet->getCellRangeByPosition(0,0,3,4), UNO_QUERY_THROW); - - CPPUNIT_ASSERT_MESSAGE("Could not create object of type XCellRangesQuery", xReturn.is()); - return xReturn; -} - -void ScXCellRangesQuery::testQueryColumnDifference() -{ - rtl::OUString aExpected(RTL_CONSTASCII_USTRINGPARAM("Sheet1.B1:C1,Sheet1.B3:C5")); - uno::Reference xCellRangesQuery = init(); - uno::Reference xRanges = xCellRangesQuery->queryColumnDifferences(table::CellAddress(0, 1, 1)); - rtl::OUString aResult = xRanges->getRangeAddressesAsString(); - std::cout << "testQueryColumnDifference: Result: " << rtl::OUStringToOString(aResult, RTL_TEXTENCODING_UTF8).getStr() << std::endl; - CPPUNIT_ASSERT_MESSAGE("testQueryColumnDifference", aResult == aExpected); -} - -void ScXCellRangesQuery::testQueryContentDifference() -{ - rtl::OUString aExpected(RTL_CONSTASCII_USTRINGPARAM("Sheet1.B2:B3")); - uno::Reference xCellRangesQuery = init(); - uno::Reference xRanges = xCellRangesQuery->queryContentCells(sheet::CellFlags::VALUE); - rtl::OUString aResult = xRanges->getRangeAddressesAsString(); - std::cout << "testQueryContentDifference: Result: " << rtl::OUStringToOString(aResult, RTL_TEXTENCODING_UTF8).getStr() << std::endl; - CPPUNIT_ASSERT_MESSAGE("testQueryContentDifference", aResult == aExpected); -} - -void ScXCellRangesQuery::testQueryEmptyCells() -{ - rtl::OUString aExpected(RTL_CONSTASCII_USTRINGPARAM("Sheet1.A1:A5,Sheet1.B1:C1,Sheet1.B5,Sheet1.C3:C5,Sheet1.D1:D5")); - uno::Reference xCellRangesQuery = init(); - uno::Reference xRanges = xCellRangesQuery->queryEmptyCells(); - rtl::OUString aResult = xRanges->getRangeAddressesAsString(); - std::cout << "testQueryEmptyCells: Result: " << rtl::OUStringToOString(aResult, RTL_TEXTENCODING_UTF8).getStr() << std::endl; - CPPUNIT_ASSERT_MESSAGE("testQueryEmptyCells", aResult == aExpected); -} - -void ScXCellRangesQuery::testQueryFormulaCells() -{ - rtl::OUString aExpected(RTL_CONSTASCII_USTRINGPARAM("Sheet1.C2")); - uno::Reference xCellRangesQuery = init(); - uno::Reference xRanges = xCellRangesQuery->queryFormulaCells(sheet::CellFlags::FORMULA); - rtl::OUString aResult = xRanges->getRangeAddressesAsString(); - std::cout << "testQueryFormulaCells: Result: " << rtl::OUStringToOString(aResult, RTL_TEXTENCODING_UTF8).getStr() << std::endl; - CPPUNIT_ASSERT_MESSAGE("testQueryFormulaCells", aResult == aExpected); -} - -void ScXCellRangesQuery::testQueryIntersection() -{ - rtl::OUString aExpected(RTL_CONSTASCII_USTRINGPARAM("Sheet1.D4:D5")); - uno::Reference xCellRangesQuery = init(); - uno::Reference xRanges = xCellRangesQuery->queryIntersection(table::CellRangeAddress(0,3,3,7,7)); - rtl::OUString aResult = xRanges->getRangeAddressesAsString(); - std::cout << "testQueryIntersection: Result: " << rtl::OUStringToOString(aResult, RTL_TEXTENCODING_UTF8).getStr() << std::endl; - CPPUNIT_ASSERT_MESSAGE("testQueryFormulaCells", aResult == aExpected); -} - -void ScXCellRangesQuery::testQueryRowDifference() -{ - rtl::OUString aExpected(RTL_CONSTASCII_USTRINGPARAM("Sheet1.A2:A4,Sheet1.C2:D4")); - uno::Reference xCellRangesQuery = init(); - uno::Reference xRanges = xCellRangesQuery->queryRowDifferences(table::CellAddress(0,1,1)); - rtl::OUString aResult = xRanges->getRangeAddressesAsString(); - std::cout << "testQueryRowDifference: Result: " << rtl::OUStringToOString(aResult, RTL_TEXTENCODING_UTF8).getStr() << std::endl; - CPPUNIT_ASSERT_MESSAGE("testQueryFormulaCells", aResult == aExpected); -} - -void ScXCellRangesQuery::testQueryVisibleCells() -{ - setRowVisible(false); - rtl::OUString aExpected(RTL_CONSTASCII_USTRINGPARAM("Sheet1.A2")); - uno::Reference xCellRangesQuery = init(); - uno::Reference xRanges = xCellRangesQuery->queryVisibleCells(); - rtl::OUString aResult = xRanges->getRangeAddressesAsString(); - std::cout << "testQueryVisibleCells: Result: " << rtl::OUStringToOString(aResult, RTL_TEXTENCODING_UTF8).getStr() << std::endl; - CPPUNIT_ASSERT_MESSAGE("testQueryFormulaCells", aResult == aExpected); -} - -void ScXCellRangesQuery::setRowVisible(bool bVisible) -{ - -} - -CPPUNIT_TEST_SUITE_REGISTRATION(ScXCellRangesQuery); - -CPPUNIT_PLUGIN_IMPLEMENT(); - -} - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/test/source/unoapi_test.cxx b/test/source/unoapi_test.cxx index 0a8213e539ad..0a6f4aa4adf0 100644 --- a/test/source/unoapi_test.cxx +++ b/test/source/unoapi_test.cxx @@ -29,7 +29,7 @@ #include "test/unoapi_test.hxx" UnoApiTest::UnoApiTest() - : m_aBaseString(RTL_CONSTASCII_USTRINGPARAM("/sc/qa/unoapi/testdocuments")) + : m_aBaseString(RTL_CONSTASCII_USTRINGPARAM("/sc/qa/extras/testdocuments")) { } -- cgit