summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens Carl <j.carl43@gmx.de>2019-03-10 06:46:03 +0000
committerJens Carl <j.carl43@gmx.de>2019-03-10 20:07:15 +0100
commita2ae61ee38410579487f8d5729eb8348eece702d (patch)
treec0c13324375124d6693986a0780da9aa06dce1f8
parentef4dd9e5abe4440ebcd9b3f85f345c8667a64dfc (diff)
tdf#45904 Move XNameAccess Java tests to C++
Move XNameAccess Java tests to C++ for ScDataPilotFieldGroupObj and fixes i#46730. Change-Id: I4374774d52c93f381ccf9e71f735b0dab33bc2a4 Reviewed-on: https://gerrit.libreoffice.org/68999 Tested-by: Jenkins Reviewed-by: Jens Carl <j.carl43@gmx.de>
-rw-r--r--qadevOOo/Jar_OOoRunner.mk1
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDataPilotFieldGroupObj.csv3
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDataPilotFieldGroupObj.java248
-rw-r--r--sc/qa/extras/scdatapilotfieldgroupobj.cxx8
-rw-r--r--sc/qa/unoapi/sc_1.sce1
5 files changed, 8 insertions, 253 deletions
diff --git a/qadevOOo/Jar_OOoRunner.mk b/qadevOOo/Jar_OOoRunner.mk
index e9824a003db6..9e5265f3e632 100644
--- a/qadevOOo/Jar_OOoRunner.mk
+++ b/qadevOOo/Jar_OOoRunner.mk
@@ -960,7 +960,6 @@ $(eval $(call gb_Jar_add_sourcefiles,OOoRunner,\
qadevOOo/tests/java/mod/_sc/ScCellSearchObj \
qadevOOo/tests/java/mod/_sc/ScCellTextCursor \
qadevOOo/tests/java/mod/_sc/ScDatabaseRangeObj \
- qadevOOo/tests/java/mod/_sc/ScDataPilotFieldGroupObj \
qadevOOo/tests/java/mod/_sc/ScDataPilotItemObj \
qadevOOo/tests/java/mod/_sc/ScDocumentConfiguration \
qadevOOo/tests/java/mod/_sc/ScDrawPageObj \
diff --git a/qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDataPilotFieldGroupObj.csv b/qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDataPilotFieldGroupObj.csv
deleted file mode 100644
index 30984b4a5986..000000000000
--- a/qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDataPilotFieldGroupObj.csv
+++ /dev/null
@@ -1,3 +0,0 @@
-"ScDataPilotFieldGroupObj";"com::sun::star::container::XNameAccess";"getByName()"
-"ScDataPilotFieldGroupObj";"com::sun::star::container::XNameAccess";"getElementNames()"
-"ScDataPilotFieldGroupObj";"com::sun::star::container::XNameAccess";"hasByName()"
diff --git a/qadevOOo/tests/java/mod/_sc/ScDataPilotFieldGroupObj.java b/qadevOOo/tests/java/mod/_sc/ScDataPilotFieldGroupObj.java
deleted file mode 100644
index 72ea60ed7c3a..000000000000
--- a/qadevOOo/tests/java/mod/_sc/ScDataPilotFieldGroupObj.java
+++ /dev/null
@@ -1,248 +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 com.sun.star.beans.XPropertySet;
-import com.sun.star.container.XIndexAccess;
-import com.sun.star.container.XNamed;
-import com.sun.star.lang.XComponent;
-import com.sun.star.sheet.DataPilotFieldGroupInfo;
-import com.sun.star.sheet.XDataPilotDescriptor;
-import com.sun.star.sheet.XDataPilotFieldGrouping;
-import com.sun.star.sheet.XDataPilotTables;
-import com.sun.star.sheet.XDataPilotTablesSupplier;
-import com.sun.star.sheet.XSpreadsheet;
-import com.sun.star.sheet.XSpreadsheetDocument;
-import com.sun.star.sheet.XSpreadsheets;
-import com.sun.star.table.CellAddress;
-import com.sun.star.table.CellRangeAddress;
-import com.sun.star.uno.AnyConverter;
-import com.sun.star.uno.Type;
-import com.sun.star.uno.UnoRuntime;
-import com.sun.star.uno.XInterface;
-
-import java.io.PrintWriter;
-
-import lib.TestCase;
-import lib.TestEnvironment;
-import lib.TestParameters;
-
-import util.SOfficeFactory;
-
-
-
-public class ScDataPilotFieldGroupObj extends TestCase
-{
- private XSpreadsheetDocument xSheetDoc = null;
-
- /**
- * A field is filled some values. This integer determines the size of the
- * field in x and y direction.
- */
- private static final int mMaxFieldIndex = 6;
-
- /**
- * Creates Spreadsheet document.
- */
- @Override
- protected void initialize (TestParameters tParam, PrintWriter log) throws Exception
- {
- SOfficeFactory SOF = SOfficeFactory.getFactory (
- tParam.getMSF ());
-
- log.println ("creating a Spreadsheet document");
- 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);
- }
-
- @Override
- protected TestEnvironment createTestEnvironment (TestParameters Param,
- PrintWriter log) throws Exception
- {
- XInterface oObj = null;
- XInterface datapilotfield = null;
- XInterface groups = null;
-
- // creation of testobject here
- // first we write what we are intend to do to log file
- log.println ("Creating a test environment");
-
- // the cell range
- CellRangeAddress sCellRangeAdress = new CellRangeAddress ();
- sCellRangeAdress.Sheet = 0;
- sCellRangeAdress.StartColumn = 1;
- sCellRangeAdress.StartRow = 0;
- sCellRangeAdress.EndColumn = mMaxFieldIndex - 1;
- sCellRangeAdress.EndRow = mMaxFieldIndex - 1;
-
- // position of the data pilot table
- CellAddress sCellAdress = new CellAddress ();
- sCellAdress.Sheet = 0;
- sCellAdress.Column = 7;
- sCellAdress.Row = 8;
-
- log.println ("Getting a sheet");
-
- XSpreadsheets xSpreadsheets = xSheetDoc.getSheets ();
- XSpreadsheet oSheet = null;
- XSpreadsheet oSheet2 = null;
- XIndexAccess oIndexAccess = UnoRuntime.queryInterface (
- XIndexAccess.class, xSpreadsheets);
- // Make sure there are at least two sheets
- xSpreadsheets.insertNewByName("Some Sheet", (short)0);
-
- oSheet = (XSpreadsheet) AnyConverter.toObject (
- new Type (XSpreadsheet.class),
- oIndexAccess.getByIndex (0));
- oSheet2 = (XSpreadsheet) AnyConverter.toObject (
- new Type (XSpreadsheet.class),
- oIndexAccess.getByIndex (1));
-
- log.println ("Filling a table");
-
- for (int i = 1; i < mMaxFieldIndex; i++)
- {
- oSheet.getCellByPosition (i, 0).setFormula ("Col" + i);
- oSheet.getCellByPosition (0, i).setFormula ("Row" + i);
- oSheet2.getCellByPosition (i, 0).setFormula ("Col" + i);
- oSheet2.getCellByPosition (0, i).setFormula ("Row" + i);
- }
-
- for (int i = 1; i < mMaxFieldIndex; i++)
- {
- for (int j = 1; j < mMaxFieldIndex; j++)
- {
- oSheet.getCellByPosition (i, j).setValue (i * (j + 1));
- oSheet2.getCellByPosition (i, j).setValue (i * (j + 2));
- }
- }
-
- oSheet.getCellByPosition (1, 1).setFormula ("aName");
- oSheet.getCellByPosition (1, 2).setFormula ("otherName");
- oSheet.getCellByPosition (1, 3).setFormula ("una");
- oSheet.getCellByPosition (1, 4).setFormula ("otherName");
- oSheet.getCellByPosition (1, 5).setFormula ("somethingelse");
-
- oSheet.getCellByPosition (1, 5);
-
- int x = sCellAdress.Column;
- int y = sCellAdress.Row + 3;
-
- oSheet.getCellByPosition (x, y);
-
- // create the test objects
- log.println ("Getting test objects");
-
- XDataPilotTablesSupplier DPTS = UnoRuntime.queryInterface (
- XDataPilotTablesSupplier.class,
- oSheet);
- XDataPilotTables DPT = DPTS.getDataPilotTables ();
- XDataPilotDescriptor DPDsc = DPT.createDataPilotDescriptor ();
- DPDsc.setSourceRange (sCellRangeAdress);
-
- XPropertySet fieldPropSet = null;
-
- Object oDataPilotField = DPDsc.getDataPilotFields ().getByIndex (0);
- fieldPropSet = UnoRuntime.queryInterface (
- XPropertySet.class, oDataPilotField);
- fieldPropSet.setPropertyValue ("Orientation",
- com.sun.star.sheet.DataPilotFieldOrientation.ROW);
- oDataPilotField = DPDsc.getDataPilotFields ().getByIndex (1);
- fieldPropSet = UnoRuntime.queryInterface (
- XPropertySet.class, oDataPilotField);
- fieldPropSet.setPropertyValue ("Function",
- com.sun.star.sheet.GeneralFunction.SUM);
- fieldPropSet.setPropertyValue ("Orientation",
- com.sun.star.sheet.DataPilotFieldOrientation.DATA);
- oDataPilotField = DPDsc.getDataPilotFields ().getByIndex (2);
- fieldPropSet = UnoRuntime.queryInterface (
- XPropertySet.class, oDataPilotField);
- fieldPropSet.setPropertyValue ("Orientation",
- com.sun.star.sheet.DataPilotFieldOrientation.COLUMN);
-
- log.println ("Insert the DataPilotTable");
-
- if (DPT.hasByName ("DataPilotTable"))
- {
- DPT.removeByName ("DataPilotTable");
- }
-
- DPT.insertNewByName ("DataPilotTable", sCellAdress, DPDsc);
- XIndexAccess xIA = UnoRuntime.queryInterface (XIndexAccess.class,DPTS.getDataPilotTables ());
- XIndexAccess IA = null;
- XDataPilotDescriptor xDPT = UnoRuntime.queryInterface (XDataPilotDescriptor.class,xIA.getByIndex (0));
- IA = xDPT.getRowFields ();
- System.out.println ("COUNT: "+IA.getCount ());
- datapilotfield = (XInterface) AnyConverter.toObject (
- new Type (XInterface.class), IA.getByIndex (0));
-
- try
- {
- XDataPilotFieldGrouping dpfg = UnoRuntime.queryInterface (XDataPilotFieldGrouping.class, datapilotfield);
- String[] elements = new String[]{"aName","otherName"};
- dpfg.createNameGroup (elements);
- DataPilotFieldGroupInfo dpgi=null;
- xIA = UnoRuntime.queryInterface (XIndexAccess.class,DPTS.getDataPilotTables ());
- XDataPilotDescriptor xDPT2 = UnoRuntime.queryInterface (XDataPilotDescriptor.class,xIA.getByIndex (0));
- IA = xDPT2.getRowFields ();
- for (int i=0;i<IA.getCount ();i++)
- {
- datapilotfield = (XInterface) AnyConverter.toObject (
- new Type (XInterface.class), IA.getByIndex (i));
- XPropertySet xPropertySet = UnoRuntime.queryInterface (XPropertySet.class, IA.getByIndex (i));
- if (((Boolean)xPropertySet.getPropertyValue ("IsGroupField")).booleanValue ())
- {
- xPropertySet = UnoRuntime.queryInterface (XPropertySet.class, datapilotfield);
- XNamed xNamed = UnoRuntime.queryInterface (XNamed.class, IA.getByIndex (i));
- System.out.println ("name: "+xNamed.getName ());
- dpgi = (DataPilotFieldGroupInfo) xPropertySet.getPropertyValue ("GroupInfo");
- }
- }
- groups = dpgi.Groups;
- XIndexAccess groupAccess = UnoRuntime.queryInterface(XIndexAccess.class, groups);
- oObj = UnoRuntime.queryInterface(XInterface.class, groupAccess.getByIndex(0));
- }
- catch (Exception e)
- {
- e.printStackTrace ();
- }
-
- log.println ("Creating object - " +
- ((oObj == null) ? "FAILED" : "OK"));
-
- TestEnvironment tEnv = new TestEnvironment (oObj);
-
- log.println ("Implementationname: " + util.utils.getImplName (oObj));
-
- // Other parameters required for interface tests
- return tEnv;
- }
-
-}
diff --git a/sc/qa/extras/scdatapilotfieldgroupobj.cxx b/sc/qa/extras/scdatapilotfieldgroupobj.cxx
index 27de6ec202b8..1ab44e92ad5e 100644
--- a/sc/qa/extras/scdatapilotfieldgroupobj.cxx
+++ b/sc/qa/extras/scdatapilotfieldgroupobj.cxx
@@ -11,6 +11,7 @@
#include <test/container/xelementaccess.hxx>
#include <test/container/xenumerationaccess.hxx>
#include <test/container/xindexaccess.hxx>
+#include <test/container/xnameaccess.hxx>
#include <test/container/xnamed.hxx>
#include <comphelper/types.hxx>
#include <rtl/string.hxx>
@@ -44,6 +45,7 @@ class ScDataPilotFieldGroupObj : public CalcUnoApiTest,
public apitest::XElementAccess,
public apitest::XEnumerationAccess,
public apitest::XIndexAccess,
+ public apitest::XNameAccess,
public apitest::XNamed
{
public:
@@ -66,6 +68,11 @@ public:
CPPUNIT_TEST(testGetByIndex);
CPPUNIT_TEST(testGetCount);
+ // XNameAccess
+ CPPUNIT_TEST(testGetByName);
+ CPPUNIT_TEST(testGetElementNames);
+ CPPUNIT_TEST(testHasByName);
+
// XNamed
CPPUNIT_TEST(testGetName);
CPPUNIT_TEST(testSetName);
@@ -81,6 +88,7 @@ ScDataPilotFieldGroupObj::ScDataPilotFieldGroupObj()
: CalcUnoApiTest("/sc/qa/extras/testdocuments")
, XElementAccess(cppu::UnoType<container::XNamed>::get())
, XIndexAccess(2)
+ , XNameAccess("aName")
, XNamed("Group1")
{
}
diff --git a/sc/qa/unoapi/sc_1.sce b/sc/qa/unoapi/sc_1.sce
index 90d19b5913a8..d11354465534 100644
--- a/sc/qa/unoapi/sc_1.sce
+++ b/sc/qa/unoapi/sc_1.sce
@@ -15,7 +15,6 @@
# except in compliance with the License. You may obtain a copy of
# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
--o sc.ScDataPilotFieldGroupObj
# i84653 -o sc.ScPageObj
# i84554 -o sc.AccessibleEditableTextPara_PreviewNote
# i88241 -o sc.AccessibleEditableTextPara_HeaderFooter