Update iotdm library and tests.
[integration/test.git] / csit / suites / iotdm / basic / 070_DeleteTest.robot
1 *** Settings ***
2 Suite Teardown    Kill The Tree    ${ODL_SYSTEM_IP}    InCSE1    admin    admin
3 Library           ../../../libraries/criotdm.py
4 Library           Collections
5
6 *** Variables ***
7 ${httphost}       ${ODL_SYSTEM_IP}
8 ${httpuser}       admin
9 ${httppass}       admin
10 ${rt_ae}          2
11 ${rt_container}    3
12 ${rt_contentInstance}    4
13
14 *** Test Cases ***
15 Set Suite Variable
16     [Documentation]    set a suite variable ${iserver}
17     #==================================================
18     #    Delete Test
19     #==================================================
20     ${iserver} =    Connect To Iotdm    ${httphost}    ${httpuser}    ${httppass}    http
21     Set Suite Variable    ${iserver}
22
23 4.11 Delete AE without child resource
24     [Documentation]    Create AE then delete it
25     ${attr} =    Set Variable    "api":"jb","apn":"jb2","or":"http://hey/you","rr":true
26     ${r} =    Create Resource    ${iserver}    InCSE1    ${rt_ae}    ${attr}
27     ${ae} =    Location    ${r}
28     Response Is Correct    ${r}
29     #------------- Delete -----------------------------
30     ${deleteRes} =    Delete Resource    ${iserver}    ${ae}
31     ${status_code} =    Status Code    ${deleteRes}
32     Should Be Equal As Integers    ${status_code}    200
33     # Delete AE that does not exist/has been deleted should return error
34     ${error} =    Run Keyword And Expect Error    *    Delete Resource    ${iserver}    ${ae}
35     Should Start with    ${error}    Cannot delete this resource [404]
36
37 4.12 Delete Container without child resource
38     [Documentation]    create container then delete it
39     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you"
40     ${r} =    Create Resource    ${iserver}    InCSE1    ${rt_container}    ${attr}
41     ${container} =    Location    ${r}
42     Response Is Correct    ${r}
43     #------------- Delete -----------------------------
44     ${deleteRes} =    Delete Resource    ${iserver}    ${container}
45     ${status_code} =    Status Code    ${deleteRes}
46     Should Be Equal As Integers    ${status_code}    200
47     # Delete container that does not exist/has been deleted should return error
48     ${error} =    Run Keyword And Expect Error    *    Delete Resource    ${iserver}    ${container}
49     Should Start with    ${error}    Cannot delete this resource [404]
50
51 4.13 Delete contentInstance under InCSE1/AE/container/
52     [Documentation]    Delete contentInstance under InCSE1/AE/container/
53     ${attr} =    Set Variable    "api":"jb","apn":"jb2","or":"http://hey/you","rr":true,"rn":"AE1"
54     ${r} =    Create Resource    ${iserver}    InCSE1    ${rt_ae}    ${attr}
55     ${ae} =    Location    ${r}
56     Response Is Correct    ${r}
57     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you","rn":"Con1"
58     ${r} =    Create Resource    ${iserver}    ${ae}    ${rt_container}    ${attr}
59     ${container} =    Location    ${r}
60     Response Is Correct    ${r}
61     ${attr} =    Set Variable    "cnf": "1","or": "http://hey/you","con":"101"
62     ${r} =    Create Resource    ${iserver}    ${container}    ${rt_contentInstance}    ${attr}
63     ${conIn} =    Location    ${r}
64     Response Is Correct    ${r}
65     #------------- Delete -----------------------------
66     ${deleteRes} =    Delete Resource    ${iserver}    ${conIn}
67     ${status_code} =    Status Code    ${deleteRes}
68     Should Be Equal As Integers    ${status_code}    200
69     # Delete container that does not exist/has been deleted should return error
70     ${error} =    Run Keyword And Expect Error    *    Delete Resource    ${iserver}    ${conIn}
71     Should Start with    ${error}    Cannot delete this resource [404]
72
73 4.14 Delete contentInstance under InCSE1/Container/
74     [Documentation]    Delete contentInstance under InCSE1/Container/
75     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you","rn":"Con2"
76     ${r} =    Create Resource    ${iserver}    InCSE1    ${rt_container}    ${attr}
77     ${container} =    Location    ${r}
78     Response Is Correct    ${r}
79     ${attr} =    Set Variable    "cnf": "1","or": "http://hey/you","con":"101"
80     ${r} =    Create Resource    ${iserver}    ${container}    ${rt_contentInstance}    ${attr}
81     ${conIn} =    Location    ${r}
82     Response Is Correct    ${r}
83     #------------- Delete -----------------------------
84     ${deleteRes} =    Delete Resource    ${iserver}    ${conIn}
85     ${status_code} =    Status Code    ${deleteRes}
86     Should Be Equal As Integers    ${status_code}    200
87     # Delete container that does not exist/has been deleted should return error
88     ${error} =    Run Keyword And Expect Error    *    Delete Resource    ${iserver}    ${conIn}
89     Should Start with    ${error}    Cannot delete this resource [404]
90
91 4.15 Delete contentIsntance under InCSE1/Container/container/
92     [Documentation]    Delete contentIsntance under InCSE1/Container/container/
93     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you","rn":"Con3"
94     ${r} =    Create Resource    ${iserver}    InCSE1/Con2    ${rt_container}    ${attr}
95     ${container} =    Location    ${r}
96     Response Is Correct    ${r}
97     ${attr} =    Set Variable    "cnf": "1","or": "http://hey/you","con":"101"
98     ${r} =    Create Resource    ${iserver}    ${container}    ${rt_contentInstance}    ${attr}
99     ${conIn} =    Location    ${r}
100     Response Is Correct    ${r}
101     #------------- Delete -----------------------------
102     ${deleteRes} =    Delete Resource    ${iserver}    ${conIn}
103     ${status_code} =    Status Code    ${deleteRes}
104     Should Be Equal As Integers    ${status_code}    200
105     # Delete container that does not exist/has been deleted should return error
106     ${error} =    Run Keyword And Expect Error    *    Delete Resource    ${iserver}    ${conIn}
107     Should Start with    ${error}    Cannot delete this resource [404]
108     # ============== AE with child container ==================
109
110 4.21 Delete AE with 1 child Container
111     [Documentation]    Delete the AE nmaed AE1 which contains Con1 in the above test
112     ${r} =    Delete Resource    ${iserver}    InCSE1/AE1
113     Response Is Correct    ${r}
114     # Delete container that does not exist/has been deleted should return error
115     ${error} =    Run Keyword And Expect Error    *    Delete Resource    ${iserver}    InCSE1/AE1
116     Should Start with    ${error}    Cannot delete this resource [404]
117     #----------- Make sure cannot retrieve them -----------
118     Cannot Retrieve Error    InCSE1/AE1
119     Cannot Retrieve Error    InCSE1/AE1/Con1
120
121 4.22 Delete AE with 3 child Container
122     [Documentation]    Delete AE with 3 child Container
123     ${attr} =    Set Variable    "api":"jb","apn":"jb2","or":"http://hey/you","rr":true,"rn":"AE1"
124     ${r} =    Create Resource    ${iserver}    InCSE1    ${rt_ae}    ${attr}
125     ${ae} =    Location    ${r}
126     Response Is Correct    ${r}
127     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you","rn":"Con2"
128     ${r} =    Create Resource    ${iserver}    ${ae}    ${rt_container}    ${attr}
129     ${container} =    Location    ${r}
130     Response Is Correct    ${r}
131     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you","rn":"Con3"
132     ${r} =    Create Resource    ${iserver}    ${ae}    ${rt_container}    ${attr}
133     ${container} =    Location    ${r}
134     Response Is Correct    ${r}
135     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you","rn":"Con4"
136     ${r} =    Create Resource    ${iserver}    ${ae}    ${rt_container}    ${attr}
137     ${container} =    Location    ${r}
138     Response Is Correct    ${r}
139     # ----------- Delete the parent AE --------------
140     ${r} =    Delete Resource    ${iserver}    InCSE1/AE1
141     ${status_code} =    Status Code    ${r}
142     Should Be Equal As Integers    ${status_code}    200
143     ${text} =    Text    ${r}
144     LOG    ${text}
145     ${json} =    Json    ${r}
146     LOG    ${json}
147     # Delete the resource that does not exist/has been deleted should return error
148     ${error} =    Run Keyword And Expect Error    *    Delete Resource    ${iserver}    InCSE1/AE1
149     Should Start with    ${error}    Cannot delete this resource [404]
150     #----------- Make sure cannot retrieve them -----------
151     Cannot Retrieve Error    InCSE1/AE1
152     Cannot Retrieve Error    InCSE1/AE1/Con2
153     Cannot Retrieve Error    InCSE1/AE1/Con3
154     Cannot Retrieve Error    InCSE1/AE1/Con4
155
156 4.23 Delete AE with 1 child Container/1 contentInstance
157     [Documentation]    Delete AE with 1 child Container/1 contentInstance
158     ${attr} =    Set Variable    "api":"jb","apn":"jb2","or":"http://hey/you","rr":true,"rn":"AE1"
159     ${r} =    Create Resource    ${iserver}    InCSE1    ${rt_ae}    ${attr}
160     ${ae} =    Location    ${r}
161     Response Is Correct    ${r}
162     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you","rn":"Con2"
163     ${r} =    Create Resource    ${iserver}    ${ae}    ${rt_container}    ${attr}
164     ${container} =    Location    ${r}
165     Response Is Correct    ${r}
166     ${attr} =    Set Variable    "cnf": "1","or": "http://hey/you","con":"101","rn":"conIn1"
167     ${r} =    Create Resource    ${iserver}    ${container}    ${rt_contentInstance}    ${attr}
168     ${name} =    Location    ${r}
169     Response Is Correct    ${r}
170     # ----------- Delete the parent AE --------------
171     ${r} =    Delete Resource    ${iserver}    InCSE1/AE1
172     Response Is Correct    ${r}
173     # Delete the resource that does not exist/has been deleted should return error
174     ${error} =    Run Keyword And Expect Error    *    Delete Resource    ${iserver}    InCSE1/AE1
175     Should Start with    ${error}    Cannot delete this resource [404]
176     #----------- Make sure cannot retrieve all of them -----------
177     Cannot Retrieve Error    InCSE1/AE1
178     Cannot Retrieve Error    InCSE1/AE1/Con2
179     Cannot Retrieve Error    InCSE1/AE1/Con2/conIn1
180
181 4.24 Delete AE with 1 child Container/3 contentInsntace
182     [Documentation]    Delete AE with 1 child Container/3 contentInsntace
183     ${attr} =    Set Variable    "api":"jb","apn":"jb2","or":"http://hey/you","rr":true,"rn":"AE1"
184     ${r} =    Create Resource    ${iserver}    InCSE1    ${rt_ae}    ${attr}
185     ${ae} =    Location    ${r}
186     Response Is Correct    ${r}
187     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you","rn":"Con2"
188     ${r} =    Create Resource    ${iserver}    ${ae}    ${rt_container}    ${attr}
189     ${container} =    Location    ${r}
190     Response Is Correct    ${r}
191     ${attr1} =    Set Variable    "cnf": "1","or": "http://hey/you","con":"101","rn":"conIn1"
192     ${r} =    Create Resource    ${iserver}    ${container}    ${rt_contentInstance}    ${attr1}
193     Response Is Correct    ${r}
194     ${attr2} =    Set Variable    "cnf": "1","or": "http://hey/you","con":"101","rn":"conIn2"
195     ${r} =    Create Resource    ${iserver}    ${container}    ${rt_contentInstance}    ${attr2}
196     Response Is Correct    ${r}
197     ${attr3} =    Set Variable    "cnf": "1","or": "http://hey/you","con":"101","rn":"conIn3"
198     ${r} =    Create Resource    ${iserver}    ${container}    ${rt_contentInstance}    ${attr3}
199     Response Is Correct    ${r}
200     # ----------- Delete the parent AE --------------
201     ${r} =    Delete Resource    ${iserver}    InCSE1/AE1
202     Response Is Correct    ${r}
203     # Delete the resource that does not exist/has been deleted should return error
204     ${error} =    Run Keyword And Expect Error    *    Delete Resource    ${iserver}    InCSE1/AE1
205     Should Start with    ${error}    Cannot delete this resource [404]
206     #----------- Make sure cannot retrieve all of them -----------
207     Cannot Retrieve Error    InCSE1/AE1
208     Cannot Retrieve Error    InCSE1/AE1/Con2
209     Cannot Retrieve Error    InCSE1/AE1/Con2/conIn1
210     Cannot Retrieve Error    InCSE1/AE1/Con2/conIn2
211     Cannot Retrieve Error    InCSE1/AE1/Con2/conIn3
212
213 4.25 Delete AE with 3 child Container/9 contentInstance
214     [Documentation]    Delete AE with 3 child Container/9 contentInstance
215     ${attr} =    Set Variable    "api":"jb","apn":"jb2","or":"http://hey/you","rr":true,"rn":"AE1"
216     ${r} =    Create Resource    ${iserver}    InCSE1    ${rt_ae}    ${attr}
217     ${ae} =    Location    ${r}
218     Response Is Correct    ${r}
219     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you","rn":"Con1"
220     ${r} =    Create Resource    ${iserver}    ${ae}    ${rt_container}    ${attr}
221     ${container1} =    Location    ${r}
222     Response Is Correct    ${r}
223     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you","rn":"Con2"
224     ${r} =    Create Resource    ${iserver}    ${ae}    ${rt_container}    ${attr}
225     ${container2} =    Location    ${r}
226     Response Is Correct    ${r}
227     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you","rn":"Con3"
228     ${r} =    Create Resource    ${iserver}    ${ae}    ${rt_container}    ${attr}
229     ${container3} =    Location    ${r}
230     Response Is Correct    ${r}
231     ${attr} =    Set Variable    "cnf": "1","or": "http://hey/you","con":"101"
232     : FOR    ${conName}    IN    conIn1    conIn2    conIn3
233     \    ${r} =    Create Resource    ${iserver}    ${container1}    ${rt_contentInstance}    ${attr},"rn":${conName}
234     \    Response Is Correct    ${r}
235     : FOR    ${conName}    IN    conIn1    conIn2    conIn3
236     \    ${r} =    Create Resource    ${iserver}    ${container2}    ${rt_contentInstance}    ${attr},"rn":${conName}
237     \    Response Is Correct    ${r}
238     : FOR    ${conName}    IN    conIn1    conIn2    conIn3
239     \    ${r} =    Create Resource    ${iserver}    ${container3}    ${rt_contentInstance}    ${attr},"rn":${conName}
240     \    Response Is Correct    ${r}
241     # ----------- Delete the parent AE --------------
242     ${r} =    Delete Resource    ${iserver}    InCSE1/AE1
243     Response Is Correct    ${r}
244     # Delete the resource that does not exist/has been deleted should return error
245     ${error} =    Run Keyword And Expect Error    *    Delete Resource    ${iserver}    InCSE1/AE1
246     Should Start with    ${error}    Cannot delete this resource [404]
247     #----------- Make sure cannot retrieve them -----------
248     Cannot Retrieve Error    InCSE1/AE1
249     Cannot Retrieve Error    InCSE1/AE1/Con1
250     Cannot Retrieve Error    InCSE1/AE1/Con2
251     Cannot Retrieve Error    InCSE1/AE1/Con3
252     Cannot Retrieve Error    InCSE1/AE1/Con1/conIn1
253     Cannot Retrieve Error    InCSE1/AE1/Con1/conIn2
254     Cannot Retrieve Error    InCSE1/AE1/Con1/conIn3
255     Cannot Retrieve Error    InCSE1/AE1/Con2/conIn1
256     Cannot Retrieve Error    InCSE1/AE1/Con2/conIn2
257     Cannot Retrieve Error    InCSE1/AE1/Con2/conIn3
258     Cannot Retrieve Error    InCSE1/AE1/Con3/conIn1
259     Cannot Retrieve Error    InCSE1/AE1/Con3/conIn2
260     Cannot Retrieve Error    InCSE1/AE1/Con3/conIn3
261     # ================ Container with child container ==================
262
263 4.31 Delete Container with 1 child Container
264     [Documentation]    Delete the Container nmaed Con2 which contains Con3 in the above test
265     ${r} =    Delete Resource    ${iserver}    InCSE1/Con2
266     Response Is Correct    ${r}
267     # Delete container that does not exist/has been deleted should return error
268     ${error} =    Run Keyword And Expect Error    *    Delete Resource    ${iserver}    InCSE1/Con2
269     Should Start with    ${error}    Cannot delete this resource [404]
270     #----------- Make sure cannot retrieve them -----------
271     Cannot Retrieve Error    InCSE1/Con2
272     Cannot Retrieve Error    InCSE1/Con2/Con3
273
274 4.32 Delete Container with 3 child Container
275     [Documentation]    Delete Container with 3 child Container
276     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you"
277     ${r} =    Create Resource    ${iserver}    InCSE1    ${rt_container}    ${attr},"rn":"ConTop1"
278     ${container} =    Location    ${r}
279     Response Is Correct    ${r}
280     ${r} =    Create Resource    ${iserver}    ${container}    ${rt_container}    ${attr},"rn":"Con1"
281     ${container1} =    Location    ${r}
282     Response Is Correct    ${r}
283     ${r} =    Create Resource    ${iserver}    ${container}    ${rt_container}    ${attr},"rn":"Con2"
284     ${container2} =    Location    ${r}
285     Response Is Correct    ${r}
286     ${r} =    Create Resource    ${iserver}    ${container}    ${rt_container}    ${attr},"rn":"Con3"
287     ${container3} =    Location    ${r}
288     Response Is Correct    ${r}
289     # ----------- Delete the parent Container --------------
290     ${r} =    Delete Resource    ${iserver}    InCSE1/ConTop1
291     Response Is Correct    ${r}
292     # Delete the resource that does not exist/has been deleted should return error
293     ${error} =    Run Keyword And Expect Error    *    Delete Resource    ${iserver}    InCSE1/Contop1
294     Should Start with    ${error}    Cannot delete this resource [404]
295     #----------- Make sure cannot retrieve them -----------
296     Cannot Retrieve Error    InCSE1/Contop1
297     Cannot Retrieve Error    InCSE1/Contop1/Con1
298     Cannot Retrieve Error    InCSE1/Contop1/Con2
299     Cannot Retrieve Error    InCSE1/Contop1/Con3
300
301 4.33 Delete Container with 1 child Container/1 contentInstance
302     [Documentation]    Delete Container with 1 child Container/1 contentInstance
303     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you","rn":"Con1"
304     ${r} =    Create Resource    ${iserver}    InCSE1    ${rt_container}    ${attr}
305     ${con} =    Location    ${r}
306     Response Is Correct    ${r}
307     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you","rn":"Con2"
308     ${r} =    Create Resource    ${iserver}    ${con}    ${rt_container}    ${attr}
309     ${container} =    Location    ${r}
310     Response Is Correct    ${r}
311     ${attr} =    Set Variable    "cnf": "1","or": "http://hey/you","con":"101","rn":"conIn1"
312     ${r} =    Create Resource    ${iserver}    ${container}    ${rt_contentInstance}    ${attr}
313     ${name} =    Location    ${r}
314     Response Is Correct    ${r}
315     # ----------- Delete the parent Container --------------
316     ${r} =    Delete Resource    ${iserver}    InCSE1/Con1
317     Response Is Correct    ${r}
318     # Delete the resource that does not exist/has been deleted should return error
319     ${error} =    Run Keyword And Expect Error    *    Delete Resource    ${iserver}    InCSE1/Con1
320     Should Start with    ${error}    Cannot delete this resource [404]
321     #----------- Make sure cannot retrieve all of them -----------
322     Cannot Retrieve Error    InCSE1/Con1
323     Cannot Retrieve Error    InCSE1/Con1/Con2
324     Cannot Retrieve Error    InCSE1/Con1/Con2/conIn1
325
326 4.34 Delete Container with 1 child Container/3 contentInsntace
327     [Documentation]    Delete Container with 1 child Container/3 contentInsntace
328     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you","rn":"Con1"
329     ${r} =    Create Resource    ${iserver}    InCSE1    ${rt_container}    ${attr}
330     ${con} =    Location    ${r}
331     Response Is Correct    ${r}
332     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you","rn":"Con2"
333     ${r} =    Create Resource    ${iserver}    ${con}    ${rt_container}    ${attr}
334     ${container} =    Location    ${r}
335     Response Is Correct    ${r}
336     ${attr} =    Set Variable    "cnf": "1","or": "http://hey/you","con":"101"
337     ${r} =    Create Resource    ${iserver}    ${container}    ${rt_contentInstance}    ${attr},"rn":"conIn1"
338     Response Is Correct    ${r}
339     ${r} =    Create Resource    ${iserver}    ${container}    ${rt_contentInstance}    ${attr},"rn":"conIn2"
340     Response Is Correct    ${r}
341     ${r} =    Create Resource    ${iserver}    ${container}    ${rt_contentInstance}    ${attr},"rn":"conIn3"
342     Response Is Correct    ${r}
343     # ----------- Delete the parent Container --------------
344     ${r} =    Delete Resource    ${iserver}    InCSE1/Con1
345     Response Is Correct    ${r}
346     # Delete the resource that does not exist/has been deleted should return error
347     ${error} =    Run Keyword And Expect Error    *    Delete Resource    ${iserver}    InCSE1/Con1
348     Should Start with    ${error}    Cannot delete this resource [404]
349     #----------- Make sure cannot retrieve all of them -----------
350     Cannot Retrieve Error    InCSE1/Con1
351     Cannot Retrieve Error    InCSE1/Con1/Con1/conIn2
352     Cannot Retrieve Error    InCSE1/Con1/Con2/conIn1
353     Cannot Retrieve Error    InCSE1/Con1/Con2/conIn2
354     Cannot Retrieve Error    InCSE1/Con1/Con2/conIn3
355
356 4.35 Delete Container with 3 child Container/9 contentInstance
357     [Documentation]    Delete Container with 3 child Container/9 contentInstance
358     ${attr} =    Set Variable    "cr":null,"mni":5,"mbs":15,"or":"http://hey/you"
359     ${r} =    Create Resource    ${iserver}    InCSE1    ${rt_container}    ${attr},"rn":"Con1"
360     ${con} =    Location    ${r}
361     Response Is Correct    ${r}
362     ${r} =    Create Resource    ${iserver}    ${con}    ${rt_container}    ${attr},"rn":"Con2"
363     ${container1} =    Location    ${r}
364     Response Is Correct    ${r}
365     ${r} =    Create Resource    ${iserver}    ${con}    ${rt_container}    ${attr},"rn":"Con3"
366     ${container2} =    Location    ${r}
367     Response Is Correct    ${r}
368     ${r} =    Create Resource    ${iserver}    ${con}    ${rt_container}    ${attr},"rn":"Con4"
369     ${container3} =    Location    ${r}
370     Response Is Correct    ${r}
371     ${attr} =    Set Variable    "cnf": "1","or": "http://hey/you","con":"101"
372     : FOR    ${conName}    IN    conIn1    conIn2    conIn3
373     \    ${r} =    Create Resource    ${iserver}    ${container1}    ${rt_contentInstance}    ${attr},"rn":${conName}
374     \    Response Is Correct    ${r}
375     : FOR    ${conName}    IN    conIn1    conIn2    conIn3
376     \    ${r} =    Create Resource    ${iserver}    ${container2}    ${rt_contentInstance}    ${attr},"rn":${conName}
377     \    Response Is Correct    ${r}
378     : FOR    ${conName}    IN    conIn1    conIn2    conIn3
379     \    ${r} =    Create Resource    ${iserver}    ${container3}    ${rt_contentInstance}    ${attr},"rn":${conName}
380     \    Response Is Correct    ${r}
381     # ----------- Delete the parent Container --------------
382     ${r} =    Delete Resource    ${iserver}    InCSE1/Con1
383     Response Is Correct    ${r}
384     # Delete the resource that does not exist/has been deleted should return error
385     ${error} =    Run Keyword And Expect Error    *    Delete Resource    ${iserver}    InCSE1/Con1
386     Should Start with    ${error}    Cannot delete this resource [404]
387     #----------- Make sure cannot retrieve them -----------
388     Cannot Retrieve Error    InCSE1/Con1
389     Cannot Retrieve Error    InCSE1/Con1/Con2
390     Cannot Retrieve Error    InCSE1/Con1/Con3
391     Cannot Retrieve Error    InCSE1/Con1/Con4
392     Cannot Retrieve Error    InCSE1/Con1/Con2/conIn1
393     Cannot Retrieve Error    InCSE1/Con1/Con2/conIn2
394     Cannot Retrieve Error    InCSE1/Con1/Con2/conIn3
395     Cannot Retrieve Error    InCSE1/Con1/Con3/conIn1
396     Cannot Retrieve Error    InCSE1/Con1/Con3/conIn2
397     Cannot Retrieve Error    InCSE1/Con1/Con3/conIn3
398     Cannot Retrieve Error    InCSE1/Con1/Con4/conIn1
399     Cannot Retrieve Error    InCSE1/Con1/Con4/conIn2
400     Cannot Retrieve Error    InCSE1/Con1/Con4/conIn3
401
402 *** Keywords ***
403 Response Is Correct
404     [Arguments]    ${r}
405     ${text} =    Text    ${r}
406     LOG    ${text}
407     ${json} =    Json    ${r}
408     LOG    ${json}
409     ${status_code} =    Status Code    ${r}
410     Should Be True    199 < ${status_code} < 299
411
412
413 Cannot Retrieve Error
414     [Arguments]    ${uri}
415     ${error} =    Run Keyword And Expect Error    *    Retrieve Resource    ${iserver}    ${uri}
416     Should Start with    ${error}    Cannot retrieve this resource [404]