/*
* 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.text;
import lib.MultiMethodTest;
import lib.Status;
import lib.StatusException;
import com.sun.star.text.XTextTable;
/**
* Testing com.sun.star.text.XTextTable
* interface methods :
*
initialize()
getRows()
getColumns()
getCellByName()
getCellNames()
createCursorByCellName()
* This test needs the following object relations : *
'NROW'
: the number of rows in table
* 'NCOL'
: the number of columns in table
* * @see com.sun.star.text.XTextTable */ public class _XTextTable extends MultiMethodTest { public XTextTable oObj = null; // oObj filled by MultiMethodTest int nRow; int nCol; String cellNamesList[] = null ; @Override protected void before() { Integer num_row = (Integer)tEnv.getObjRelation("NROW"); if (num_row == null) { throw new StatusException (Status.failed("Couldn't get relation 'NROW'")); } Integer num_col = (Integer)tEnv.getObjRelation("NCOL"); if (num_col == null) { throw new StatusException (Status.failed("Couldn't get relation 'NCOL'")); } nRow = num_row.intValue(); nCol = num_col.intValue(); } /** * The method is not called directly here, because it must * be called before being inserted to the document.
* * Always has OK status.
*/
public void _initialize() {
// initialize()
log.println( "test for initialize()" );
tRes.tested( "initialize()", true);
}
/**
* Test calls the method passing as cell name the first
* element from names returned by getCellNames
* method.
*
* Has OK status if the method returns not
* null
value.
*
* The following method tests are to be completed successfully before :
*
getCellNames()
: its result used by test. getCellNames
* method.
*
* Has OK status if the method returns not
* null
value.
*
* The following method tests are to be completed successfully before :
*
getCellNames()
: its result used by test. * * Has OK status if number of elements in the returned * array is equal to [row number] * [column number] * and if the first name is 'A1'. */ public void _getCellNames(){ // getCellNames() log.println( "test for getCellNames()" ); cellNamesList = oObj.getCellNames(); boolean result = cellNamesList.length == ( nRow * nCol ) ; result &= cellNamesList[0].equals( "A1" ) ; tRes.tested( "getCellNames()", result ) ; } /** * Obtains columns of the table.
* * Has OK status if the number of element of returned * collection is equal to real number of columns in the table. */ public void _getColumns(){ // getColumns() log.println( "test for getColumns()" ); tRes.tested( "getColumns()", nCol == oObj.getColumns().getCount() ); } /** * Obtains rows of the table.
* * Has OK status if the number of element of returned * collection is equal to real number of rows in the table. */ public void _getRows(){ // getRows() log.println( "test for getRows()" ); tRes.tested( "getRows()", nRow == oObj.getRows().getCount() ); } }