'************************************************************************* ' ' 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 ' ' Unless required by applicable law or agreed to in writing, ' software distributed under the License is distributed on an ' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY ' KIND, either express or implied. See the License for the ' specific language governing permissions and limitations ' under the 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