1<?xml version="1.0" encoding="UTF-8"?>
2<script:module xmlns:script="http://openoffice.org/2000/script" script:name="container_XHierarchicalName" script:language="StarBasic">
3
4'*************************************************************************
5'
6' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
7'
8' Copyright 2000, 2010 Oracle and/or its affiliates.
9'
10' OpenOffice.org - a multi-platform office productivity suite
11'
12' This file is part of OpenOffice.org.
13'
14' OpenOffice.org is free software: you can redistribute it and/or modify
15' it under the terms of the GNU Lesser General Public License version 3
16' only, as published by the Free Software Foundation.
17'
18' OpenOffice.org is distributed in the hope that it will be useful,
19' but WITHOUT ANY WARRANTY; without even the implied warranty of
20' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
21' GNU Lesser General Public License version 3 for more details
22' (a copy is included in the LICENSE file that accompanied this code).
23'
24' You should have received a copy of the GNU Lesser General Public License
25' version 3 along with OpenOffice.org.  If not, see
26' <http://www.openoffice.org/license.html>
27' for a copy of the LGPLv3 License.
28'
29'*************************************************************************
30*****
31'*************************************************************************
32
33' This Interface/Service test depends on the followingobject relations
34' variables, which must be specified in the object creation:
35
36'      ObjectRelation: oObjRelation(0).Name = "ElementName"
37'      ObjectRelation: oObjRelation(0).Value = "MyAccessibleElementName"
38'      ObjectRelation: oObjRelation(1).Name = "HierarchicalName"
39'      ObjectRelation: oObjRelation(1).Value = "MyHierachicalName"
40
41'*************************************************************************
42
43' Be sure that all variables are dimensioned:
44option explicit
45
46Sub RunTest()
47
48'*************************************************************************
49' INTERFACE:
50' com.sun.star.container.XHierarchicalName
51'*************************************************************************
52On Error Goto ErrHndl
53    Dim bOK As Boolean
54
55    Dim cElemName as Variant
56    cElemName = utils.getObjectRelation("ElementName")
57    if isNull(cElemName) then
58        out.log("Could not get relation 'ElenemtName' -> FALSE")
59    end if
60
61    Dim cExpName as Variant
62    cExpName = utils.getObjectRelation("HierarchicalName")
63    if isNull(cExpName) then
64        out.log("Could not get relation 'HierarchicalName' -> FALSE")
65    end if
66
67    Test.StartMethod("getHierarchicalName()")
68    bOK = TRUE
69    Dim cHName as String
70    cHName = oObj.getHierarchicalName()
71    Dim result as String
72    result = instr(cHName, cExpName)
73    if len(result) = 0 then
74        olt.log("Getting: " + cHName + " but expected it to start with " + _
75                cExpName)
76        bOK = FALSE
77    end if
78    Test.MethodTested("getHierarchicalName()", bOK)
79
80    Test.StartMethod("composeHierarchicalName()")
81    bOK = TRUE
82    Dim  gettedName as String
83    gettedName = oObj.composeHierarchicalName(cElemName)
84    result = instr(gettedName, cElemName)
85    if len(result) = 0 then
86        olt.log("Getting: " + gettedName + " but expected it to start with " + _
87                cElemetName)
88        bOK = FALSE
89    end if
90    Test.MethodTested("composeHierarchicalName()", bOK)
91
92Exit Sub
93ErrHndl:
94    Test.Exception()
95    bOK = false
96    resume next
97End Sub
98</script:module>
99