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

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Sun Mar 3 18:46:54 UTC 2019


 framework/qa/complex/api_internal/api.lst                       |    1 
 include/test/text/xtextrange.hxx                                |   38 ++
 qadevOOo/Jar_OOoRunner.mk                                       |    1 
 qadevOOo/objdsc/sc/com.sun.star.comp.office.ScAnnotationObj.csv |    5 
 qadevOOo/tests/java/mod/_sc/ScAnnotationObj.java                |  138 ----------
 sc/qa/extras/scannotationobj.cxx                                |   10 
 sc/qa/unoapi/sc_2.sce                                           |    1 
 test/Library_subsequenttest.mk                                  |    1 
 test/source/text/xtextrange.cxx                                 |   62 ++++
 9 files changed, 110 insertions(+), 147 deletions(-)

New commits:
commit 167c5f9affd16ae5ece851de9e53f197d3036d93
Author:     Jens Carl <j.carl43 at gmx.de>
AuthorDate: Sun Mar 3 04:37:07 2019 +0000
Commit:     Jens Carl <j.carl43 at gmx.de>
CommitDate: Sun Mar 3 19:46:33 2019 +0100

    tdf#45904 Move XTextRange Java tests to C++
    
    Move XTextRange Java tests to C++ for ScAnnotationObj
    (also fixes i109517).
    
    Change-Id: Id7e45d9f1159b45fb267cb28dc875b62eae12e24
    Reviewed-on: https://gerrit.libreoffice.org/68634
    Tested-by: Jenkins
    Reviewed-by: Jens Carl <j.carl43 at gmx.de>

diff --git a/framework/qa/complex/api_internal/api.lst b/framework/qa/complex/api_internal/api.lst
index 18192bd23b86..d31c465d5559 100644
--- a/framework/qa/complex/api_internal/api.lst
+++ b/framework/qa/complex/api_internal/api.lst
@@ -71,7 +71,6 @@ job71=sc.ScAccessibleCell
 job72=sc.ScAccessiblePageHeader
 job73=sc.ScAccessiblePreviewTable
 job74=sc.ScAccessibleSpreadsheet
-job75=sc.ScAnnotationObj
 job78=sc.ScAutoFormatFieldObj
 job79=sc.ScAutoFormatObj
 job80=sc.ScAutoFormatsObj
