[Libreoffice-commits] core.git: include/test qadevOOo/Jar_OOoRunner.mk qadevOOo/objdsc qadevOOo/tests sc/CppunitTest_sc_consolidationdescriptorobj.mk sc/Module_sc.mk sc/qa test/Library_subsequenttest.mk test/source

Jens Carl j.carl43 at gmx.de
Tue Dec 12 01:35:08 UTC 2017


 include/test/sheet/xconsolidationdescriptor.hxx                           |   45 +
 qadevOOo/Jar_OOoRunner.mk                                                 |    2 
 qadevOOo/objdsc/sc/com.sun.star.comp.office.ScConsolidationDescriptor.csv |   12 
 qadevOOo/tests/java/ifc/sheet/_XConsolidationDescriptor.java              |  253 ----------
 qadevOOo/tests/java/mod/_sc/ScConsolidationDescriptor.java                |   99 ---
 sc/CppunitTest_sc_consolidationdescriptorobj.mk                           |  105 ++++
 sc/Module_sc.mk                                                           |    1 
 sc/qa/extras/scconsolidationdescriptorobj.cxx                             |  105 ++++
 sc/qa/unoapi/sc_3.sce                                                     |    1 
 test/Library_subsequenttest.mk                                            |    1 
 test/source/sheet/xconsolidationdescriptor.cxx                            |  144 +++++
 11 files changed, 401 insertions(+), 367 deletions(-)

New commits:
commit 68f7d89cecc74e1df649e0691676178db544f913
Author: Jens Carl <j.carl43 at gmx.de>
Date:   Mon Dec 11 20:26:42 2017 +0000

    tdf#45904 Move _XConsolidationDescriptor Java tests to C++
    
    Change-Id: Ib3e3722c1a4799ebb0cbb78f458abd6b967d6ba1
    Reviewed-on: https://gerrit.libreoffice.org/46263
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Jens Carl <j.carl43 at gmx.de>

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: */


More information about the Libreoffice-commits mailing list