summaryrefslogtreecommitdiff
path: root/qadevOOo/tests/basic/ifc/container/XNameReplace/container_XNameReplace.xba
diff options
context:
space:
mode:
Diffstat (limited to 'qadevOOo/tests/basic/ifc/container/XNameReplace/container_XNameReplace.xba')
-rw-r--r--qadevOOo/tests/basic/ifc/container/XNameReplace/container_XNameReplace.xba116
1 files changed, 116 insertions, 0 deletions
diff --git a/qadevOOo/tests/basic/ifc/container/XNameReplace/container_XNameReplace.xba b/qadevOOo/tests/basic/ifc/container/XNameReplace/container_XNameReplace.xba
new file mode 100644
index 000000000000..ca0c7086d9a2
--- /dev/null
+++ b/qadevOOo/tests/basic/ifc/container/XNameReplace/container_XNameReplace.xba
@@ -0,0 +1,116 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
+<script:module xmlns:script="http://openoffice.org/2000/script" script:name="container_XNameReplace" 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.
+'
+'*************************************************************************
+'*************************************************************************
+
+
+
+' Be sure that all variables are dimensioned:
+option explicit
+
+'*************************************************************************
+' This Interface/Service test depends on the following GLOBAL variables,
+' which must be specified in the object creation:
+
+' Global cNameToReplace As String 'name of instance to be replased
+' Global oReplaceInstance As Variant 'instance, that will be inserted
+' instead old one
+
+'*************************************************************************
+
+Sub RunTest()
+
+'*************************************************************************
+' INTERFACE:
+' com.sun.star.container.XNameReplace
+'*************************************************************************
+On Error Goto ErrHndl
+ Dim bOK As Boolean
+ Dim oOldObject As Object
+ Dim cOldObjName As String
+ Dim oNewControl As Object
+ Dim cNewObjName As String
+ Dim NewAddress As Object
+ Dim InstAddress As Object
+ Dim cReplInstName As String
+
+ Test.StartMethod("replaceByName()")
+ bOK = true
+
+ if (cObjectName = "sc.ScCellRangesObj") then
+ oOldObject = oObj.getByName(cNameToReplace)
+ InstAddress = oReplaceInstance.getRangeAddress
+
+ oObj.replaceByName(cNameToReplace, oReplaceInstance)
+
+ oNewControl = oObj.getByName(cNameToReplace)
+ NewAddress = oNewControl.getRangeAddress
+
+ bOK = bOK AND NewAddress.Sheet = InstAddress.Sheet
+ bOK = bOK AND NewAddress.StartColumn = InstAddress.StartColumn
+ bOK = bOK AND NewAddress.EndColumn = InstAddress.EndColumn
+ bOK = bOK AND NewAddress.StartRow = InstAddress.StartRow
+ bOK = bOK AND NewAddress.EndRow = InstAddress.EndRow
+
+ elseif typename(oReplaceInstance) = "String" then
+ Dim oNewObj as Variant
+ Dim oOldObj as Variant
+ oOldObj = oObj.getByName(cNameToReplace)
+ oObj.replaceByName(cNameToReplace, oReplaceInstance)
+ oNewObj = oObj.getByName(cNameToReplace)
+ bOK = bOK and not PropertyTester.equals(oOldObj, oNewObj)
+ else
+ oOldObject = oObj.getByName(cNameToReplace)
+ cReplInstName = oReplaceInstance.Name
+ Out.Log("ReplaceInstance.name = '" &amp; cReplInstName &amp; "'")
+ cOldObjName = oOldObject.Name
+ Out.Log("OldObject.name = '" &amp; cOldObjName &amp; "'")
+
+ oObj.replaceByName(cNameToReplace, oReplaceInstance)
+ oNewControl = oObj.getByName(cNameToReplace)
+
+ cReplInstName = oReplaceInstance.Name
+ Out.Log("ReplaceInstance.name = '" &amp; cReplInstName &amp; "'")
+ cNewObjName = oNewControl.Name
+ Out.Log("NewObject.name = '" &amp; cNewObjName &amp; "'")
+
+ bOK = bOK AND (oReplaceInstance.Name = cNameToReplace)
+ end if
+
+ Test.MethodTested("replaceByName()", bOK)
+
+Exit Sub
+ErrHndl:
+ Test.Exception()
+ bOK = false
+ resume next
+End Sub
+</script:module>