diff --git a/include/test/text/xtextrange.hxx b/include/test/text/xtextrange.hxx
new file mode 100644
index 000000000000..a986e7faedb9
--- /dev/null
+++ b/include/test/text/xtextrange.hxx
@@ -0,0 +1,38 @@
+/* -*- 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_TEXT_XTEXTRANGE_HXX
+#define INCLUDED_TEST_TEXT_XTEXTRANGE_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 XTextRange
+{
+public:
+    virtual css::uno::Reference<css::uno::XInterface> init() = 0;
+
+    void testGetEnd();
+    void testGetSetString();
+    void testGetStart();
+    void testGetText();
+
+protected:
+    ~XTextRange() {}
+};
+
+} // namespace apitest
+
+#endif // INCLUDED_TEST_TEXT_XTEXTRANGE_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 d74a31d909db..9a2f09514ed5 100644
--- a/qadevOOo/Jar_OOoRunner.mk
+++ b/qadevOOo/Jar_OOoRunner.mk
@@ -948,7 +948,6 @@ $(eval $(call gb_Jar_add_sourcefiles,OOoRunner,\
     qadevOOo/tests/java/mod/_sc/ScAccessiblePreviewHeaderCell \
     qadevOOo/tests/java/mod/_sc/ScAccessiblePreviewTable \
     qadevOOo/tests/java/mod/_sc/ScAccessibleSpreadsheet \
-    qadevOOo/tests/java/mod/_sc/ScAnnotationObj \
     qadevOOo/tests/java/mod/_sc/ScAnnotationShapeObj \
     qadevOOo/tests/java/mod/_sc/ScAnnotationTextCursor \
     qadevOOo/tests/java/mod/_sc/ScAreaLinkObj \
diff --git a/qadevOOo/objdsc/sc/com.sun.star.comp.office.ScAnnotationObj.csv b/qadevOOo/objdsc/sc/com.sun.star.comp.office.ScAnnotationObj.csv
deleted file mode 100644
index 324d74dc0ac1..000000000000
--- a/qadevOOo/objdsc/sc/com.sun.star.comp.office.ScAnnotationObj.csv
+++ /dev/null
@@ -1,5 +0,0 @@
-"ScAnnotationObj";"com::sun::star::text::XTextRange";"getText()"
-"ScAnnotationObj";"com::sun::star::text::XTextRange";"getStart()"
-"ScAnnotationObj";"com::sun::star::text::XTextRange";"getEnd()"
-"ScAnnotationObj";"com::sun::star::text::XTextRange";"getString()"
-"ScAnnotationObj";"com::sun::star::text::XTextRange";"setString()"
diff --git a/qadevOOo/tests/java/mod/_sc/ScAnnotationObj.java b/qadevOOo/tests/java/mod/_sc/ScAnnotationObj.java
deleted file mode 100644
index 26306312d075..000000000000
--- a/qadevOOo/tests/java/mod/_sc/ScAnnotationObj.java
+++ /dev/null
@@ -1,138 +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.container.XIndexAccess;
-import com.sun.star.lang.XComponent;
-import com.sun.star.sheet.XSheetAnnotation;
-import com.sun.star.sheet.XSheetAnnotationAnchor;
-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.XCell;
-import com.sun.star.table.XCellRange;
-import com.sun.star.uno.AnyConverter;
-import com.sun.star.uno.Type;
-import com.sun.star.uno.UnoRuntime;
-
-/**
-* Test for object which represents some text annotation
-* anchored to some cell in spreadsheet (implement
-* <code>com.sun.star.sheet.CellAnnotation</code>).<p>
-* Object implements the following interfaces :
-* <ul>
-*  <li> <code>com::sun::star::text::XSimpleText</code></li>
-*  <li> <code>com::sun::star::text::XTextRange</code></li>
-*  <li> <code>com::sun::star::sheet::XSheetAnnotation</code></li>
-* </ul>
-* This object test <b> is NOT </b> designed to be run in several
-* threads concurrently.
-* @see com.sun.star.sheet.CellAnnotation
-* @see com.sun.star.text.XSimpleText
-* @see com.sun.star.text.XTextRange
-* @see com.sun.star.sheet.XSheetAnnotation
-* @see ifc.text._XSimpleText
-* @see ifc.text._XTextRange
-* @see ifc.sheet._XSheetAnnotation
-*/
-public class ScAnnotationObj extends TestCase {
-    private XSpreadsheetDocument xSheetDoc = null;
-
-    /**
-    * Creates a 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 a 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 them. Then a single cell is retrieved, and
-    * using its <code>com.sun.star.sheet.XSheetAnnotationAnchor</code>
-    * interface an annotation is got.
-    * Object relations created :
-    * <ul>
-    *  <li> <code>'CELLPOS'</code> for
-    *      {@link ifc.sheet._XSheetAnnotation} (of <code>
-    *       com.sun.star.table.CellAddress</code> type) which
-    *      contains the annotation cell address.</li>
-    * </ul>
-    */
-    @Override
-    public TestEnvironment createTestEnvironment
-            ( TestParameters Param, PrintWriter log )
-            throws Exception {
-
-        // creation of testobject here
-        // first we write what we are intend to do to log file
-        log.println( "Creating a test environment" );
-
-        CellAddress cellPos = new CellAddress((short)0, 1, 2);
-
-        log.println("Getting test object ") ;
-
-        XSpreadsheetDocument xArea = UnoRuntime.queryInterface(XSpreadsheetDocument.class, xSheetDoc);
-        XSpreadsheets oSheets = xArea.getSheets();
-
-        XIndexAccess XAccess = UnoRuntime.queryInterface(XIndexAccess.class, oSheets);
-        XCell oCell = null;
-        XSpreadsheet oSheet = (XSpreadsheet) AnyConverter.toObject(
-                new Type(XSpreadsheet.class),XAccess.getByIndex(cellPos.Sheet));
-        XCellRange oCRange = UnoRuntime.queryInterface(XCellRange.class, oSheet);
-        oCell = oCRange.getCellByPosition(cellPos.Column, cellPos.Row);
-
-        XSheetAnnotationAnchor oAnnoA = UnoRuntime.queryInterface(XSheetAnnotationAnchor.class, oCell);
-        XSheetAnnotation oAnno = oAnnoA.getAnnotation();
-
-        TestEnvironment tEnv = new TestEnvironment( oAnno );
-
-        tEnv.addObjRelation("CELLPOS", cellPos);
-
-        // Other parameters required for interface tests
-
-        return tEnv;
-    }
-
-}    // finish class ScAnnotationObj
-
-
diff --git a/sc/qa/extras/scannotationobj.cxx b/sc/qa/extras/scannotationobj.cxx
index 0af244cb0165..bc3767273354 100644
--- a/sc/qa/extras/scannotationobj.cxx
+++ b/sc/qa/extras/scannotationobj.cxx
@@ -12,6 +12,7 @@
 #include <test/sheet/xsheetannotation.hxx>
 #include <test/sheet/xsheetannotationshapesupplier.hxx>
 #include <test/text/xsimpletext.hxx>
