/* * 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 com.sun.star.sheet.XAreaLink; import com.sun.star.table.CellRangeAddress; /** * Testing com.sun.star.sheet.XAreaLink * interface methods : *

* Test is NOT multithread compilant.

* @see com.sun.star.sheet.XAreaLink */ public class _XAreaLink extends MultiMethodTest { public XAreaLink oObj = null; CellRangeAddress oORAdd, oNRAdd, oCRAdd = null; /** * Just calls the method and checks the value returned. * (More complicated testing done in setDestArea)

* Has OK status if not null value returned. */ public void _getDestArea(){ log.println("testing getDestArea()"); boolean bResult = false; oORAdd = oObj.getDestArea(); if (!(oORAdd == null)){ bResult = true; } tRes.tested("getDestArea()", bResult) ; } /** * Just calls the method and checks the value returned. * (More complicated testing done in setSourceArea)

* Has OK status if not null value returned. */ public void _getSourceArea(){ log.println("testing getSourceArea()"); boolean bResult = false; String src = null; src = oObj.getSourceArea() ; if (!(src == null)){ bResult = true; } tRes.tested("getSourceArea()", bResult) ; } /** * Creates a new desination CellRange address and sets it for * the link object.

* After setting the DestArea, the link is refreshed and the area is * adjusted to the size of the source data. * Therefore EndCol and EndRow will change after setting.

* Has OK status if Sheet, Starting Column and Row * of the destination range is changed correctly. */ public void _setDestArea(){ log.println("testing setDestArea()"); boolean bResult = false; int newStartCol = 3, newStartRow = 4, newEndCol = 5, newEndRow = 8 ; oORAdd = oObj.getDestArea(); log.print("Getting: "); log.println(getCRA(oORAdd)); oNRAdd = new CellRangeAddress ((short) 2, newStartCol, newStartRow, newEndCol, newEndRow) ; oObj.setDestArea(oNRAdd) ; log.print("Setting: "); log.println(getCRA(oNRAdd)); oCRAdd = oObj.getDestArea(); log.print("Getting: "); log.println(getCRA(oCRAdd)); // After setting the DestArea, the link is refreshed and the area is // adjusted to the size of the source data. // Therefore EndCol and EndRow will change after setting. log.println("After setting the DestArea, the link is refreshed "+ "and the area is"); log.println("adjusted to the size of the source data."); log.println("Therefore only 'Sheet', 'StartCol' and 'StartRow' "+ "are compared."); if ((oCRAdd.StartColumn == oNRAdd.StartColumn) && (oCRAdd.Sheet == oNRAdd.Sheet) && (oCRAdd.StartRow == oNRAdd.StartRow)){ bResult = true; oObj.setDestArea(oORAdd); } tRes.tested("setDestArea()", bResult) ; } /** * Sets a new source area for the link and then check * it using getSourceArea method.

* Has OK status if areas set and get are equal. */ public void _setSourceArea(){ log.println("testing setSourceArea()"); boolean bResult = false; String oSrc = oObj.getSourceArea() ; String nSrc = "a1:b2"; oObj.setSourceArea(nSrc); String cSrc = oObj.getSourceArea(); if( nSrc.equals(cSrc)){ bResult = true; oObj.setSourceArea(oSrc); } tRes.tested("setSourceArea()", bResult) ; } /** * Prints cell range structure to LOG */ public String getCRA ( CellRangeAddress oCRA ) { String res = "( Sheet: "; res += oCRA.Sheet; res += ";StartColumn: "; res += oCRA.StartColumn; res += ";StartRow: "; res += oCRA.StartRow; res += ";EndColumn: "; res += oCRA.EndColumn; res += ";EndRow: "; res += oCRA.EndRow; res += " )"; return res; } } // EOC _XAreaLink