]> git.aero2k.de Git - tmp/jakarta-migration.git/blob
04c2eb72559f64e8ae7155f877bb487d523424a8
[tmp/jakarta-migration.git] /
1 <?xml version="1.0" encoding="UTF-8"?>
2 <xmlReplay>
3     <auths>
4         <!-- IMPORTANT: THESE ARE STICKY :: THEY STICK AROUND UNTIL RESET, IN EXEC ORDER OF THIS FILE. -->
5         <auth ID="admin@core.collectionspace.org">YWRtaW5AY29yZS5jb2xsZWN0aW9uc3BhY2Uub3JnOkFkbWluaXN0cmF0b3I=</auth>
6         <auth ID="admin@testsci.collectionspace.org">YWRtaW5AdGVzdHNjaS5jb2xsZWN0aW9uc3BhY2Uub3JnOkFkbWluaXN0cmF0b3I=</auth>
7     </auths>
8         
9     <!-- This tests the UpdateObjectLocationOnMoveEventListener -->
10         
11     <testGroup ID="updateObjectLocationOnMoveEventListener" autoDeletePOSTS="true">
12         
13         <test ID="createCollectionObject1">
14             <method>POST</method>
15             <uri>/cspace-services/collectionobjects</uri>
16             <filename>listener/collectionobject.xml</filename>
17             <expectedCodes>201</expectedCodes>
18         </test>
19         
20         <test ID="createCollectionObject2">
21             <method>POST</method>
22             <uri>/cspace-services/collectionobjects</uri>
23             <filename>listener/collectionobject.xml</filename>
24             <expectedCodes>201</expectedCodes>
25         </test>
26         
27         <test ID="createMovement1">
28             <method>POST</method>
29             <uri>/cspace-services/movements</uri>
30             <filename>listener/movement.xml</filename>
31             <vars>
32                 <var ID="currentLocation">urn:cspace:core.collectionspace.org:locationauthorities:name(offsite_sla):item:name(Seattle1358215545509)'Seattle, WA, USA'</var>
33                 <var ID="locationDate">1650-01-01</var>
34             </vars>
35             <expectedCodes>201</expectedCodes>
36         </test>
37         
38         <test ID="createMovement2">
39             <method>POST</method>
40             <uri>/cspace-services/movements</uri>
41             <filename>listener/movement.xml</filename>
42             <vars>
43                 <var ID="currentLocation">urn:cspace:core.collectionspace.org:locationauthorities:name(offsite_sla):item:name(Portland1358215545512)'Portland, OR, USA'</var>
44                 <var ID="locationDate">1700-01-01</var>
45             </vars>
46             <expectedCodes>201</expectedCodes>
47         </test>
48         
49         <test ID="createMovement3">
50             <method>POST</method>
51             <uri>/cspace-services/movements</uri>
52             <filename>listener/movement.xml</filename>
53             <vars>
54                 <var ID="currentLocation">urn:cspace:core.collectionspace.org:locationauthorities:name(offsite_sla):item:name(Victoria1358215545515)'Victoria, BC, Canada'</var>
55                 <var ID="locationDate">1800-01-01</var>
56             </vars>
57             <expectedCodes>201</expectedCodes>
58         </test>
59         
60         <test ID="createMovement4">
61             <method>POST</method>
62             <uri>/cspace-services/movements</uri>
63             <filename>listener/movement.xml</filename>
64             <vars>
65                 <var ID="currentLocation">urn:cspace:core.collectionspace.org:locationauthorities:name(offsite_sla):item:name(Vancouver1358215545518)'Vancouver, BC, Canada'</var>
66                 <var ID="locationDate">1900-01-01</var>
67             </vars>
68             <expectedCodes>201</expectedCodes>
69         </test>
70         
71         <test ID="createMovement5">
72             <method>POST</method>
73             <uri>/cspace-services/movements</uri>
74             <filename>listener/movement.xml</filename>
75             <vars>
76                 <var ID="currentLocation">urn:cspace:core.collectionspace.org:locationauthorities:name(offsite_sla):item:name(Olympia1358215545521)'Olympia, WA, USA'</var>
77                 <var ID="locationDate">2000-01-01</var>
78             </vars>
79             <expectedCodes>201</expectedCodes>
80         </test>
81         
82         <test ID="relateCollectionObject1ToMovement1">
83             <method>POST</method>
84             <uri>/cspace-services/relations</uri>
85             <filename>listener/relation.xml</filename>
86             <vars>
87                 <var ID="subjectCsid">${createCollectionObject1.CSID}</var>
88                 <var ID="subjectDocumentType">CollectionObject</var>
89                 <var ID="objectCsid">${createMovement1.CSID}</var>
90                 <var ID="objectDocumentType">Movement</var>
91             </vars>
92             <expectedCodes>201</expectedCodes>
93         </test>
94         <test ID="readRelateCollectionObject1ToMovement1">
95             <method>GET</method>
96             <uri>/cspace-services/relations/${relateCollectionObject1ToMovement1.CSID}</uri>
97             <response>
98                 <expected level="ADDOK" />
99                 <filename>listener/res/relation.res.xml</filename>
100                 <vars>
101                     <var ID="subjectCsid">${createCollectionObject1.CSID}</var>
102                     <var ID="subjectDocumentType">CollectionObject</var>
103                     <var ID="objectCsid">${createMovement1.CSID}</var>
104                     <var ID="objectDocumentType">Movement</var>
105                 </vars>
106             </response>
107             <expectedCodes>200</expectedCodes>
108         </test>
109         
110         <test ID="relateCollectionObject2ToMovement1">
111             <method>POST</method>
112             <uri>/cspace-services/relations</uri>
113             <filename>listener/relation.xml</filename>
114             <vars>
115                 <var ID="subjectCsid">${createCollectionObject2.CSID}</var>
116                 <var ID="subjectDocumentType">CollectionObject</var>
117                 <var ID="objectCsid">${createMovement1.CSID}</var>
118                 <var ID="objectDocumentType">Movement</var>
119             </vars>
120             <expectedCodes>201</expectedCodes>
121         </test>
122         <test ID="readRelateCollectionObject2ToMovement1">
123             <method>GET</method>
124             <uri>/cspace-services/relations/${relateCollectionObject2ToMovement1.CSID}</uri>
125             <response>
126                 <expected level="ADDOK" />
127                 <filename>listener/res/relation.res.xml</filename>
128                 <vars>
129                     <var ID="subjectCsid">${createCollectionObject2.CSID}</var>
130                     <var ID="subjectDocumentType">CollectionObject</var>
131                     <var ID="objectCsid">${createMovement1.CSID}</var>
132                     <var ID="objectDocumentType">Movement</var>
133                 </vars>
134             </response>
135             <expectedCodes>200</expectedCodes>
136         </test>
137         
138         <!-- Computed current location doesn't appear to be updated
139              merely upon a Relation being created; some intervening action
140              invoking the listener must also occur. This appears to be
141              because newly-created relations aren't being returned in results
142              from the first query - which returns a list of Relation document
143              models - that is made in AbstractUpdateObjectLocationValues.handleEvent(). -->
144         <test ID="updateMovement1">
145             <method>PUT</method>
146             <uri>/cspace-services/movements/${createMovement1.CSID}</uri>
147             <filename>listener/movement.xml</filename>
148             <vars>
149                 <var ID="currentLocation">urn:cspace:core.collectionspace.org:locationauthorities:name(offsite_sla):item:name(Seattle1358215545509)'Seattle, WA, USA'</var>
150                 <var ID="locationDate">1650-02-01</var>
151             </vars>
152             <expectedCodes>200</expectedCodes>
153         </test>
154         
155         <test ID="readCollectionObject1AfterMovement1Update">
156             <method>GET</method>
157             <uri>/cspace-services/collectionobjects/${createCollectionObject1.CSID}</uri>
158             <response>
159                 <expected level="ADDOK" />
160                 <filename>listener/res/collectionobject.res.xml</filename>
161                 <vars>
162                     <var ID="computedCurrentLocationValue">${createMovement1.currentLocation}</var>
163                 </vars>
164             </response>
165             <expectedCodes>200</expectedCodes>
166         </test>
167         
168         <test ID="readCollectionObject2AfterMovement1Update">
169             <method>GET</method>
170             <uri>/cspace-services/collectionobjects/${createCollectionObject2.CSID}</uri>
171             <response>
172                 <expected level="ADDOK" />
173                 <filename>listener/res/collectionobject.res.xml</filename>
174                 <vars>
175                     <var ID="computedCurrentLocationValue">${createMovement1.currentLocation}</var>
176                 </vars>
177             </response>
178             <expectedCodes>200</expectedCodes>
179         </test>
180         
181         <test ID="relateMovement2ToCollectionObject1">
182             <method>POST</method>
183             <uri>/cspace-services/relations</uri>
184             <filename>listener/relation.xml</filename>
185             <vars>
186                 <var ID="subjectCsid">${createMovement2.CSID}</var>
187                 <var ID="subjectDocumentType">Movement</var>
188                 <var ID="objectCsid">${createCollectionObject1.CSID}</var>
189                 <var ID="objectDocumentType">CollectionObject</var>
190             </vars>
191             <expectedCodes>201</expectedCodes>
192         </test>
193         <test ID="readRelateMovement2ToCollectionObject1">
194             <method>GET</method>
195             <uri>/cspace-services/relations/${relateMovement2ToCollectionObject1.CSID}</uri>
196             <response>
197                 <expected level="ADDOK" />
198                 <filename>listener/res/relation.res.xml</filename>
199                 <vars>
200                     <var ID="subjectCsid">${createMovement2.CSID}</var>
201                     <var ID="subjectDocumentType">Movement</var>
202                     <var ID="objectCsid">${createCollectionObject1.CSID}</var>
203                     <var ID="objectDocumentType">CollectionObject</var>
204                 </vars>
205             </response>
206             <expectedCodes>200</expectedCodes>
207         </test>
208         
209         <test ID="updateMovement2">
210             <method>PUT</method>
211             <uri>/cspace-services/movements/${createMovement2.CSID}</uri>
212             <filename>listener/movement.xml</filename>
213             <vars>
214                 <var ID="currentLocation">urn:cspace:core.collectionspace.org:locationauthorities:name(offsite_sla):item:name(Portland1358215545512)'Portland, OR, USA'</var>
215                 <var ID="locationDate">1700-02-01</var>
216             </vars>
217             <expectedCodes>200</expectedCodes>
218         </test>
219
220         <test ID="readCollectionObject1AfterMovement2Update">
221             <method>GET</method>
222             <uri>/cspace-services/collectionobjects/${createCollectionObject1.CSID}</uri>
223             <response>
224                 <expected level="ADDOK" />
225                 <filename>listener/res/collectionobject.res.xml</filename>
226                 <vars>
227                     <var ID="computedCurrentLocationValue">${updateMovement2.currentLocation}</var>
228                 </vars>
229             </response>
230             <expectedCodes>200</expectedCodes>
231         </test>
232         
233         <test ID="relateMovement3ToCollectionObject1">
234             <method>POST</method>
235             <uri>/cspace-services/relations</uri>
236             <filename>listener/relation.xml</filename>
237             <vars>
238                 <var ID="subjectCsid">${createMovement3.CSID}</var>
239                 <var ID="subjectDocumentType">Movement</var>
240                 <var ID="objectCsid">${createCollectionObject1.CSID}</var>
241                 <var ID="objectDocumentType">CollectionObject</var>
242             </vars>
243             <expectedCodes>201</expectedCodes>
244         </test>
245         <test ID="readRelateMovement3ToCollectionObject1">
246             <method>GET</method>
247             <uri>/cspace-services/relations/${relateMovement3ToCollectionObject1.CSID}</uri>
248             <response>
249                 <expected level="ADDOK" />
250                 <filename>listener/res/relation.res.xml</filename>
251                 <vars>
252                     <var ID="subjectCsid">${createMovement3.CSID}</var>
253                     <var ID="subjectDocumentType">Movement</var>
254                     <var ID="objectCsid">${createCollectionObject1.CSID}</var>
255                     <var ID="objectDocumentType">CollectionObject</var>
256                 </vars>
257             </response>
258             <expectedCodes>200</expectedCodes>
259         </test>
260         
261         <test ID="updateMovement3">
262             <method>PUT</method>
263             <uri>/cspace-services/movements/${createMovement3.CSID}</uri>
264             <filename>listener/movement.xml</filename>
265             <vars>
266                 <var ID="currentLocation">urn:cspace:core.collectionspace.org:locationauthorities:name(offsite_sla):item:name(Victoria1358215545515)'Victoria, BC, Canada'</var>
267                 <var ID="locationDate">1800-02-01</var>
268             </vars>
269             <expectedCodes>200</expectedCodes>
270         </test>
271         
272         <test ID="readCollectionObject1AfterMovement3Update">
273             <method>GET</method>
274             <uri>/cspace-services/collectionobjects/${createCollectionObject1.CSID}</uri>
275             <response>
276                 <expected level="ADDOK" />
277                 <filename>listener/res/collectionobject.res.xml</filename>
278                 <vars>
279                     <var ID="computedCurrentLocationValue">${createMovement3.currentLocation}</var>
280                 </vars>
281             </response>
282             <expectedCodes>200</expectedCodes>
283         </test>
284         
285         <test ID="relateCollectionObject1ToMovement4">
286             <method>POST</method>
287             <uri>/cspace-services/relations</uri>
288             <filename>listener/relation.xml</filename>
289             <vars>
290                 <var ID="subjectCsid">${createCollectionObject1.CSID}</var>
291                 <var ID="subjectDocumentType">CollectionObject</var>
292                 <var ID="objectCsid">${createMovement4.CSID}</var>
293                 <var ID="objectDocumentType">Movement</var>
294             </vars>
295             <expectedCodes>201</expectedCodes>
296         </test>
297         
298         <test ID="relateCollectionObject1ToMovement5">
299             <method>POST</method>
300             <uri>/cspace-services/relations</uri>
301             <filename>listener/relation.xml</filename>
302             <vars>
303                 <var ID="subjectCsid">${createCollectionObject1.CSID}</var>
304                 <var ID="subjectDocumentType">CollectionObject</var>
305                 <var ID="objectCsid">${createMovement5.CSID}</var>
306                 <var ID="objectDocumentType">Movement</var>
307             </vars>
308             <expectedCodes>201</expectedCodes>
309         </test>
310         
311         <test ID="updateMovement5">
312             <method>PUT</method>
313             <uri>/cspace-services/movements/${createMovement5.CSID}</uri>
314             <filename>listener/movement.xml</filename>
315             <vars>
316                 <var ID="currentLocation">urn:cspace:core.collectionspace.org:locationauthorities:name(offsite_sla):item:name(Olympia1358215545521)'Olympia, WA, USA'</var>
317                 <var ID="locationDate">2000-02-02</var>
318             </vars>
319             <expectedCodes>200</expectedCodes>
320         </test>
321         
322         <test ID="readCollectionObject1AfterMovement5Update">
323             <method>GET</method>
324             <uri>/cspace-services/collectionobjects/${createCollectionObject1.CSID}</uri>
325             <response>
326                 <expected level="ADDOK" />
327                 <filename>listener/res/collectionobject.res.xml</filename>
328                 <vars>
329                     <var ID="computedCurrentLocationValue">${createMovement5.currentLocation}</var>
330                 </vars>
331             </response>
332             <expectedCodes>200</expectedCodes>
333         </test>
334         
335         <test ID="softDeleteRelationBetweenCollectionObject1AndMovement5">
336             <method>PUT</method>
337             <uri>/cspace-services/relations/${relateCollectionObject1ToMovement5.CSID}/workflow/delete</uri>
338             <expectedCodes>200</expectedCodes>
339             <filename>relation/res/workflowState.res.xml</filename>
340             <vars>
341                 <var ID="workflowState">deleted</var>
342             </vars>
343         </test>
344         
345         <test ID="updateMovement4">
346             <method>PUT</method>
347             <uri>/cspace-services/movements/${createMovement4.CSID}</uri>
348             <filename>listener/movement.xml</filename>
349             <vars>
350                 <var ID="currentLocation">urn:cspace:core.collectionspace.org:locationauthorities:name(offsite_sla):item:name(Vancouver1358215545518)'Vancouver, BC, Canada'</var>
351                 <var ID="locationDate">1900-02-01</var>
352             </vars>
353             <expectedCodes>200</expectedCodes>
354         </test>
355         
356         <test ID="readCollectionObject1AfterRelationToMovement5SoftDelete">
357             <method>GET</method>
358             <uri>/cspace-services/collectionobjects/${createCollectionObject1.CSID}</uri>
359             <response>
360                 <expected level="ADDOK" />
361                 <filename>listener/res/collectionobject.res.xml</filename>
362                 <vars>
363                     <var ID="computedCurrentLocationValue">${createMovement4.currentLocation}</var>
364                 </vars>
365             </response>
366             <expectedCodes>200</expectedCodes>
367         </test>
368         
369         <test ID="softDeleteMovement4">
370             <method>PUT</method>
371             <uri>/cspace-services/movements/${createMovement4.CSID}/workflow/delete</uri>
372             <expectedCodes>200</expectedCodes>
373             <!-- XmlReplay appears to require a filename on PUT. -->
374             <!-- If not present, throws "java.io.FileNotFoundException: File '' does not exist" -->
375             <!-- The contents of that file, sent in the PUT payload, will be ignored by the services. -->
376             <!-- Note that the filename below is in a different module than -->
377             <!-- the present XmlReplay control file. -->
378             <filename>relation/res/workflowState.res.xml</filename>
379             <vars>
380                 <var ID="workflowState">deleted</var>
381             </vars>
382         </test>
383         
384         <test ID="readCollectionObject1AfterMovement4SoftDelete">
385             <method>GET</method>
386             <uri>/cspace-services/collectionobjects/${createCollectionObject1.CSID}</uri>
387             <response>
388                 <expected level="ADDOK" />
389                 <filename>listener/res/collectionobject.res.xml</filename>
390                 <vars>
391                     <var ID="computedCurrentLocationValue">${createMovement3.currentLocation}</var>
392                 </vars>
393             </response>
394             <expectedCodes>200</expectedCodes>
395         </test>
396         
397         <test ID="updateMovement3WithBlankCurrentLocation">
398             <method>PUT</method>
399             <uri>/cspace-services/movements/${createMovement3.CSID}</uri>
400             <filename>listener/movement.xml</filename>
401             <vars>
402                 <var ID="currentLocation"></var>
403                 <var ID="locationDate">1800-02-02</var>
404             </vars>
405             <expectedCodes>200</expectedCodes>
406         </test>
407         
408         <!--
409             This test verifies that the computedCurrentLocation field
410             value in the CollectionObject record will NOT be set to null,
411             if the most recent movement has an empty (blank) current location.
412             per CSPACE-6308.
413         -->
414         <test ID="readCollectionObject1AfterMovement3BlankCurrentLocationUpdate">
415             <method>GET</method>
416             <uri>/cspace-services/collectionobjects/${createCollectionObject1.CSID}</uri>
417             <response>
418                 <expected level="ADDOK" />
419                 <filename>listener/res/collectionobject.res.xml</filename>
420                 <vars>
421                     <!-- The current location value most recently stored in this -->
422                     <!-- CollectionObject should still be present. -->
423                     <var ID="computedCurrentLocationValue">${updateMovement3.currentLocation}</var>
424                 </vars>
425             </response>
426             <expectedCodes>200</expectedCodes>
427         </test>
428         
429         <test ID="updateMovement3WithNonBlankCurrentLocation">
430             <method>PUT</method>
431             <uri>/cspace-services/movements/${createMovement3.CSID}</uri>
432             <filename>listener/movement.xml</filename>
433             <vars>
434                 <var ID="currentLocation">urn:cspace:core.collectionspace.org:locationauthorities:name(offsite_sla):item:name(Ottawa1358215545567)'Ottawa, ON, Canada'</var>
435                 <var ID="locationDate">1800-02-03</var>
436             </vars>
437             <expectedCodes>200</expectedCodes>
438         </test>
439         <test ID="readMovement3AfterUpdateWithNonBlankCurrentLocation">
440             <method>GET</method>
441             <uri>/cspace-services/movements/${createMovement3.CSID}</uri>
442             <filename>listener/movement.xml</filename>
443             <response>
444                 <expected level="ADDOK" />
445                 <filename>listener/res/movement.res.xml</filename>
446                 <vars>
447                     <var ID="currentLocationValue">${updateMovement3WithNonBlankCurrentLocation.currentLocation}</var>
448                     <var ID="locationDateValue">${updateMovement3WithNonBlankCurrentLocation.got("//locationDate")}</var>
449                 </vars>
450             </response>
451             <expectedCodes>200</expectedCodes>
452         </test>
453         
454         <test ID="readCollectionObject1AfterMovement3NonBlankCurrentLocationUpdate">
455             <method>GET</method>
456             <uri>/cspace-services/collectionobjects/${createCollectionObject1.CSID}</uri>
457             <response>
458                 <expected level="ADDOK" />
459                 <filename>listener/res/collectionobject.res.xml</filename>
460                 <vars>
461                     <var ID="computedCurrentLocationValue">${updateMovement3WithNonBlankCurrentLocation.currentLocation}</var>
462                 </vars>
463             </response>
464             <expectedCodes>200</expectedCodes>
465         </test>
466         
467         <!-- 
468              CSPACE-6307: A Movement with a later update timestamp is
469              deemed to have taken place later than a Movement with an earlier
470              update timestamp, if both have identical location dates.
471         -->
472         
473         <test ID="createMovement6">
474             <method>POST</method>
475             <uri>/cspace-services/movements</uri>
476             <filename>listener/movement.xml</filename>
477             <vars>
478                 <var ID="currentLocation">urn:cspace:core.collectionspace.org:locationauthorities:name(offsite_sla):item:name(Spokane1358215545524)'Spokane, WA, USA'</var>
479                 <!-- Note: value below is identical to that of Movement 3: -->
480                 <var ID="locationDate">${updateMovement3WithNonBlankCurrentLocation.locationDate}</var>
481             </vars>
482             <expectedCodes>201</expectedCodes>
483         </test>
484         <test ID="readMovement6">
485             <method>GET</method>
486             <uri>/cspace-services/movements/${createMovement6.CSID}</uri>
487             <response>
488                 <expected level="ADDOK" />
489                 <filename>listener/res/movement.res.xml</filename>
490                 <vars>
491                     <var ID="currentLocationValue">${createMovement6.currentLocation}</var>
492                     <var ID="locationDateValue">${updateMovement3WithNonBlankCurrentLocation.got("//locationDate")}</var>
493                 </vars>
494             </response>
495             <expectedCodes>200</expectedCodes>
496         </test>
497         
498         <test ID="relateCollectionObject1ToMovement6">
499             <method>POST</method>
500             <uri>/cspace-services/relations</uri>
501             <filename>listener/relation.xml</filename>
502             <vars>
503                 <var ID="subjectCsid">${createCollectionObject1.CSID}</var>
504                 <var ID="subjectDocumentType">CollectionObject</var>
505                 <var ID="objectCsid">${createMovement6.CSID}</var>
506                 <var ID="objectDocumentType">Movement</var>
507             </vars>
508             <expectedCodes>201</expectedCodes>
509         </test>
510         -->
511         
512         <!-- See comment on updateMovement1 for an explanation of why this -->
513         <!-- update is needed, after creating a new relation -->
514         <test ID="updateMovement6">
515             <method>PUT</method>
516             <uri>/cspace-services/movements/${createMovement6.CSID}</uri>
517             <filename>listener/movement.xml</filename>
518             <vars>
519                 <var ID="currentLocation">${createMovement6.currentLocation}</var>
520                 <var ID="locationDate">${createMovement6.locationDate}</var>
521             </vars>
522             <expectedCodes>200</expectedCodes>
523         </test>
524         
525         <test ID="readCollectionObject1AfterBeingRelatedToMovement6">
526             <method>GET</method>
527             <uri>/cspace-services/collectionobjects/${createCollectionObject1.CSID}</uri>
528             <response>
529                 <expected level="ADDOK" />
530                 <filename>listener/res/collectionobject.res.xml</filename>
531                 <vars>
532                     <var ID="computedCurrentLocationValue">${createMovement6.currentLocation}</var>
533                 </vars>
534             </response>
535             <expectedCodes>200</expectedCodes>
536         </test>
537         
538         <test ID="updateMovement3">
539             <method>PUT</method>
540             <uri>/cspace-services/movements/${createMovement3.CSID}</uri>
541             <filename>listener/movement.xml</filename>
542             <vars>
543                 <var ID="currentLocation">${createMovement3.currentLocation}</var>
544                 <!-- Note: value below is identical to that of Movement 6: -->
545                 <var ID="locationDate">${updateMovement3WithNonBlankCurrentLocation.locationDate}</var>
546             </vars>
547             <expectedCodes>200</expectedCodes>
548         </test>
549         
550         <test ID="readCollectionObject1AfterUpdateOfMovement3">
551             <method>GET</method>
552             <uri>/cspace-services/collectionobjects/${createCollectionObject1.CSID}</uri>
553             <response>
554                 <expected level="ADDOK" />
555                 <filename>listener/res/collectionobject.res.xml</filename>
556                 <vars>
557                     <var ID="computedCurrentLocationValue">${createMovement3.currentLocation}</var>
558                 </vars>
559             </response>
560             <expectedCodes>200</expectedCodes>
561         </test>
562
563         <!-- The following tests pertain to CSPACE-5793 -->
564         
565         <!-- 
566              At this point in the test sequence, four Movement records exist
567              and are related to CollectionObject1. From most to least
568              recent movements (including tiebreakers), these are ordered:
569         
570              Movement3
571              Movement6 (same location date as Movement3; updated less recently)
572              Movement2
573              Movement1
574           
575              The following tests sequentially hard delete the relations to
576              the two most recent Movements, and then hard delete the third
577              most recent Movement record outright, leaving only the least
578              recent Movement (Movement1).
579         -->
580         
581         <test ID="hardDeleteRelationBetweenCollectionObject1AndMovement3">
582             <method>DELETE</method>
583             <uri>/cspace-services/relations/${relateMovement3ToCollectionObject1.CSID}</uri>
584             <expectedCodes>200</expectedCodes>
585         </test>
586         
587         <test ID="readCollectionObject1AfterRelationToMovement3Delete">
588             <method>GET</method>
589             <uri>/cspace-services/collectionobjects/${createCollectionObject1.CSID}</uri>
590             <response>
591                 <expected level="ADDOK" />
592                 <filename>listener/res/collectionobject.res.xml</filename>
593                 <vars>
594                     <var ID="computedCurrentLocationValue">${createMovement6.currentLocation}</var>
595                 </vars>
596             </response>
597             <expectedCodes>200</expectedCodes>
598         </test>
599         
600         <test ID="hardDeleteRelationBetweenCollectionObject1AndMovement6">
601             <method>DELETE</method>
602             <uri>/cspace-services/relations/${relateCollectionObject1ToMovement6.CSID}</uri>
603             <expectedCodes>200</expectedCodes>
604         </test>
605         
606         <test ID="readCollectionObject1AfterRelationToMovement6Delete">
607             <method>GET</method>
608             <uri>/cspace-services/collectionobjects/${createCollectionObject1.CSID}</uri>
609             <response>
610                 <expected level="ADDOK" />
611                 <filename>listener/res/collectionobject.res.xml</filename>
612                 <vars>
613                     <var ID="computedCurrentLocationValue">${createMovement2.currentLocation}</var>
614                 </vars>
615             </response>
616             <expectedCodes>200</expectedCodes>
617         </test>
618         
619         <test ID="hardDeleteMovement2">
620             <method>DELETE</method>
621             <uri>/cspace-services/movements/${createMovement2.CSID}</uri>
622             <expectedCodes>200</expectedCodes>
623         </test>
624         
625         <test ID="readCollectionObject1AfterMovement2Delete">
626             <method>GET</method>
627             <uri>/cspace-services/collectionobjects/${createCollectionObject1.CSID}</uri>
628             <response>
629                 <expected level="ADDOK" />
630                 <filename>listener/res/collectionobject.res.xml</filename>
631                 <vars>
632                     <var ID="computedCurrentLocationValue">${createMovement1.currentLocation}</var>
633                 </vars>
634             </response>
635             <expectedCodes>200</expectedCodes>
636         </test>
637         
638     </testGroup>
639  
640     <!-- These tests verify that updates to the computed current location values -->
641     <!-- in CollectionObject records succeed, even in tenants where Movement -->
642     <!-- records are configured to be versioned. See CSPACE-6171 for more details. -->    
643     <testGroup ID="updateObjectLocationOnMoveInVersioningEnabledTenant" autoDeletePOSTS="true">
644
645         <test ID="createCollectionObjectInVersioningTenant" auth="admin@testsci.collectionspace.org">
646             <method>POST</method>
647             <uri>/cspace-services/collectionobjects</uri>
648             <filename>listener/collectionobject.xml</filename>
649             <expectedCodes>201</expectedCodes>
650         </test>
651         
652         <test ID="createMovementInVersioningTenant" auth="admin@testsci.collectionspace.org">
653             <method>POST</method>
654             <uri>/cspace-services/movements</uri>
655             <filename>listener/movement.xml</filename>
656             <vars>
657                 <var ID="currentLocation">urn:cspace:core.collectionspace.org:locationauthorities:name(offsite_sla):item:name(Ecatepec13582155455560)'Ecatepec, Mexico'</var>
658                 <var ID="locationDate">2000-01-01</var>
659             </vars>
660             <expectedCodes>201</expectedCodes>
661         </test>
662         
663         <test ID="relateCollectionObjectToMovementInVersioningTenant" auth="admin@testsci.collectionspace.org">
664             <method>POST</method>
665             <uri>/cspace-services/relations</uri>
666             <filename>listener/relation.xml</filename>
667             <vars>
668                 <var ID="subjectCsid">${createCollectionObjectInVersioningTenant.CSID}</var>
669                 <var ID="subjectDocumentType">CollectionObject</var>
670                 <var ID="objectCsid">${createMovementInVersioningTenant.CSID}</var>
671                 <var ID="objectDocumentType">Movement</var>
672             </vars>
673             <expectedCodes>201</expectedCodes>
674         </test>
675         
676         <!-- See comment on updateMovement1 in the updateObjectLocationOnMoveEventListener -->
677         <!-- test group for an explanation of why this update is needed, after -->
678         <!-- creating a new relation -->
679         <test ID="updateMovementInVersioningTenant" auth="admin@testsci.collectionspace.org">
680             <method>PUT</method>
681             <uri>/cspace-services/movements/${createMovementInVersioningTenant.CSID}</uri>
682             <filename>listener/movement.xml</filename>
683             <vars>
684                 <var ID="currentLocation">${createMovementInVersioningTenant.currentLocation}</var>
685                 <var ID="locationDate">${createMovementInVersioningTenant.locationDate}</var>
686             </vars>
687             <expectedCodes>200</expectedCodes>
688         </test>
689         
690         <test ID="readCollectionObjectAfterRelatingToMovementInVersioningTenant" auth="admin@testsci.collectionspace.org">
691             <method>GET</method>
692             <uri>/cspace-services/collectionobjects/${createCollectionObjectInVersioningTenant.CSID}</uri>
693             <response>
694                 <expected level="ADDOK" />
695                 <filename>listener/res/collectionobject.res.xml</filename>
696                 <vars>
697                     <var ID="computedCurrentLocationValue">${createMovementInVersioningTenant.currentLocation}</var>
698                 </vars>
699             </response>
700             <expectedCodes>200</expectedCodes>
701         </test>
702         
703         <test ID="modifyMovementInVersioningTenant" auth="admin@testsci.collectionspace.org">
704             <method>PUT</method>
705             <uri>/cspace-services/movements/${createMovementInVersioningTenant.CSID}</uri>
706             <filename>listener/movement.xml</filename>
707             <vars>
708                 <var ID="currentLocation">urn:cspace:core.collectionspace.org:locationauthorities:name(offsite_sla):item:name(Guadalajara13582155455562)'Guadalajara, Mexico'</var>
709                 <var ID="locationDate">2000-01-02</var>
710             </vars>
711             <expectedCodes>200</expectedCodes>
712         </test>
713         
714         <test ID="readCollectionObjectAfterModifyingMovementInVersioningTenant" auth="admin@testsci.collectionspace.org">
715             <method>GET</method>
716             <uri>/cspace-services/collectionobjects/${createCollectionObjectInVersioningTenant.CSID}</uri>
717             <response>
718                 <expected level="ADDOK" />
719                 <filename>listener/res/collectionobject.res.xml</filename>
720                 <vars>
721                     <var ID="computedCurrentLocationValue">${modifyMovementInVersioningTenant.currentLocation}</var>
722                 </vars>
723             </response>
724             <expectedCodes>200</expectedCodes>
725         </test>
726         
727     </testGroup>
728         
729 </xmlReplay>
730