1*b1cdbd2cSJim Jagielski<?xml version="1.0" encoding="UTF-8"?>
2*b1cdbd2cSJim Jagielski<script:module xmlns:script="http://openoffice.org/2000/script" script:name="container_XHierarchicalName" script:language="StarBasic">
3*b1cdbd2cSJim Jagielski
4*b1cdbd2cSJim Jagielski'*************************************************************************
5*b1cdbd2cSJim Jagielski'
6*b1cdbd2cSJim Jagielski'  Licensed to the Apache Software Foundation (ASF) under one
7*b1cdbd2cSJim Jagielski'  or more contributor license agreements.  See the NOTICE file
8*b1cdbd2cSJim Jagielski'  distributed with this work for additional information
9*b1cdbd2cSJim Jagielski'  regarding copyright ownership.  The ASF licenses this file
10*b1cdbd2cSJim Jagielski'  to you under the Apache License, Version 2.0 (the
11*b1cdbd2cSJim Jagielski'  "License"); you may not use this file except in compliance
12*b1cdbd2cSJim Jagielski'  with the License.  You may obtain a copy of the License at
13*b1cdbd2cSJim Jagielski'
14*b1cdbd2cSJim Jagielski'    http://www.apache.org/licenses/LICENSE-2.0
15*b1cdbd2cSJim Jagielski'
16*b1cdbd2cSJim Jagielski'  Unless required by applicable law or agreed to in writing,
17*b1cdbd2cSJim Jagielski'  software distributed under the License is distributed on an
18*b1cdbd2cSJim Jagielski'  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
19*b1cdbd2cSJim Jagielski'  KIND, either express or implied.  See the License for the
20*b1cdbd2cSJim Jagielski'  specific language governing permissions and limitations
21*b1cdbd2cSJim Jagielski'  under the License.
22*b1cdbd2cSJim Jagielski'
23*b1cdbd2cSJim Jagielski'*************************************************************************
24*b1cdbd2cSJim Jagielski
25*b1cdbd2cSJim Jagielski
26*b1cdbd2cSJim Jagielski
27*b1cdbd2cSJim Jagielski' This Interface/Service test depends on the followingobject relations
28*b1cdbd2cSJim Jagielski' variables, which must be specified in the object creation:
29*b1cdbd2cSJim Jagielski
30*b1cdbd2cSJim Jagielski'      ObjectRelation: oObjRelation(0).Name = "ElementName"
31*b1cdbd2cSJim Jagielski'      ObjectRelation: oObjRelation(0).Value = "MyAccessibleElementName"
32*b1cdbd2cSJim Jagielski'      ObjectRelation: oObjRelation(1).Name = "HierarchicalName"
33*b1cdbd2cSJim Jagielski'      ObjectRelation: oObjRelation(1).Value = "MyHierachicalName"
34*b1cdbd2cSJim Jagielski
35*b1cdbd2cSJim Jagielski'*************************************************************************
36*b1cdbd2cSJim Jagielski
37*b1cdbd2cSJim Jagielski' Be sure that all variables are dimensioned:
38*b1cdbd2cSJim Jagielskioption explicit
39*b1cdbd2cSJim Jagielski
40*b1cdbd2cSJim JagielskiSub RunTest()
41*b1cdbd2cSJim Jagielski
42*b1cdbd2cSJim Jagielski'*************************************************************************
43*b1cdbd2cSJim Jagielski' INTERFACE:
44*b1cdbd2cSJim Jagielski' com.sun.star.container.XHierarchicalName
45*b1cdbd2cSJim Jagielski'*************************************************************************
46*b1cdbd2cSJim JagielskiOn Error Goto ErrHndl
47*b1cdbd2cSJim Jagielski    Dim bOK As Boolean
48*b1cdbd2cSJim Jagielski
49*b1cdbd2cSJim Jagielski    Dim cElemName as Variant
50*b1cdbd2cSJim Jagielski    cElemName = utils.getObjectRelation("ElementName")
51*b1cdbd2cSJim Jagielski    if isNull(cElemName) then
52*b1cdbd2cSJim Jagielski        out.log("Could not get relation 'ElenemtName' -> FALSE")
53*b1cdbd2cSJim Jagielski    end if
54*b1cdbd2cSJim Jagielski
55*b1cdbd2cSJim Jagielski    Dim cExpName as Variant
56*b1cdbd2cSJim Jagielski    cExpName = utils.getObjectRelation("HierarchicalName")
57*b1cdbd2cSJim Jagielski    if isNull(cExpName) then
58*b1cdbd2cSJim Jagielski        out.log("Could not get relation 'HierarchicalName' -> FALSE")
59*b1cdbd2cSJim Jagielski    end if
60*b1cdbd2cSJim Jagielski
61*b1cdbd2cSJim Jagielski    Test.StartMethod("getHierarchicalName()")
62*b1cdbd2cSJim Jagielski    bOK = TRUE
63*b1cdbd2cSJim Jagielski    Dim cHName as String
64*b1cdbd2cSJim Jagielski    cHName = oObj.getHierarchicalName()
65*b1cdbd2cSJim Jagielski    Dim result as String
66*b1cdbd2cSJim Jagielski    result = instr(cHName, cExpName)
67*b1cdbd2cSJim Jagielski    if len(result) = 0 then
68*b1cdbd2cSJim Jagielski        olt.log("Getting: " + cHName + " but expected it to start with " + _
69*b1cdbd2cSJim Jagielski                cExpName)
70*b1cdbd2cSJim Jagielski        bOK = FALSE
71*b1cdbd2cSJim Jagielski    end if
72*b1cdbd2cSJim Jagielski    Test.MethodTested("getHierarchicalName()", bOK)
73*b1cdbd2cSJim Jagielski
74*b1cdbd2cSJim Jagielski    Test.StartMethod("composeHierarchicalName()")
75*b1cdbd2cSJim Jagielski    bOK = TRUE
76*b1cdbd2cSJim Jagielski    Dim  gettedName as String
77*b1cdbd2cSJim Jagielski    gettedName = oObj.composeHierarchicalName(cElemName)
78*b1cdbd2cSJim Jagielski    result = instr(gettedName, cElemName)
79*b1cdbd2cSJim Jagielski    if len(result) = 0 then
80*b1cdbd2cSJim Jagielski        olt.log("Getting: " + gettedName + " but expected it to start with " + _
81*b1cdbd2cSJim Jagielski                cElemetName)
82*b1cdbd2cSJim Jagielski        bOK = FALSE
83*b1cdbd2cSJim Jagielski    end if
84*b1cdbd2cSJim Jagielski    Test.MethodTested("composeHierarchicalName()", bOK)
85*b1cdbd2cSJim Jagielski
86*b1cdbd2cSJim JagielskiExit Sub
87*b1cdbd2cSJim JagielskiErrHndl:
88*b1cdbd2cSJim Jagielski    Test.Exception()
89*b1cdbd2cSJim Jagielski    bOK = false
90*b1cdbd2cSJim Jagielski    resume next
91*b1cdbd2cSJim JagielskiEnd Sub
92*b1cdbd2cSJim Jagielski</script:module>
93