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' This Interface/Service test depends on the followingobject relations
33' variables, which must be specified in the object creation:
34
35'      ObjectRelation: oObjRelation(0).Name = "ElementName"
36'      ObjectRelation: oObjRelation(0).Value = "MyAccessibleElementName"
37'      ObjectRelation: oObjRelation(1).Name = "HierarchicalName"
38'      ObjectRelation: oObjRelation(1).Value = "MyHierachicalName"
39
40'*************************************************************************
41
42' Be sure that all variables are dimensioned:
43option explicit
44
45Sub RunTest()
46
47'*************************************************************************
48' INTERFACE:
49' com.sun.star.container.XHierarchicalName
50'*************************************************************************
51On Error Goto ErrHndl
52    Dim bOK As Boolean
53
54    Dim cElemName as Variant
55    cElemName = utils.getObjectRelation("ElementName")
56    if isNull(cElemName) then
57        out.log("Could not get relation 'ElenemtName' -> FALSE")
58    end if
59
60    Dim cExpName as Variant
61    cExpName = utils.getObjectRelation("HierarchicalName")
62    if isNull(cExpName) then
63        out.log("Could not get relation 'HierarchicalName' -> FALSE")
64    end if
65
66    Test.StartMethod("getHierarchicalName()")
67    bOK = TRUE
68    Dim cHName as String
69    cHName = oObj.getHierarchicalName()
70    Dim result as String
71    result = instr(cHName, cExpName)
72    if len(result) = 0 then
73        olt.log("Getting: " + cHName + " but expected it to start with " + _
74                cExpName)
75        bOK = FALSE
76    end if
77    Test.MethodTested("getHierarchicalName()", bOK)
78
79    Test.StartMethod("composeHierarchicalName()")
80    bOK = TRUE
81    Dim  gettedName as String
82    gettedName = oObj.composeHierarchicalName(cElemName)
83    result = instr(gettedName, cElemName)
84    if len(result) = 0 then
85        olt.log("Getting: " + gettedName + " but expected it to start with " + _
86                cElemetName)
87        bOK = FALSE
88    end if
89    Test.MethodTested("composeHierarchicalName()", bOK)
90
91Exit Sub
92ErrHndl:
93    Test.Exception()
94    bOK = false
95    resume next
96End Sub
97</script:module>
98