1 <?xml version="1.0" encoding="UTF-8"?>
3 <testGroup ID="HierarchicLocationTooManyParents" autoDeletePOSTS="true">
5 <test ID="LocationAuth1" auth="admin@collectionspace.org">
7 <uri>/cspace-services/locationauthorities/</uri>
8 <filename>location/hierarchy/1-authority.xml</filename>
10 <var ID="shortIdentifier">CSPACE3739LocationAuthority</var>
11 <var ID="displayName">LocationAuth1-displayName</var>
14 <test ID="LocationChild1">
16 <uri>/cspace-services/locationauthorities/${LocationAuth1.CSID}/items/</uri>
17 <filename>location/hierarchy/2-item.xml</filename>
19 <var ID="inAuthority">${LocationAuth1.CSID}</var>
20 <var ID="authShortIdentifier">CSPACE3739LocationAuthority</var>
21 <var ID="shortIdentifier">Shelf1</var>
22 <var ID="name">Shelf 1</var>
25 <test ID="LocationChild2">
27 <uri>/cspace-services/locationauthorities/${LocationAuth1.CSID}/items/</uri>
28 <filename>location/hierarchy/2-item.xml</filename>
30 <var ID="inAuthority">${LocationAuth1.CSID}</var>
31 <var ID="authShortIdentifier">CSPACE3739LocationAuthority</var>
32 <var ID="shortIdentifier">Shelf2</var>
33 <var ID="name">Shelf 2</var>
36 <test ID="LocationChild3">
38 <uri>/cspace-services/locationauthorities/${LocationAuth1.CSID}/items/</uri>
39 <filename>location/hierarchy/2-item.xml</filename>
41 <var ID="inAuthority">${LocationAuth1.CSID}</var>
42 <var ID="authShortIdentifier">CSPACE3739LocationAuthority</var>
43 <var ID="shortIdentifier">Shelf3</var>
44 <var ID="name">Shelf 3</var>
48 <test ID="LocationParent">
50 <uri>/cspace-services/locationauthorities/urn:cspace:name(CSPACE3739LocationAuthority)/items/</uri>
51 <filename>location/hierarchy/2-item.xml</filename>
53 <var ID="inAuthority">${LocationAuth1.CSID}</var>
54 <var ID="authShortIdentifier">CSPACE3739LocationAuthority</var>
55 <var ID="shortIdentifier">Aisle3</var>
56 <var ID="name">Aisle 3</var>
62 <uri>/cspace-services/locationauthorities/urn:cspace:name(CSPACE3739LocationAuthority)/items/</uri>
63 <filename>location/hierarchy/3-locations_w_relations.xml</filename>
65 <var ID="inAuthority">${LocationAuth1.CSID}</var>
66 <var ID="authShortIdentifier">CSPACE3739LocationAuthority</var>
67 <var ID="shortIdentifier">Cabinet1</var>
68 <var ID="name">Cabinet 1</var>
69 <var ID="parentCSID">${LocationParent.CSID}</var>
70 <var ID="parentUri">/cspace-services/locationauthorities/urn:cspace:name(CSPACE3739LocationAuthority)/items/${LocationParent.CSID}</var>
71 <var ID="childCSID">${LocationChild1.CSID}</var>
72 <var ID="childUri">/cspace-services/locationauthorities/urn:cspace:name(CSPACE3739LocationAuthority)/items/${LocationChild1.CSID}</var>
73 <var ID="child2CSID">${LocationChild2.CSID}</var>
74 <var ID="child2Uri">/cspace-services/locationauthorities/urn:cspace:name(CSPACE3739LocationAuthority)/items/${LocationChild2.CSID}</var>
75 <var ID="child3CSID">${LocationChild3.CSID}</var>
76 <var ID="child3Uri">/cspace-services/locationauthorities/urn:cspace:name(CSPACE3739LocationAuthority)/items/${LocationChild3.CSID}</var>
82 <uri>/cspace-services/locationauthorities/urn:cspace:name(CSPACE3739LocationAuthority)/items/</uri>
83 <filename>location/hierarchy/3-locations_w_relations.xml</filename>
85 <var ID="inAuthority">${LocationAuth1.CSID}</var>
86 <var ID="authShortIdentifier">CSPACE3739LocationAuthority</var>
87 <var ID="shortIdentifier">Cabinet1SecondParent</var>
88 <var ID="name">Cabinet 1 Second Parent</var>
89 <var ID="parentCSID">${LocationParent.CSID}</var>
90 <var ID="parentUri">/cspace-services/locationauthorities/urn:cspace:name(CSPACE3739LocationAuthority)/items/${LocationParent.CSID}</var>
91 <var ID="childCSID">${LocationChild1.CSID}</var>
92 <var ID="childUri">/cspace-services/locationauthorities/urn:cspace:name(CSPACE3739LocationAuthority)/items/${LocationChild1.CSID}</var>
93 <var ID="child2CSID">${LocationChild2.CSID}</var>
94 <var ID="child2Uri">/cspace-services/locationauthorities/urn:cspace:name(CSPACE3739LocationAuthority)/items/${LocationChild2.CSID}</var>
95 <var ID="child3CSID">${LocationChild3.CSID}</var>
96 <var ID="child3Uri">/cspace-services/locationauthorities/urn:cspace:name(CSPACE3739LocationAuthority)/items/${LocationChild3.CSID}</var>
100 <test ID="EchoNotes">
101 <method>POST</method>
102 <uri>/cspace-services/dimensions/</uri>
103 <filename>location/hierarchy/0-note.xml</filename>
106 LocationAuth1: ${LocationAuth1.CSID}
107 | Location: ${Location1.CSID}
108 | Parent: ${LocationParent.CSID}
110 | 1: ${LocationChild1.CSID}
111 | 2: ${LocationChild2.CSID}
112 | 3: ${LocationChild3.CSID}
113 | Location2: ${Location2.CSID}
119 <test ID="GetLocation">
121 <uri>/cspace-services/locationauthorities/${LocationAuth1.CSID}/items/${Location1.CSID}?showRelations=true</uri>
124 <test ID="GetParent">
126 <uri>/cspace-services/locationauthorities/${LocationAuth1.CSID}/items/${LocationParent.CSID}?showRelations=true</uri>
129 <test ID="Get_siblings">
131 <uri>/cspace-services/locationauthorities/${LocationAuth1.CSID}/items/${LocationChild1.CSID}?showSiblings=true</uri>
134 <test ID="Get_allRelations">
136 <uri>/cspace-services/locationauthorities/${LocationAuth1.CSID}/items/${Location1.CSID}?showAllRelations=true</uri>
139 <test ID="relationsGET">
141 <uri>/cspace-services/relations/</uri>
145 <test ID="GetHierarchyL1">
147 <uri>/cspace-services/locationauthorities/${LocationAuth1.CSID}/items/${Location1.CSID}/hierarchy</uri>
150 <test ID="GetHierarchyLP">
152 <uri>/cspace-services/locationauthorities/${LocationAuth1.CSID}/items/${LocationParent.CSID}/hierarchy</uri>
155 <test ID="GetHierarchyLP_Parents">
157 <uri>/cspace-services/locationauthorities/${LocationAuth1.CSID}/items/${LocationChild1.CSID}/hierarchy?direction=parents</uri>
161 <test ID="GetLocation">
163 <uri>/cspace-services/locationauthorities/${LocationAuth1.CSID}/items/${Location1.CSID}?showRelations=true</uri>
166 <test ID="Get_siblings">
168 <uri>/cspace-services/locationauthorities/${LocationAuth1.CSID}/items/${LocationChild1.CSID}?showSiblings=true</uri>
170 <expected level="ADDOK" />
171 <filename>location/hierarchy/res/Get_siblings.res.xml</filename>
173 <var ID="locationCSID">${Location1.CSID}</var>
174 <var ID="child1CSID">${LocationChild1.CSID}</var>
175 <var ID="child2CSID">${LocationChild2.CSID}</var>
177 <startElement>/document/*[local-name()='relations-common-list']</startElement>
181 <test ID="Get_allRelations">
183 <uri>/cspace-services/locationauthorities/${LocationAuth1.CSID}/items/${Location1.CSID}?showAllRelations=true</uri>
185 <expected level="ADDOK" />
186 <filename>location/hierarchy/res/Get_allRelations.res.xml</filename>
187 <startElement>/document/*[local-name()='relations-common-list']</startElement>
192 <test ID="relationsGET">
194 <uri>/cspace-services/relations/</uri>
197 <test ID="relations_sbj">
199 <uri>/cspace-services/relations?sbj=${Location1.CSID}</uri>
202 <test ID="relations_obj">
204 <uri>/cspace-services/relations?obj=${Location1.CSID}</uri>
208 <!-- NOTE: item on url is .../items/${LocationChild1.CSID} so this looks for
209 siblings of Child1, which would be child2 and child3.
211 <!-- NOTE: vars are referenced in showAllRelations.res.xml
212 from tests in this test group, e.g.
213 LocationParent.CSID :: ${LocationParent.CSID}
214 These vars are all in the expression context while this group is active,
215 because we hang onto all ServiceResult objects for the duration of the group,
216 and ServiceObjects keep their vars.