+#include <test/text/xtextrange.hxx>
 
 #include <com/sun/star/lang/XComponent.hpp>
 #include <com/sun/star/sheet/XSheetAnnotationAnchor.hpp>
@@ -31,7 +32,8 @@ class ScAnnontationObj : public CalcUnoApiTest,
                          public apitest::XChild,
                          public apitest::XSheetAnnotation,
                          public apitest::XSheetAnnotationShapeSupplier,
-                         public apitest::XSimpleText
+                         public apitest::XSimpleText,
+                         public apitest::XTextRange
 {
 public:
     ScAnnontationObj();
@@ -63,6 +65,12 @@ public:
     CPPUNIT_TEST(testInsertString);
     CPPUNIT_TEST(testInsertControlCharacter);
 
+    // XTextRange
+    CPPUNIT_TEST(testGetEnd);
+    CPPUNIT_TEST(testGetSetString);
+    CPPUNIT_TEST(testGetStart);
+    CPPUNIT_TEST(testGetText);
+
     CPPUNIT_TEST_SUITE_END();
 
 private:
diff --git a/sc/qa/unoapi/sc_2.sce b/sc/qa/unoapi/sc_2.sce
index 43f203cd4039..21c1671d9e91 100644
--- a/sc/qa/unoapi/sc_2.sce
+++ b/sc/qa/unoapi/sc_2.sce
@@ -21,7 +21,6 @@
 -o sc.ScAccessiblePreviewTable
 # fdo#45337 -o sc.ScAccessibleSpreadsheet
 # FIXME_REMOVE_WHEN_RE_BASE_COMPLETE
-# -o sc.ScAnnotationObj
 # -o sc.ScAnnotationShapeObj
 -o sc.ScAreaLinkObj
 -o sc.ScAutoFormatFieldObj
diff --git a/test/Library_subsequenttest.mk b/test/Library_subsequenttest.mk
index 8867773ae22f..282f5f7c5633 100644
--- a/test/Library_subsequenttest.mk
+++ b/test/Library_subsequenttest.mk
@@ -170,6 +170,7 @@ $(eval $(call gb_Library_add_exception_objects,subsequenttest,\
 	test/source/text/xtext \
 	test/source/text/xtextcontent \
 	test/source/text/xtextfield \
+	test/source/text/xtextrange \
 	test/source/util/xindent \
 	test/source/util/xmergeable \
 	test/source/util/xrefreshable \
diff --git a/test/source/text/xtextrange.cxx b/test/source/text/xtextrange.cxx
new file mode 100644
index 000000000000..1fac30674f91
--- /dev/null
+++ b/test/source/text/xtextrange.cxx
@@ -0,0 +1,62 @@
+/* -*- 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/text/xtextrange.hxx>
+#include <rtl/string.hxx>
+
+#include <com/sun/star/text/XText.hpp>
+#include <com/sun/star/text/XTextRange.hpp>
+
+#include <cppunit/extensions/HelperMacros.h>
+
+using namespace css;
+
+namespace apitest
+{
+void XTextRange::testGetEnd()
+{
+    uno::Reference<text::XTextRange> xTextRange(init(), uno::UNO_QUERY_THROW);
+
+    xTextRange->setString("UnitTest");
+    uno::Reference<text::XTextRange> xTR_end(xTextRange->getEnd(), uno::UNO_QUERY_THROW);
+    xTR_end->setString("End");
+
+    CPPUNIT_ASSERT(xTextRange->getText()->getString().endsWith("End"));
+}
+
+void XTextRange::testGetSetString()
+{
+    uno::Reference<text::XTextRange> xTextRange(init(), uno::UNO_QUERY_THROW);
+
+    xTextRange->setString("UnitTest");
+    CPPUNIT_ASSERT_EQUAL(OUString("UnitTest"), xTextRange->getString());
+}
+
+void XTextRange::testGetStart()
+{
+    uno::Reference<text::XTextRange> xTextRange(init(), uno::UNO_QUERY_THROW);
+
+    xTextRange->setString("UnitTest");
+    uno::Reference<text::XTextRange> xTR_start(xTextRange->getStart(), uno::UNO_QUERY_THROW);
+    xTR_start->setString("Start");
+
+    CPPUNIT_ASSERT(xTextRange->getText()->getString().startsWith("Start"));
+}
+
+void XTextRange::testGetText()
+{
+    uno::Reference<text::XTextRange> xTextRange(init(), uno::UNO_QUERY_THROW);
+
+    xTextRange->setString("UnitTest");
+    uno::Reference<text::XText> xText(xTextRange->getText(), uno::UNO_QUERY_THROW);
+    CPPUNIT_ASSERT_EQUAL(OUString("UnitTest"), xTextRange->getString());
+}
+} // namespace apitest
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */


More information about the Libreoffice-commits mailing list