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 37' Be sure that all variables are dimensioned: 38option explicit 39 40'************************************************************************* 41' This Interface/Service test depends on the following GLOBAL variables, 42' which must be specified in the object creation: 43 44' Global cNameToSet As String "fixed" if name is fixed 45 46'************************************************************************* 47 48 49 50 51 52Sub RunTest() 53 54'************************************************************************* 55' INTERFACE: 56' com.sun.star.container.XNamed 57'************************************************************************* 58On Error Goto ErrHndl 59 Dim bOK As Boolean 60 Dim cName As String, cNewName As String 61 62 if VarType(cNameToSet) = 8 then 63 if cNameToSet = "" then 64 cNewName = cIfcShortName 65 else 66 cNewName = cNameToSet 67 endif 68 else 69 cNewName = cIfcShortName 70 endif 71 72 Test.StartMethod("getName()") 73 bOK = true 74 cName = oObj.getName() 75 Out.Log("Name is '" + cName + "'") 76 bOK = bOK AND NOT isNULL(cName) 77 bOK = bOK AND (VarType(oObj.Name) = 8 ) 78 Test.MethodTested("getName()", bOK) 79 80 Test.StartMethod("setName()") 81 bOK = true 82 Out.Log("nameToSet is '" + cNewName + "'") 83 84 if (cNewName = "fixed") then 85 Out.Log("Object " + cObjectName + " has fixed name.") 86 on error goto ex1: 87 Out.Log("Trying to change fixed name") 88 oObj.setName(cNewName) 89 Out.Log("After setting name, oObj.Name is '" + oObj.Name + "'") 90 bOK = bOK AND oObj.Name <> cNameToSet 91 if (NOT bOK) then Out.Log("Fixed name was changed! - FAILED") 92 goto cont1: 93 ex1: 94 Out.Log("Expected exception - OK") 95 resume next 96 cont1: 97 else 98 oObj.setName(cNewName) 99 Out.Log("After setting name, oObj.Name is '" + oObj.Name + "'") 100 bOK = bOK AND (cName <> oObj.Name) 101 oObj.Name = cName 102 bOK = bOK AND (cName = oObj.Name) 103 end if 104 Test.MethodTested("setName()", bOK) 105 106Exit Sub 107ErrHndl: 108 Test.Exception() 109 bOK = false 110 resume next 111End Sub 112</script:module> 113