summaryrefslogtreecommitdiff
path: root/qadevOOo/tests/basic/ifc/sheet/XCellSeries/sheet_XCellSeries.xba
diff options
context:
space:
mode:
Diffstat (limited to 'qadevOOo/tests/basic/ifc/sheet/XCellSeries/sheet_XCellSeries.xba')
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XCellSeries/sheet_XCellSeries.xba126
1 files changed, 126 insertions, 0 deletions
diff --git a/qadevOOo/tests/basic/ifc/sheet/XCellSeries/sheet_XCellSeries.xba b/qadevOOo/tests/basic/ifc/sheet/XCellSeries/sheet_XCellSeries.xba
new file mode 100644
index 000000000000..7005d9886b6f
--- /dev/null
+++ b/qadevOOo/tests/basic/ifc/sheet/XCellSeries/sheet_XCellSeries.xba
@@ -0,0 +1,126 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<script:module xmlns:script="http://openoffice.org/2000/script" script:name="sheet_XCellSeries" script:language="StarBasic">
+
+'*************************************************************************
+'
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' 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
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'*************************************************************************
+'*************************************************************************
+
+
+'*************************************************************************
+' This Interface/Service test depends on the following GLOBAL variables,
+' which must be specified in the object creation:
+
+' - Global aCellSeries(1) As Integer
+' aCellSeries(0) = amount of rows of range
+' aCellSeries(1) = amount of columns of range
+
+'*************************************************************************
+
+' Be sure that all variables are dimensioned:
+option explicit
+
+Sub RunTest()
+
+'*************************************************************************
+' INTERFACE:
+' com.sun.star.sheet.XCellSeries
+'*************************************************************************
+On Error Goto ErrHndl
+ Dim bOK As Boolean
+ Dim startValue as Integer
+ Dim nStep as Integer
+ Dim shouldValue as Integer
+ Dim filledValue as Integer
+ Dim endCell(2) as Integer
+ Dim n as Integer, m as Integer
+
+ startValue = 5
+ nStep = 2
+
+ ' if 'nStep' is not a divisor of 'aCellSeries' it must be calculated
+ ' the last filled cell
+ for n = 0 to 1
+ if (aCellSeries(n) mod nStep) &lt;&gt; 0 then
+ endCell(n) = aCellSeries(n) - (nStep-1)
+ else
+ endCell(n) = aCellSeries(n)
+ end if
+ next n
+ 'make clean cells
+ for n = 0 to endCell(0)
+ for m = 0 to endCell(1)
+ oObj.getCellByPosition(n,m).setString("")
+ next
+ next
+ 'set defined start value
+ oObj.getCellByPosition(0,0).setValue(startValue)
+ Test.StartMethod("fillAuto()")
+ bOK = TRUE
+ oObj.fillAuto(com.sun.star.sheet.FillDirection.TO_BOTTOM, nStep)
+ shouldValue = endCell(0) / nStep + startValue
+ filledValue = oObj.getCellByPosition(0,endCell(0)).getValue()
+ bOK = bOK AND ( shouldValue = filledValue )
+ out.log("" + shouldValue + ":" + filledValue)
+ Test.MethodTested("fillAuto()", bOK)
+
+
+ Test.StartMethod("fillSeries()")
+ bOK = TRUE
+ out.log("fillSeries() 1/3")
+ oObj.fillSeries(com.sun.star.sheet.FillDirection.TO_BOTTOM, _
+ com.sun.star.sheet.FillMode.LINEAR, _
+ com.sun.star.sheet.FillDateMode.FILL_DATE_DAY, nStep, 20000000)
+ shouldValue = endCell(0) * nStep + startValue
+ filledValue = oObj.getCellByPosition(0,endCell(0)).getValue()
+ bOK = bOK and (shouldValue = filledValue)
+
+ out.log("fillSeries() 2/3")
+ oObj.fillSeries(com.sun.star.sheet.FillDirection.TO_RIGHT, _
+ com.sun.star.sheet.FillMode.LINEAR, _
+ com.sun.star.sheet.FillDateMode.FILL_DATE_DAY, nStep, 20000000)
+ shouldValue = endCell(1) * nStep + startValue
+ filledValue = oObj.getCellByPosition(endCell(1),0).getValue()
+ bOK = bOK and (shouldValue = filledValue)
+
+
+ out.log("fillSeries() 3/3")
+ oObj.fillSeries(com.sun.star.sheet.FillDirection.TO_BOTTOM, _
+ com.sun.star.sheet.FillMode.GROWTH, _
+ com.sun.star.sheet.FillDateMode.FILL_DATE_DAY, nStep, 20000000)
+ shouldValue = startValue * nStep ^ endCell(0)
+ filledValue = oObj.getCellByPosition(0,endCell(0)).getValue()
+ bOK = bOK and (shouldValue = filledValue)
+
+ Test.MethodTested("fillSeries()", bOK)
+
+Exit Sub
+ErrHndl:
+ Test.Exception()
+ bOK = false
+ resume next
+End Sub
+</script:module>