/*
* 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.XSpreadsheet;
import com.sun.star.sheet.XSpreadsheetDocument;
import com.sun.star.sheet.XSpreadsheets;
import com.sun.star.table.XCell;
import com.sun.star.text.XText;
import com.sun.star.uno.AnyConverter;
import com.sun.star.uno.Type;
import com.sun.star.uno.UnoRuntime;
import com.sun.star.uno.XInterface;
/**
* Test for object which is represented by service
* < code > com . sun . star . text . TextCursor < / code > . < p >
* Object implements the following interfaces :
* < ul >
* < li > < code > com : : sun : : star : : text : : XTextCursor < / code > < / li >
* < li > < code > com : : sun : : star : : text : : XWordCursor < / code > < / li >
* < li > < code > com : : sun : : star : : style : : CharacterPropertiesComplex < / code > < / li >
* < li > < code > com : : sun : : star : : text : : XTextRange < / code > < / li >
* < li > < code > com : : sun : : star : : beans : : XPropertySet < / code > < / li >
* < li > < code > com : : sun : : star : : container : : XContentEnumerationAccess < / code > < / li >
* < li > < code > com : : sun : : star : : beans : : XPropertyState < / code > < / li >
* < li > < code > com : : sun : : star : : style : : CharacterProperties < / code > < / li >
* < li > < code > com : : sun : : star : : text : : XSentenceCursor < / code > < / li >
* < li > < code > com : : sun : : star : : style : : ParagraphProperties < / code > < / li >
* < li > < code > com : : sun : : star : : text : : XParagraphCursor < / code > < / li >
* < li > < code > com : : sun : : star : : document : : XDocumentInsertable < / code > < / li >
* < li > < code > com : : sun : : star : : util : : XSortable < / code > < / li >
* < li > < code > com : : sun : : star : : style : : CharacterPropertiesAsian < / code > < / li >
* < / ul >
* @ see com . sun . star . text . TextCursor
* @ see com . sun . star . text . XTextCursor
* @ see com . sun . star . text . XWordCursor
* @ see com . sun . star . style . CharacterPropertiesComplex
* @ see com . sun . star . text . XTextRange
* @ see com . sun . star . beans . XPropertySet
* @ see com . sun . star . container . XContentEnumerationAccess
* @ see com . sun . star . beans . XPropertyState
* @ see com . sun . star . style . CharacterProperties
* @ see com . sun . star . text . XSentenceCursor
* @ see com . sun . star . style . ParagraphProperties
* @ see com . sun . star . text . XParagraphCursor
* @ see com . sun . star . document . XDocumentInsertable
* @ see com . sun . star . util . XSortable
* @ see com . sun . star . style . CharacterPropertiesAsian
* @ see ifc . text . _ XTextCursor
* @ see ifc . text . _ XWordCursor
* @ see ifc . style . _ CharacterPropertiesComplex
* @ see ifc . text . _ XTextRange
* @ see ifc . beans . _ XPropertySet
* @ see ifc . container . _ XContentEnumerationAccess
* @ see ifc . beans . _ XPropertyState
* @ see ifc . style . _ CharacterProperties
* @ see ifc . text . _ XSentenceCursor
* @ see ifc . style . _ ParagraphProperties
* @ see ifc . text . _ XParagraphCursor
* @ see ifc . document . _ XDocumentInsertable
* @ see ifc . util . _ XSortable
* @ see ifc . style . _ CharacterPropertiesAsian
*/
public class ScCellTextCursor extends TestCase {
private XSpreadsheetDocument xSheetDoc = null ;
/**
* 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);
}
/**
* Creating a TestEnvironment for the interfaces to be tested .
* Retrieves a collection of spreadsheets from a document
* and takes one of them . Retrieves the cell from the spreadsheet
* and creates text cursor of the cell using the interface
* < code > XText < / code > . This text cursor is the instance of
* the service < code > com . sun . star . text . TextCursor < / code > .
* Object relations created :
* < ul >
* < li > < code > ' XTEXT ' < / code > for
* { @ link ifc . text . _ XTextRange } ( type of
* < code > XEnumerationAccess < / code > that was retrieved from the
* collection of visible cells ) < / li >
* < / ul >
* @ see com . sun . star . text . XText
*/
@Override
protected TestEnvironment createTestEnvironment(TestParameters tParam, PrintWriter log) throws Exception {
XInterface oObj = null ;
XCell aCell = null ;
// creation of testobject here
// first we write what we are intend to do to log file
log.println( "Creating a test environment" );
// get a soffice factory object
log.println("Getting spreadsheet" ) ;
XSpreadsheets oSheets = xSheetDoc.getSheets() ;
XIndexAccess oIndexSheets = UnoRuntime.queryInterface(XIndexAccess.class , oSheets);
XSpreadsheet oSheet = (XSpreadsheet) AnyConverter.toObject(
new Type(XSpreadsheet.class ),oIndexSheets.getByIndex(0 ));
log.println("Getting a cell from sheet" ) ;
aCell = oSheet.getCellByPosition(1 ,1 ) ;
XText aText = UnoRuntime.queryInterface(XText.class , aCell);
aText.setString("ScCellTextCursor" );
oObj = aText.createTextCursor();
log.println( "creating a new environment for ScCellTextCursor object" );
TestEnvironment tEnv = new TestEnvironment( oObj );
// Object relations for interface tests
tEnv.addObjRelation("XTEXT" , aText);
return tEnv;
} // finish method getTestEnvironment
} // finish class ScCellTextCursor
Messung V0.5 in Prozent C=94 H=91 G=92
¤ Dauer der Verarbeitung: 0.10 Sekunden
(vorverarbeitet am 2026-09-12)
¤
*© Formatika GbR, Deutschland