diff options
author | Jens Carl <j.carl43@gmx.de> | 2017-12-11 20:26:42 +0000 |
---|---|---|
committer | Jens Carl <j.carl43@gmx.de> | 2017-12-12 02:32:46 +0100 |
commit | 68f7d89cecc74e1df649e0691676178db544f913 (patch) | |
tree | cb1613f6fd14db4756742f306a728b662347498d | |
parent | 3f614f431475e1bf3bb3bbeac59b0681309628b7 (diff) |
tdf#45904 Move _XConsolidationDescriptor Java tests to C++
Change-Id: Ib3e3722c1a4799ebb0cbb78f458abd6b967d6ba1
Reviewed-on: https://gerrit.libreoffice.org/46263
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Jens Carl <j.carl43@gmx.de>
-rw-r--r-- | include/test/sheet/xconsolidationdescriptor.hxx | 45 | ||||
-rw-r--r-- | qadevOOo/Jar_OOoRunner.mk | 2 | ||||
-rw-r--r-- | qadevOOo/objdsc/sc/com.sun.star.comp.office.ScConsolidationDescriptor.csv | 12 | ||||
-rw-r--r-- | qadevOOo/tests/java/ifc/sheet/_XConsolidationDescriptor.java | 253 | ||||
-rw-r--r-- | qadevOOo/tests/java/mod/_sc/ScConsolidationDescriptor.java | 99 | ||||
-rw-r--r-- | sc/CppunitTest_sc_consolidationdescriptorobj.mk | 105 | ||||
-rw-r--r-- | sc/Module_sc.mk | 1 | ||||
-rw-r--r-- | sc/qa/extras/scconsolidationdescriptorobj.cxx | 105 | ||||
-rw-r--r-- | sc/qa/unoapi/sc_3.sce | 1 | ||||
-rw-r--r-- | test/Library_subsequenttest.mk | 1 | ||||
-rw-r--r-- | test/source/sheet/xconsolidationdescriptor.cxx | 144 |
11 files changed, 401 insertions, 367 deletions
diff --git a/include/test/sheet/xconsolidationdescriptor.hxx b/include/test/sheet/xconsolidationdescriptor.hxx new file mode 100644 index 000000000000..ff5fb5b8254c --- /dev/null +++ b/include/test/sheet/xconsolidationdescriptor.hxx @@ -0,0 +1,45 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#ifndef INCLUDED_TEST_SHEET_XCONSOLIDATIONDESCRIPTOR_HXX +#define INCLUDED_TEST_SHEET_XCONSOLIDATIONDESCRIPTOR_HXX + +#include <com/sun/star/uno/XInterface.hpp> +#include <com/sun/star/uno/Reference.hxx> + +#include <test/testdllapi.hxx> + +namespace apitest +{ +class OOO_DLLPUBLIC_TEST XConsolidationDescriptor +{ +public: + virtual css::uno::Reference<css::uno::XInterface> init() = 0; + + void testGetFunction(); + void testSetFunction(); + void testGetSources(); + void testSetSources(); + void testGetStartOutputPosition(); + void testSetStartOutputPosition(); + void testGetUseColumnHeaders(); + void testSetUseColumnHeaders(); + void testGetUseRowHeaders(); + void testSetUseRowHeaders(); + void testGetInsertLinks(); + void testSetInsertLinks(); + +protected: + ~XConsolidationDescriptor() {} +}; +} + +#endif // INCLUDED_TEST_SHEET_XCONSOLIDATIONDESCRIPTOR_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */ diff --git a/qadevOOo/Jar_OOoRunner.mk b/qadevOOo/Jar_OOoRunner.mk index abd1b2efdf3e..4e378ebc4b0e 100644 --- a/qadevOOo/Jar_OOoRunner.mk +++ b/qadevOOo/Jar_OOoRunner.mk @@ -594,7 +594,6 @@ $(eval $(call gb_Jar_add_sourcefiles,OOoRunner,\ qadevOOo/tests/java/ifc/sheet/_XCellRangeReferrer \ qadevOOo/tests/java/ifc/sheet/_XCellRangesQuery \ qadevOOo/tests/java/ifc/sheet/_XConsolidatable \ - qadevOOo/tests/java/ifc/sheet/_XConsolidationDescriptor \ qadevOOo/tests/java/ifc/sheet/_XDDELink \ qadevOOo/tests/java/ifc/sheet/_XDocumentAuditing \ qadevOOo/tests/java/ifc/sheet/_XEnhancedMouseClickBroadcaster \ @@ -1013,7 +1012,6 @@ $(eval $(call gb_Jar_add_sourcefiles,OOoRunner,\ qadevOOo/tests/java/mod/_sc/ScCellTextCursor \ qadevOOo/tests/java/mod/_sc/ScChartObj \ qadevOOo/tests/java/mod/_sc/ScChartsObj \ - qadevOOo/tests/java/mod/_sc/ScConsolidationDescriptor \ qadevOOo/tests/java/mod/_sc/ScDatabaseRangeObj \ qadevOOo/tests/java/mod/_sc/ScDatabaseRangesObj \ qadevOOo/tests/java/mod/_sc/ScDataPilotFieldGroupItemObj \ diff --git a/qadevOOo/objdsc/sc/com.sun.star.comp.office.ScConsolidationDescriptor.csv b/qadevOOo/objdsc/sc/com.sun.star.comp.office.ScConsolidationDescriptor.csv deleted file mode 100644 index b63ae7188675..000000000000 --- a/qadevOOo/objdsc/sc/com.sun.star.comp.office.ScConsolidationDescriptor.csv +++ /dev/null @@ -1,12 +0,0 @@ -"ScConsolidationDescriptor";"com::sun::star::sheet::XConsolidationDescriptor";"getFunction()" -"ScConsolidationDescriptor";"com::sun::star::sheet::XConsolidationDescriptor";"setFunction()" -"ScConsolidationDescriptor";"com::sun::star::sheet::XConsolidationDescriptor";"getSources()" -"ScConsolidationDescriptor";"com::sun::star::sheet::XConsolidationDescriptor";"setSources()" -"ScConsolidationDescriptor";"com::sun::star::sheet::XConsolidationDescriptor";"getStartOutputPosition()" -"ScConsolidationDescriptor";"com::sun::star::sheet::XConsolidationDescriptor";"setStartOutputPosition()" -"ScConsolidationDescriptor";"com::sun::star::sheet::XConsolidationDescriptor";"getUseColumnHeaders()" -"ScConsolidationDescriptor";"com::sun::star::sheet::XConsolidationDescriptor";"setUseColumnHeaders()" -"ScConsolidationDescriptor";"com::sun::star::sheet::XConsolidationDescriptor";"getUseRowHeaders()" -"ScConsolidationDescriptor";"com::sun::star::sheet::XConsolidationDescriptor";"setUseRowHeaders()" -"ScConsolidationDescriptor";"com::sun::star::sheet::XConsolidationDescriptor";"getInsertLinks()" -"ScConsolidationDescriptor";"com::sun::star::sheet::XConsolidationDescriptor";"setInsertLinks()" diff --git a/qadevOOo/tests/java/ifc/sheet/_XConsolidationDescriptor.java b/qadevOOo/tests/java/ifc/sheet/_XConsolidationDescriptor.java deleted file mode 100644 index ed82b68b21c8..000000000000 --- a/qadevOOo/tests/java/ifc/sheet/_XConsolidationDescriptor.java +++ /dev/null @@ -1,253 +0,0 @@ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -package ifc.sheet; - -import lib.MultiMethodTest; -import util.ValueComparer; - -import com.sun.star.sheet.GeneralFunction; -import com.sun.star.sheet.XConsolidationDescriptor; -import com.sun.star.table.CellAddress; -import com.sun.star.table.CellRangeAddress; - -/** -* Testing <code>com.sun.star.sheet.XConsolidationDescriptor</code> -* interface methods : -* <ul> -* <li><code> getFunction()</code></li> -* <li><code> setFunction()</code></li> -* <li><code> getSources()</code></li> -* <li><code> setSources()</code></li> -* <li><code> getStartOutputPosition()</code></li> -* <li><code> setStartOutputPosition()</code></li> -* <li><code> getUseColumnHeaders()</code></li> -* <li><code> setUseColumnHeaders()</code></li> -* <li><code> getUseRowHeaders()</code></li> -* <li><code> setUseRowHeaders()</code></li> -* <li><code> getInsertLinks()</code></li> -* <li><code> setInsertLinks()</code></li> -* </ul> <p> -* @see com.sun.star.sheet.XConsolidationDescriptor -*/ -public class _XConsolidationDescriptor extends MultiMethodTest { - - public XConsolidationDescriptor oObj = null; - public GeneralFunction aFunction = null; - public boolean insertLinks = false; - public boolean useColumnHeaders = false; - public boolean useRowHeaders = false; - public CellRangeAddress[] CRaddr = null; - public CellAddress addr = null; - - /** - * Test calls the method, stores and checks returned value. <p> - * Has <b> OK </b> status if returned value isn't null. <p> - */ - public void _getFunction() { - aFunction = oObj.getFunction(); - tRes.tested("getFunction()", aFunction != null ); - } - - /** - * Test calls the method and stores returned value. <p> - * Has <b> OK </b> status if the method successfully returns. <p> - */ - public void _getInsertLinks() { - insertLinks = oObj.getInsertLinks(); - tRes.tested("getInsertLinks()", true); - } - - /** - * Test calls the method and stores returned value. <p> - * Has <b> OK </b> status if the method successfully returns. <p> - */ - public void _getSources() { - CRaddr = oObj.getSources(); - tRes.tested("getSources()", true); - } - - /** - * Test calls the method and stores returned value. <p> - * Has <b> OK </b> status if the method successfully returns. <p> - */ - public void _getStartOutputPosition() { - addr = oObj.getStartOutputPosition(); - tRes.tested("getStartOutputPosition()", true); - } - - /** - * Test calls the method and stores returned value. <p> - * Has <b> OK </b> status if the method successfully returns. <p> - */ - public void _getUseColumnHeaders() { - useColumnHeaders = oObj.getUseColumnHeaders(); - tRes.tested("getUseColumnHeaders()", true); - } - - /** - * Test calls the method and stores returned value. <p> - * Has <b> OK </b> status if the method successfully returns. <p> - */ - public void _getUseRowHeaders() { - useRowHeaders = oObj.getUseRowHeaders(); - tRes.tested("getUseRowHeaders()", true); - } - - /** - * Test sets the new current function, gets current function - * and compare function gotten by method <code>getFunction()</code> with - * function that was set. <p> - * Has <b> OK </b> status if the functions aren't equal. <p> - * The following method tests are to be completed successfully before : - * <ul> - * <li> <code> getFunction() </code> : to have current value of - * the function by which the ranges are consolidated </li> - * </ul> - */ - public void _setFunction() { - requiredMethod("getFunction()"); - GeneralFunction aFunction2 = null; - if (aFunction.equals(GeneralFunction.SUM)) { - aFunction2 = GeneralFunction.COUNT; - } - else { - aFunction2 = GeneralFunction.SUM; - } - oObj.setFunction(aFunction2); - aFunction2 = oObj.getFunction(); - tRes.tested("setFunction()", !aFunction.equals(aFunction2)); - } - - /** - * Test sets property to value that negative to the current value - * and compares returned value with value that was set. <p> - * Has <b> OK </b> status if returned value isn't equal to value that was - * stored by method <code>getInsertLinks()</code>. <p> - * The following method tests are to be completed successfully before : - * <ul> - * <li> <code> getInsertLinks() </code> : to have current value of - * this property </li> - * </ul> - */ - public void _setInsertLinks() { - requiredMethod("getInsertLinks()"); - oObj.setInsertLinks( !insertLinks ); - boolean insertLinks2 = oObj.getInsertLinks(); - tRes.tested("setInsertLinks()", insertLinks != insertLinks2); - } - - /** - * Test sets new cell ranges and compares cell ranges gotten by method - * <code>getSources()</code> with the cell range that was set. <p> - * Has <b> OK </b> status if returned value isn't equal to value that was - * stored by method <code>getSources()</code>. <p> - * The following method tests are to be completed successfully before : - * <ul> - * <li> <code> getSources() </code> : to have the cell ranges which - * are consolidated </li> - * </ul> - */ - public void _setSources() { - requiredMethod("getSources()"); - oObj.setSources(newCRaddr()); - CellRangeAddress[] CRaddr2 = oObj.getSources(); - tRes.tested("setSources()",!ValueComparer.equalValue(CRaddr, CRaddr2)); - } - - /** - * Test sets new cell address for start output position and compares - * cell address gotten by method <code>getStartOutputPosition()</code> - * with the cell address that was set. <p> - * Has <b> OK </b> status if returned value isn't equal to value that was - * stored by method <code>getStartOutputPosition()</code>. <p> - * The following method tests are to be completed successfully before : - * <ul> - * <li> <code> getStartOutputPosition() </code> : to have the cell address - * of start output position </li> - * </ul> - */ - public void _setStartOutputPosition() { - requiredMethod("getStartOutputPosition()"); - CellAddress addr2 = new CellAddress(); - addr2.Column = addr.Column + 1; - addr2.Row = addr.Row + 1; - oObj.setStartOutputPosition(addr2); - tRes.tested("setStartOutputPosition()", - !ValueComparer.equalValue(addr, addr2)); - } - - /** - * Test sets property to value that negative to the current value - * and compares returned value with value that was set. <p> - * Has <b> OK </b> status if returned value isn't equal to value that was - * stored by method <code>getUseColumnHeaders()</code>. <p> - * The following method tests are to be completed successfully before : - * <ul> - * <li> <code> getUseColumnHeaders() </code> : to have current value of - * this property </li> - * </ul> - */ - public void _setUseColumnHeaders() { - requiredMethod("getUseColumnHeaders()"); - oObj.setUseColumnHeaders( !useColumnHeaders ); - boolean uCH = oObj.getUseColumnHeaders(); - tRes.tested("setUseColumnHeaders()", useColumnHeaders != uCH); - } - - /** - * Test sets property to value that negative to the current value - * and compares returned value with value that was set. <p> - * Has <b> OK </b> status if returned value isn't equal to value that was - * stored by method <code>getUseRowHeaders()</code>. <p> - * The following method tests are to be completed successfully before : - * <ul> - * <li> <code> getUseRowHeaders() </code> : to have current value of - * this property </li> - * </ul> - */ - public void _setUseRowHeaders() { - requiredMethod("getUseRowHeaders()"); - oObj.setUseRowHeaders(!useRowHeaders); - boolean uRH = oObj.getUseRowHeaders(); - tRes.tested("setUseRowHeaders()", useRowHeaders != uRH ); - } - - /** - * Constructs new cell range addresses using old cell range addresses. - * @return new cell range addresses - */ - public CellRangeAddress[] newCRaddr() { - - CellRangeAddress[] back = new CellRangeAddress[1]; - - CellRangeAddress cra1 = new CellRangeAddress(); - cra1.EndColumn=5; - cra1.EndRow=5; - cra1.Sheet=(short)0; - cra1.StartColumn=1; - cra1.StartRow=1; - back[0]=cra1; - - return back; - } - - -} // finish class _XConsolidationDescriptor - - diff --git a/qadevOOo/tests/java/mod/_sc/ScConsolidationDescriptor.java b/qadevOOo/tests/java/mod/_sc/ScConsolidationDescriptor.java deleted file mode 100644 index 896db757b9c4..000000000000 --- a/qadevOOo/tests/java/mod/_sc/ScConsolidationDescriptor.java +++ /dev/null @@ -1,99 +0,0 @@ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -package mod._sc; - -import java.io.PrintWriter; - -import lib.TestCase; -import lib.TestEnvironment; -import lib.TestParameters; -import util.SOfficeFactory; - -import com.sun.star.lang.XComponent; -import com.sun.star.sheet.XConsolidatable; -import com.sun.star.sheet.XSpreadsheetDocument; -import com.sun.star.uno.UnoRuntime; -import com.sun.star.uno.XInterface; - -/** -* Test for object which is represented by service -* <code>com.sun.star.sheet.ConsolidationDescriptor</code>. <p> -* Object implements the following interfaces : -* <ul> -* <li> <code>com::sun::star::sheet::XConsolidationDescriptor</code></li> -* </ul> -* @see com.sun.star.sheet.ConsolidationDescriptor -* @see com.sun.star.sheet.XConsolidationDescriptor -* @see ifc.sheet._XConsolidationDescriptor -*/ -public class ScConsolidationDescriptor extends TestCase { - private XSpreadsheetDocument xSheetDoc = null; - - /** - * Creates Spreadsheet document. - */ - @Override - protected void initialize( TestParameters tParam, PrintWriter log ) throws Exception { - // get a soffice factory object - SOfficeFactory SOF = SOfficeFactory.getFactory( tParam.getMSF()); - log.println( "creating a sheetdocument" ); - xSheetDoc = SOF.createCalcDoc(null); - } - - /** - * Disposes Spreadsheet document. - */ - @Override - protected void cleanup( TestParameters tParam, PrintWriter log ) { - log.println( " disposing xSheetDoc " ); - XComponent oComp = UnoRuntime.queryInterface (XComponent.class, xSheetDoc) ; - util.DesktopTools.closeDoc(oComp); - } - - /** - * Creating a TestEnvironment for the interfaces to be tested. - * Retrieves a collection of spreadsheets from a document - * and takes one of them. Creates consolidation description using - * the interface <code>XConsolidatable</code>. - * This description is the instance of the service - * <code>com.sun.star.sheet.ConsolidationDescriptor</code>. - * @see com.sun.star.sheet.ConsolidationDescriptor - * @see com.sun.star.sheet.XConsolidatable - */ - @Override - protected TestEnvironment createTestEnvironment(TestParameters tParam, PrintWriter log) { - - XInterface oObj = null; - - // creation of testobject here - // first we write what we are intend to do to log file - log.println( "creating a test environment" ); - - XConsolidatable xConsolidate = UnoRuntime.queryInterface(XConsolidatable.class, xSheetDoc); - - oObj = xConsolidate.createConsolidationDescriptor(true); - // create testobject here - log.println("creating a new environment for object"); - TestEnvironment tEnv = new TestEnvironment(oObj); - - return tEnv; - } // finish method getTestEnvironment - -} // finish class ScConsolidationDescriptor - diff --git a/sc/CppunitTest_sc_consolidationdescriptorobj.mk b/sc/CppunitTest_sc_consolidationdescriptorobj.mk new file mode 100644 index 000000000000..6ab04c3316f8 --- /dev/null +++ b/sc/CppunitTest_sc_consolidationdescriptorobj.mk @@ -0,0 +1,105 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +#************************************************************************* +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +#************************************************************************* + +$(eval $(call gb_CppunitTest_CppunitTest,sc_consolidationdescriptorobj)) + +$(eval $(call gb_CppunitTest_use_external,sc_consolidationdescriptorobj,boost_headers)) + +$(eval $(call gb_CppunitTest_add_exception_objects,sc_consolidationdescriptorobj, \ + sc/qa/extras/scconsolidationdescriptorobj \ +)) + +$(eval $(call gb_CppunitTest_use_libraries,sc_consolidationdescriptorobj, \ + basegfx \ + comphelper \ + cppu \ + cppuhelper \ + drawinglayer \ + editeng \ + for \ + forui \ + i18nlangtag \ + msfilter \ + oox \ + sal \ + salhelper \ + sax \ + sb \ + sc \ + sfx \ + sot \ + subsequenttest \ + svl \ + svt \ + svx \ + svxcore \ + test \ + tk \ + tl \ + ucbhelper \ + unotest \ + utl \ + vbahelper \ + vcl \ + xo \ +)) + +$(eval $(call gb_CppunitTest_set_include,sc_consolidationdescriptorobj,\ + -I$(SRCDIR)/sc/source/ui/inc \ + -I$(SRCDIR)/sc/inc \ + $$(INCLUDE) \ +)) + +$(eval $(call gb_CppunitTest_use_sdk_api,sc_consolidationdescriptorobj)) + +$(eval $(call gb_CppunitTest_use_ure,sc_consolidationdescriptorobj)) +$(eval $(call gb_CppunitTest_use_vcl,sc_consolidationdescriptorobj)) + +$(eval $(call gb_CppunitTest_use_components,sc_consolidationdescriptorobj,\ + basic/util/sb \ + comphelper/util/comphelp \ + configmgr/source/configmgr \ + dbaccess/util/dba \ + filter/source/config/cache/filterconfig1 \ + filter/source/storagefilterdetect/storagefd \ + forms/util/frm \ + framework/util/fwk \ + i18npool/util/i18npool \ + linguistic/source/lng \ + oox/util/oox \ + package/source/xstor/xstor \ + package/util/package2 \ + sax/source/expatwrap/expwrap \ + scripting/source/basprov/basprov \ + scripting/util/scriptframe \ + sc/util/sc \ + sc/util/scd \ + sc/util/scfilt \ + $(call gb_Helper_optional,SCRIPTING, \ + sc/util/vbaobj) \ + sfx2/util/sfx \ + sot/util/sot \ + svl/source/fsstor/fsstorage \ + toolkit/util/tk \ + ucb/source/core/ucb1 \ + ucb/source/ucp/file/ucpfile1 \ + ucb/source/ucp/tdoc/ucptdoc1 \ + unotools/util/utl \ + unoxml/source/rdf/unordf \ + unoxml/source/service/unoxml \ + uui/util/uui \ + xmloff/util/xo \ + svtools/util/svt \ +)) + +$(eval $(call gb_CppunitTest_use_configuration,sc_consolidationdescriptorobj)) + +# vim: set noet sw=4 ts=4: diff --git a/sc/Module_sc.mk b/sc/Module_sc.mk index 9c8eceba8bd1..2a06f629bb46 100644 --- a/sc/Module_sc.mk +++ b/sc/Module_sc.mk @@ -146,6 +146,7 @@ $(eval $(call gb_Module_add_subsequentcheck_targets,sc,\ CppunitTest_sc_functionlistobj \ CppunitTest_sc_datapilottablesobj \ CppunitTest_sc_databaserangesobj \ + CppunitTest_sc_consolidationdescriptorobj \ )) $(eval $(call gb_Module_add_perfcheck_targets,sc,\ diff --git a/sc/qa/extras/scconsolidationdescriptorobj.cxx b/sc/qa/extras/scconsolidationdescriptorobj.cxx new file mode 100644 index 000000000000..16c4ea8b820e --- /dev/null +++ b/sc/qa/extras/scconsolidationdescriptorobj.cxx @@ -0,0 +1,105 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#include <test/calc_unoapi_test.hxx> +#include <test/sheet/xconsolidationdescriptor.hxx> + +#include <com/sun/star/lang/XComponent.hpp> +#include <com/sun/star/sheet/XConsolidatable.hpp> +#include <com/sun/star/sheet/XSpreadsheetDocument.hpp> +#include <com/sun/star/uno/XInterface.hpp> + +#include <com/sun/star/uno/Reference.hxx> + +using namespace css; +using namespace css::uno; +using namespace com::sun::star; + +namespace sc_apitest +{ +#define NUMBER_OF_TESTS 12 + +class ScConsolidationDescriptorObj : public CalcUnoApiTest, public apitest::XConsolidationDescriptor +{ +public: + ScConsolidationDescriptorObj(); + + virtual uno::Reference<uno::XInterface> init() override; + virtual void setUp() override; + virtual void tearDown() override; + + CPPUNIT_TEST_SUITE(ScConsolidationDescriptorObj); + + // XConsolidationDescriptor + CPPUNIT_TEST(testGetFunction); + CPPUNIT_TEST(testSetFunction); + CPPUNIT_TEST(testGetSources); + CPPUNIT_TEST(testSetSources); + CPPUNIT_TEST(testGetStartOutputPosition); + CPPUNIT_TEST(testSetStartOutputPosition); + CPPUNIT_TEST(testGetUseColumnHeaders); + CPPUNIT_TEST(testSetUseColumnHeaders); + CPPUNIT_TEST(testGetUseRowHeaders); + CPPUNIT_TEST(testSetUseRowHeaders); + CPPUNIT_TEST(testGetInsertLinks); + CPPUNIT_TEST(testSetInsertLinks); + + CPPUNIT_TEST_SUITE_END(); + +private: + static sal_Int32 nTest; + static uno::Reference<lang::XComponent> mxComponent; +}; + +sal_Int32 ScConsolidationDescriptorObj::nTest = 0; +uno::Reference<lang::XComponent> ScConsolidationDescriptorObj::mxComponent; + +ScConsolidationDescriptorObj::ScConsolidationDescriptorObj() + : CalcUnoApiTest("/sc/qa/extras/testdocuments") +{ +} + +uno::Reference<uno::XInterface> ScConsolidationDescriptorObj::init() +{ + // create a calc document + if (!mxComponent.is()) + mxComponent = loadFromDesktop("private:factory/scalc"); + + uno::Reference<sheet::XSpreadsheetDocument> xDoc(mxComponent, UNO_QUERY_THROW); + CPPUNIT_ASSERT_MESSAGE("no calc document", xDoc.is()); + + uno::Reference<sheet::XConsolidatable> xConsolidatable(xDoc, UNO_QUERY_THROW); + return xConsolidatable->createConsolidationDescriptor(true); +} + +void ScConsolidationDescriptorObj::setUp() +{ + nTest++; + CPPUNIT_ASSERT(nTest <= NUMBER_OF_TESTS); + CalcUnoApiTest::setUp(); +} + +void ScConsolidationDescriptorObj::tearDown() +{ + if (nTest == NUMBER_OF_TESTS) + { + closeDocument(mxComponent); + mxComponent.clear(); + } + + CalcUnoApiTest::tearDown(); +} + +CPPUNIT_TEST_SUITE_REGISTRATION(ScConsolidationDescriptorObj); + +} // end namespace + +CPPUNIT_PLUGIN_IMPLEMENT(); + +/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */ diff --git a/sc/qa/unoapi/sc_3.sce b/sc/qa/unoapi/sc_3.sce index 6b923db4bf43..ba1f28f1746a 100644 --- a/sc/qa/unoapi/sc_3.sce +++ b/sc/qa/unoapi/sc_3.sce @@ -23,7 +23,6 @@ -o sc.ScCellsObj -o sc.ScChartObj -o sc.ScChartsObj --o sc.ScConsolidationDescriptor -o sc.ScDDELinkObj -o sc.ScDDELinksObj -o sc.ScIndexEnumeration_DDELinksEnumeration diff --git a/test/Library_subsequenttest.mk b/test/Library_subsequenttest.mk index e2a8f3f64a09..544b9def3942 100644 --- a/test/Library_subsequenttest.mk +++ b/test/Library_subsequenttest.mk @@ -54,6 +54,7 @@ $(eval $(call gb_Library_add_exception_objects,subsequenttest,\ test/source/sheet/xcellrangereferrer \ test/source/sheet/xcellrangesquery \ test/source/sheet/xcellseries \ + test/source/sheet/xconsolidationdescriptor \ test/source/sheet/xgoalseek \ test/source/sheet/xdatabaserange \ test/source/sheet/xdatabaseranges \ diff --git a/test/source/sheet/xconsolidationdescriptor.cxx b/test/source/sheet/xconsolidationdescriptor.cxx new file mode 100644 index 000000000000..5b95d0acf321 --- /dev/null +++ b/test/source/sheet/xconsolidationdescriptor.cxx @@ -0,0 +1,144 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#include <test/sheet/xconsolidationdescriptor.hxx> +#include <test/cppunitasserthelper.hxx> + +#include <com/sun/star/sheet/GeneralFunction.hpp> +#include <com/sun/star/sheet/XConsolidationDescriptor.hpp> +#include <com/sun/star/table/CellAddress.hpp> +#include <com/sun/star/table/CellRangeAddress.hpp> +#include <com/sun/star/uno/Reference.hxx> +#include <com/sun/star/uno/Sequence.hxx> + +#include <cppunit/extensions/HelperMacros.h> + +using namespace css; +using namespace css::uno; + +namespace apitest +{ +void XConsolidationDescriptor::testGetFunction() +{ + uno::Reference<sheet::XConsolidationDescriptor> xConsolidationDescriptor(init(), + UNO_QUERY_THROW); + + CPPUNIT_ASSERT_EQUAL_MESSAGE("Unable to get function", sheet::GeneralFunction_SUM, + xConsolidationDescriptor->getFunction()); +} + +void XConsolidationDescriptor::testSetFunction() +{ + uno::Reference<sheet::XConsolidationDescriptor> xConsolidationDescriptor(init(), + UNO_QUERY_THROW); + + xConsolidationDescriptor->setFunction(sheet::GeneralFunction_COUNT); + CPPUNIT_ASSERT_EQUAL_MESSAGE("Unable to set function", sheet::GeneralFunction_COUNT, + xConsolidationDescriptor->getFunction()); +} + +void XConsolidationDescriptor::testGetSources() +{ + uno::Reference<sheet::XConsolidationDescriptor> xConsolidationDescriptor(init(), + UNO_QUERY_THROW); + + uno::Sequence<table::CellRangeAddress> aSources = xConsolidationDescriptor->getSources(); + CPPUNIT_ASSERT_EQUAL_MESSAGE("Unable to get sources", sal_Int32(0), aSources.getLength()); +} + +void XConsolidationDescriptor::testSetSources() +{ + uno::Reference<sheet::XConsolidationDescriptor> xConsolidationDescriptor(init(), + UNO_QUERY_THROW); + + uno::Sequence<table::CellRangeAddress> aSources(1); + aSources[0] = table::CellRangeAddress(0, 1, 1, 5, 5); + xConsolidationDescriptor->setSources(aSources); + CPPUNIT_ASSERT_EQUAL_MESSAGE("Unable to set sources", table::CellRangeAddress(0, 1, 1, 5, 5), + xConsolidationDescriptor->getSources()[0]); +} + +void XConsolidationDescriptor::testGetStartOutputPosition() +{ + uno::Reference<sheet::XConsolidationDescriptor> xConsolidationDescriptor(init(), + UNO_QUERY_THROW); + + CPPUNIT_ASSERT_EQUAL_MESSAGE("Unable to get start output position", table::CellAddress(0, 0, 0), + xConsolidationDescriptor->getStartOutputPosition()); +} + +void XConsolidationDescriptor::testSetStartOutputPosition() +{ + uno::Reference<sheet::XConsolidationDescriptor> xConsolidationDescriptor(init(), + UNO_QUERY_THROW); + + xConsolidationDescriptor->setStartOutputPosition(table::CellAddress(0, 1, 2)); + CPPUNIT_ASSERT_EQUAL_MESSAGE("Unable to set start output position", table::CellAddress(0, 1, 2), + xConsolidationDescriptor->getStartOutputPosition()); +} + +void XConsolidationDescriptor::testGetUseColumnHeaders() +{ + uno::Reference<sheet::XConsolidationDescriptor> xConsolidationDescriptor(init(), + UNO_QUERY_THROW); + + CPPUNIT_ASSERT_MESSAGE("Unable to get use column headers", + !xConsolidationDescriptor->getUseColumnHeaders()); +} + +void XConsolidationDescriptor::testSetUseColumnHeaders() +{ + uno::Reference<sheet::XConsolidationDescriptor> xConsolidationDescriptor(init(), + UNO_QUERY_THROW); + + xConsolidationDescriptor->setUseColumnHeaders(true); + CPPUNIT_ASSERT_MESSAGE("Unable to set use column headers", + xConsolidationDescriptor->getUseColumnHeaders()); +} + +void XConsolidationDescriptor::testGetUseRowHeaders() +{ + uno::Reference<sheet::XConsolidationDescriptor> xConsolidationDescriptor(init(), + UNO_QUERY_THROW); + + CPPUNIT_ASSERT_MESSAGE("Unable to get use row headers", + !xConsolidationDescriptor->getUseRowHeaders()); +} + +void XConsolidationDescriptor::testSetUseRowHeaders() +{ + uno::Reference<sheet::XConsolidationDescriptor> xConsolidationDescriptor(init(), + UNO_QUERY_THROW); + + xConsolidationDescriptor->setUseRowHeaders(true); + CPPUNIT_ASSERT_MESSAGE("Unable to set use row headers", + xConsolidationDescriptor->getUseRowHeaders()); +} + +void XConsolidationDescriptor::testGetInsertLinks() +{ + uno::Reference<sheet::XConsolidationDescriptor> xConsolidationDescriptor(init(), + UNO_QUERY_THROW); + + CPPUNIT_ASSERT_MESSAGE("Unable to get use insert links", + !xConsolidationDescriptor->getInsertLinks()); +} + +void XConsolidationDescriptor::testSetInsertLinks() +{ + uno::Reference<sheet::XConsolidationDescriptor> xConsolidationDescriptor(init(), + UNO_QUERY_THROW); + + xConsolidationDescriptor->setInsertLinks(true); + CPPUNIT_ASSERT_MESSAGE("Unable to set use insert links", + xConsolidationDescriptor->getInsertLinks()); +} +} + +/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */ |