1<?xml version="1.0" encoding="UTF-8"?> 2<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd"> 3<script:module xmlns:script="http://openoffice.org/2000/script" script:name="container_XNamed" script:language="StarBasic"> 4 5 6'************************************************************************* 7' 8' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 9' 10' Copyright 2000, 2010 Oracle and/or its affiliates. 11' 12' OpenOffice.org - a multi-platform office productivity suite 13' 14' This file is part of OpenOffice.org. 15' 16' OpenOffice.org is free software: you can redistribute it and/or modify 17' it under the terms of the GNU Lesser General Public License version 3 18' only, as published by the Free Software Foundation. 19' 20' OpenOffice.org is distributed in the hope that it will be useful, 21' but WITHOUT ANY WARRANTY; without even the implied warranty of 22' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 23' GNU Lesser General Public License version 3 for more details 24' (a copy is included in the LICENSE file that accompanied this code). 25' 26' You should have received a copy of the GNU Lesser General Public License 27' version 3 along with OpenOffice.org. If not, see 28' <http://www.openoffice.org/license.html> 29' for a copy of the LGPLv3 License. 30' 31'************************************************************************* 32'************************************************************************* 33 34 35 36' Be sure that all variables are dimensioned: 37option explicit 38 39'************************************************************************* 40' This Interface/Service test depends on the following GLOBAL variables, 41' which must be specified in the object creation: 42 43' Global cNameToSet As String "fixed" if name is fixed 44 45'************************************************************************* 46 47 48 49 50 51Sub RunTest() 52 53'************************************************************************* 54' INTERFACE: 55' com.sun.star.container.XNamed 56'************************************************************************* 57On Error Goto ErrHndl 58 Dim bOK As Boolean 59 Dim cName As String, cNewName As String 60 61 if VarType(cNameToSet) = 8 then 62 if cNameToSet = "" then 63 cNewName = cIfcShortName 64 else 65 cNewName = cNameToSet 66 endif 67 else 68 cNewName = cIfcShortName 69 endif 70 71 Test.StartMethod("getName()") 72 bOK = true 73 cName = oObj.getName() 74 Out.Log("Name is '" + cName + "'") 75 bOK = bOK AND NOT isNULL(cName) 76 bOK = bOK AND (VarType(oObj.Name) = 8 ) 77 Test.MethodTested("getName()", bOK) 78 79 Test.StartMethod("setName()") 80 bOK = true 81 Out.Log("nameToSet is '" + cNewName + "'") 82 83 if (cNewName = "fixed") then 84 Out.Log("Object " + cObjectName + " has fixed name.") 85 on error goto ex1: 86 Out.Log("Trying to change fixed name") 87 oObj.setName(cNewName) 88 Out.Log("After setting name, oObj.Name is '" + oObj.Name + "'") 89 bOK = bOK AND oObj.Name <> cNameToSet 90 if (NOT bOK) then Out.Log("Fixed name was changed! - FAILED") 91 goto cont1: 92 ex1: 93 Out.Log("Expected exception - OK") 94 resume next 95 cont1: 96 else 97 oObj.setName(cNewName) 98 Out.Log("After setting name, oObj.Name is '" + oObj.Name + "'") 99 bOK = bOK AND (cName <> oObj.Name) 100 oObj.Name = cName 101 bOK = bOK AND (cName = oObj.Name) 102 end if 103 Test.MethodTested("setName()", bOK) 104 105Exit Sub 106ErrHndl: 107 Test.Exception() 108 bOK = false 109 resume next 110End Sub 111</script:module> 112