'************************************************************************* ' ' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ' ' Copyright 2008 by Sun Microsystems, Inc. ' ' OpenOffice.org - a multi-platform office productivity suite ' ' $RCSfile: sheet_XArrayFormulaRange.xba,v $ ' ' $Revision: 1.3 $ ' ' This file is part of OpenOffice.org. ' ' OpenOffice.org is free software: you can redistribute it and/or modify ' it under the terms of the GNU Lesser General Public License version 3 ' only, as published by the Free Software Foundation. ' ' OpenOffice.org is distributed in the hope that it will be useful, ' but WITHOUT ANY WARRANTY; without even the implied warranty of ' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ' GNU Lesser General Public License version 3 for more details ' (a copy is included in the LICENSE file that accompanied this code). ' ' You should have received a copy of the GNU Lesser General Public License ' version 3 along with OpenOffice.org. If not, see ' ' for a copy of the LGPLv3 License. ' '************************************************************************* '************************************************************************* ' Be sure that all variables are dimensioned: option explicit Sub RunTest() '************************************************************************* ' INTERFACE: ' com.sun.star.sheet.XArrayFormulaRange '************************************************************************* On Error Goto ErrHndl Dim bOK As Boolean Dim bExpectedException As Boolean Test.StartMethod("setArrayFormula()") Test.StartMethod("getArrayFormula()") bOK = true if (cObjectName = "sc.ScTableSheetObj") then bExpectedException = true oObj.setArrayFormula("=1+2") wait(1) ' additional operator should exists here to avoid ' resuming on 'else' after exception handling else oObj.setArrayFormula("=1+2") bOK = bOK AND (oObj.getArrayFormula() = "{=1+2}") Out.Log("2") end if ' Setting of _empty_ formula should work for all objects. bExpectedException = false oObj.setArrayFormula("") bOK = bOK AND (oObj.getArrayFormula() = "") Test.MethodTested("getArrayFormula()", bOK) Test.MethodTested("setArrayFormula()", bOK) Exit Sub ErrHndl: if (bExpectedException) then Out.Log("It doesn't make sense to set formula over whole page.") Out.Log("Expected exception: " & error) else Test.Exception() bOK = false end if resume next End Sub