Updated test of info-types
[nonrtric.git] / test / auto-test / FTC1100.sh
1 #!/bin/bash
2
3 #  ============LICENSE_START===============================================
4 #  Copyright (C) 2020 Nordix Foundation. All rights reserved.
5 #  ========================================================================
6 #  Licensed under the Apache License, Version 2.0 (the "License");
7 #  you may not use this file except in compliance with the License.
8 #  You may obtain a copy of the License at
9 #
10 #       http://www.apache.org/licenses/LICENSE-2.0
11 #
12 #  Unless required by applicable law or agreed to in writing, software
13 #  distributed under the License is distributed on an "AS IS" BASIS,
14 #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 #  See the License for the specific language governing permissions and
16 #  limitations under the License.
17 #  ============LICENSE_END=================================================
18 #
19
20
21 TC_ONELINE_DESCR="ECS full interfaces walkthrough"
22
23 #App names to include in the test when running docker, space separated list
24 DOCKER_INCLUDED_IMAGES="ECS PRODSTUB CR RICSIM CP HTTPPROXY NGW"
25
26 #App names to include in the test when running kubernetes, space separated list
27 KUBE_INCLUDED_IMAGES="PRODSTUB CR ECS RICSIM CP HTTPPROXY KUBEPROXY NGW"
28 #Prestarted app (not started by script) to include in the test when running kubernetes, space separated list
29 KUBE_PRESTARTED_IMAGES=""
30
31 #Ignore image in DOCKER_INCLUDED_IMAGES, KUBE_INCLUDED_IMAGES if
32 #the image is not configured in the supplied env_file
33 #Used for images not applicable to all supported profile
34 CONDITIONALLY_IGNORED_IMAGES="NGW"
35
36 #Supported test environment profiles
37 SUPPORTED_PROFILES="ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-RELEASE"
38 #Supported run modes
39 SUPPORTED_RUNMODES="DOCKER KUBE"
40
41 . ../common/testcase_common.sh  $@
42 . ../common/ecs_api_functions.sh
43 . ../common/prodstub_api_functions.sh
44 . ../common/cr_api_functions.sh
45 . ../common/control_panel_api_functions.sh
46 . ../common/controller_api_functions.sh
47 . ../common/ricsimulator_api_functions.sh
48 . ../common/http_proxy_api_functions.sh
49 . ../common/kube_proxy_api_functions.sh
50 . ../common/gateway_api_functions.sh
51
52 setup_testenvironment
53
54 #### TEST BEGIN ####
55
56 FLAT_A1_EI="1"
57
58 clean_environment
59
60 if [ $RUNMODE == "KUBE" ]; then
61     start_kube_proxy
62 fi
63
64 use_ecs_rest_https
65
66 use_prod_stub_https
67
68 use_simulator_https
69
70 use_cr_https
71
72 start_http_proxy
73
74 start_ecs NOPROXY $SIM_GROUP/$ECS_COMPOSE_DIR/$ECS_CONFIG_FILE  #Change NOPROXY to PROXY to run with http proxy
75
76 if [ $RUNMODE == "KUBE" ]; then
77     ecs_api_admin_reset
78 fi
79
80 start_prod_stub
81
82 set_ecs_debug
83
84 start_control_panel $SIM_GROUP/$CONTROL_PANEL_COMPOSE_DIR/$CONTROL_PANEL_CONFIG_FILE
85
86 if [ ! -z "$NRT_GATEWAY_APP_NAME" ]; then
87     start_gateway $SIM_GROUP/$NRT_GATEWAY_COMPOSE_DIR/$NRT_GATEWAY_CONFIG_FILE
88 fi
89
90 if [ "$PMS_VERSION" == "V2" ]; then
91     start_ric_simulators ricsim_g3 4  STD_2.0.0
92 fi
93
94 start_cr
95
96 CB_JOB="$PROD_STUB_SERVICE_PATH$PROD_STUB_JOB_CALLBACK"
97 CB_SV="$PROD_STUB_SERVICE_PATH$PROD_STUB_SUPERVISION_CALLBACK"
98 #Targets for ei jobs
99 TARGET1="$RIC_SIM_HTTPX://ricsim_g3_1:$RIC_SIM_PORT/datadelivery"
100 TARGET2="$RIC_SIM_HTTPX://ricsim_g3_2:$RIC_SIM_PORT/datadelivery"
101 TARGET3="$RIC_SIM_HTTPX://ricsim_g3_3:$RIC_SIM_PORT/datadelivery"
102 TARGET8="$RIC_SIM_HTTPX://ricsim_g3_4:$RIC_SIM_PORT/datadelivery"
103 TARGET10="$RIC_SIM_HTTPX://ricsim_g3_4:$RIC_SIM_PORT/datadelivery"
104
105 #Targets for info jobs
106 TARGET101="http://localhost:80/target"  # Dummy target, no target for info data in this env...
107 TARGET102="http://localhost:80/target"  # Dummy target, no target for info data in this env...
108 TARGET103="http://localhost:80/target"  # Dummy target, no target for info data in this env...
109 TARGET108="http://localhost:80/target"  # Dummy target, no target for info data in this env...
110 TARGET110="http://localhost:80/target"  # Dummy target, no target for info data in this env...
111 TARGET150="http://localhost:80/target"  # Dummy target, no target for info data in this env...
112 TARGET160="http://localhost:80/target"  # Dummy target, no target for info data in this env...
113
114 #Status callbacks for eijobs
115 STATUS1="$CR_SERVICE_PATH/job1-status"
116 STATUS2="$CR_SERVICE_PATH/job2-status"
117 STATUS3="$CR_SERVICE_PATH/job3-status"
118 STATUS8="$CR_SERVICE_PATH/job8-status"
119 STATUS10="$CR_SERVICE_PATH/job10-status"
120
121 #Status callbacks for infojobs
122 INFOSTATUS101="$CR_SERVICE_PATH/info-job101-status"
123 INFOSTATUS102="$CR_SERVICE_PATH/info-job102-status"
124 INFOSTATUS103="$CR_SERVICE_PATH/info-job103-status"
125 INFOSTATUS108="$CR_SERVICE_PATH/info-job108-status"
126 INFOSTATUS110="$CR_SERVICE_PATH/info-job110-status"
127 INFOSTATUS150="$CR_SERVICE_PATH/info-job150-status"
128 INFOSTATUS160="$CR_SERVICE_PATH/info-job160-status"
129
130 ### Setup prodstub sim to accept calls for producers, types and jobs
131 ## prod-a type1
132 ## prod-b type1 and type2
133 ## prod-c no-type
134 ## prod-d type4
135 ## prod-e type6
136 ## prod-f type6
137
138 ## job1 -> prod-a
139 ## job2 -> prod-a
140 ## job3 -> prod-b
141 ## job4 -> prod-a
142 ## job6 -> prod-b
143 ## job8 -> prod-d
144 ## job10 -> prod-e and prod-f
145
146 prodstub_arm_producer 200 prod-a
147 prodstub_arm_producer 200 prod-b
148 prodstub_arm_producer 200 prod-c
149 prodstub_arm_producer 200 prod-d
150 prodstub_arm_producer 200 prod-e
151 prodstub_arm_producer 200 prod-f
152
153 prodstub_arm_type 200 prod-a type1
154 prodstub_arm_type 200 prod-b type2
155 prodstub_arm_type 200 prod-b type3
156 prodstub_arm_type 200 prod-d type4
157 prodstub_arm_type 200 prod-e type6
158 prodstub_arm_type 200 prod-f type6
159
160 prodstub_disarm_type 200 prod-b type3
161 prodstub_arm_type 200 prod-b type1
162 prodstub_disarm_type 200 prod-b type1
163
164
165 prodstub_arm_job_create 200 prod-a job1
166 prodstub_arm_job_create 200 prod-a job2
167 prodstub_arm_job_create 200 prod-b job3
168
169 prodstub_arm_job_delete 200 prod-a job1
170 prodstub_arm_job_delete 200 prod-a job2
171 prodstub_arm_job_delete 200 prod-b job3
172
173 prodstub_arm_job_create 200 prod-b job4
174 prodstub_arm_job_create 200 prod-a job4
175
176 prodstub_arm_job_create 200 prod-b job6
177
178 prodstub_arm_job_create 200 prod-d job8
179
180 prodstub_arm_job_create 200 prod-e job10
181 prodstub_arm_job_create 200 prod-f job10
182
183 ### ecs status
184 ecs_api_service_status 200
185
186 cr_equal received_callbacks 0
187
188 ### Initial tests - no config made
189 ### GET: type ids, types, producer ids, producers, job ids, jobs
190 ### DELETE: jobs
191 ecs_api_a1_get_type_ids 200 EMPTY
192 ecs_api_a1_get_type 404 test-type
193
194 ecs_api_edp_get_type_ids 200 EMPTY
195 if [ $ECS_VERSION == "V1-1" ]; then
196     ecs_api_edp_get_type 404 test-type
197 else
198     ecs_api_edp_get_type_2 404 test-type
199 fi
200
201 if [ $ECS_VERSION == "V1-1" ]; then
202     ecs_api_edp_get_producer_ids 200 EMPTY
203     ecs_api_edp_get_producer 404 test-prod
204 else
205     ecs_api_edp_get_producer_ids_2 200 NOTYPE EMPTY
206     ecs_api_edp_get_producer_2 404 test-prod
207 fi
208 ecs_api_edp_get_producer_status 404 test-prod
209
210 ecs_api_edp_delete_producer 404 test-prod
211
212 if [  -z "$FLAT_A1_EI" ]; then
213     ecs_api_a1_get_job_ids 404 test-type NOWNER
214     ecs_api_a1_get_job_ids 404 test-type test-owner
215
216     ecs_api_a1_get_job 404 test-type test-job
217
218     ecs_api_a1_get_job_status 404 test-type test-job
219 else
220     ecs_api_a1_get_job_ids 200 test-type NOWNER EMPTY
221     ecs_api_a1_get_job_ids 200 test-type test-owner EMPTY
222
223     ecs_api_a1_get_job 404 test-job
224
225     ecs_api_a1_get_job_status 404 test-job
226 fi
227
228 if [  -z "$FLAT_A1_EI" ]; then
229     ecs_api_a1_delete_job 404 test-type test-job
230 else
231     ecs_api_a1_delete_job 404 test-job
232 fi
233
234 if [ $ECS_VERSION == "V1-1" ]; then
235     ecs_api_edp_get_producer_jobs 404 test-prod
236 else
237     ecs_api_edp_get_producer_jobs_2 404 test-prod
238 fi
239
240 if [ $ECS_VERSION == "V1-2" ]; then
241     ecs_api_edp_get_type_2 404 test-type
242     ecs_api_edp_delete_type_2 404 test-type
243 fi
244
245 ### Setup of producer/job and testing apis ###
246
247 ## Setup prod-a
248 if [ $ECS_VERSION == "V1-1" ]; then
249     ecs_api_edp_put_producer 201 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
250     ecs_api_edp_put_producer 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
251 else
252     #V1-2
253     ecs_api_edp_get_type_ids 200 EMPTY
254     ecs_api_edp_get_type_2 404 type1
255     ecs_api_edp_put_producer_2 404 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
256
257     # Create type, delete and create again
258     ecs_api_edp_put_type_2 201 type1 testdata/ecs/ei-type-1.json
259     ecs_api_edp_get_type_2 200 type1
260     ecs_api_edp_get_type_ids 200 type1
261     ecs_api_edp_delete_type_2 204 type1
262     ecs_api_edp_get_type_2 404 type1
263     ecs_api_edp_get_type_ids 200 EMPTY
264     ecs_api_edp_put_type_2 201 type1 testdata/ecs/ei-type-1.json
265     ecs_api_edp_get_type_ids 200 type1
266     ecs_api_edp_get_type_2 200 type1 testdata/ecs/ei-type-1.json
267
268     ecs_api_edp_put_producer_2 201 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
269     ecs_api_edp_put_producer_2 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
270
271     ecs_api_edp_delete_type_2 406 type1
272 fi
273
274
275 ecs_api_a1_get_type_ids 200 type1
276 if [  -z "$FLAT_A1_EI" ]; then
277     ecs_api_a1_get_type 200 type1 testdata/ecs/ei-type-1.json
278 else
279     ecs_api_a1_get_type 200 type1 testdata/ecs/empty-type.json
280 fi
281
282 ecs_api_edp_get_type_ids 200 type1
283 if [ $ECS_VERSION == "V1-1" ]; then
284     ecs_api_edp_get_type 200 type1 testdata/ecs/ei-type-1.json prod-a
285 else
286     ecs_api_edp_get_type_2 200 type1 testdata/ecs/ei-type-1.json
287 fi
288
289 if [ $ECS_VERSION == "V1-1" ]; then
290     ecs_api_edp_get_producer_ids 200 prod-a
291 else
292     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a
293     ecs_api_edp_get_producer_ids_2 200 type1 prod-a
294     ecs_api_edp_get_producer_ids_2 200 type2 EMPTY
295 fi
296
297 if [ $ECS_VERSION == "V1-1" ]; then
298     ecs_api_edp_get_producer 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
299 else
300     ecs_api_edp_get_producer_2 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
301 fi
302
303 ecs_api_edp_get_producer_status 200 prod-a ENABLED
304
305 ecs_api_a1_get_job_ids 200 type1 NOWNER EMPTY
306 ecs_api_a1_get_job_ids 200 type1 test-owner EMPTY
307
308 if [  -z "$FLAT_A1_EI" ]; then
309     ecs_api_a1_get_job 404 type1 test-job
310
311     ecs_api_a1_get_job_status 404 type1 test-job
312 else
313     ecs_api_a1_get_job 404 test-job
314
315     ecs_api_a1_get_job_status 404 test-job
316 fi
317 if [ $ECS_VERSION == "V1-1" ]; then
318     ecs_api_edp_get_producer_jobs 200 prod-a EMPTY
319 else
320     ecs_api_edp_get_producer_jobs_2 200 prod-a EMPTY
321 fi
322
323 ## Create a job for prod-a
324 ## job1 - prod-a
325 if [  -z "$FLAT_A1_EI" ]; then
326     ecs_api_a1_put_job 201 type1 job1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
327 else
328     ecs_api_a1_put_job 201 job1 type1 $TARGET1 ricsim_g3_1 $STATUS1 testdata/ecs/job-template.json
329 fi
330
331 # Check the job data in the producer
332 if [ $ECS_VERSION == "V1-1" ]; then
333     prodstub_check_jobdata 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
334 else
335     prodstub_check_jobdata_2 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
336 fi
337
338 ecs_api_a1_get_job_ids 200 type1 NOWNER job1
339 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_1 job1
340
341 if [ ! -z "$FLAT_A1_EI" ]; then
342     ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1
343 fi
344
345 if [  -z "$FLAT_A1_EI" ]; then
346     ecs_api_a1_get_job 200 type1 job1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
347
348     ecs_api_a1_get_job_status 200 type1 job1 ENABLED
349 else
350     ecs_api_a1_get_job 200 job1 type1 $TARGET1 ricsim_g3_1 $STATUS1 testdata/ecs/job-template.json
351
352     ecs_api_a1_get_job_status 200 job1 ENABLED
353 fi
354
355 prodstub_equal create/prod-a/job1 1
356
357 if [ $ECS_VERSION == "V1-1" ]; then
358     ecs_api_edp_get_producer_jobs 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
359 else
360     ecs_api_edp_get_producer_jobs_2 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
361 fi
362
363 ## Create a second job for prod-a
364 ## job2 - prod-a
365 if [  -z "$FLAT_A1_EI" ]; then
366     ecs_api_a1_put_job 201 type1 job2 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
367 else
368     ecs_api_a1_put_job 201 job2 type1 $TARGET2 ricsim_g3_2 $STATUS2 testdata/ecs/job-template.json
369 fi
370
371 # Check the job data in the producer
372 if [ $ECS_VERSION == "V1-1" ]; then
373     prodstub_check_jobdata 200 prod-a job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
374 else
375     prodstub_check_jobdata_2 200 prod-a job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
376 fi
377 ecs_api_a1_get_job_ids 200 type1 NOWNER job1 job2
378 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_1 job1
379 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_2 job2
380 if [ ! -z "$FLAT_A1_EI" ]; then
381     ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2
382 fi
383
384 if [  -z "$FLAT_A1_EI" ]; then
385     ecs_api_a1_get_job 200 type1 job2 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
386
387     ecs_api_a1_get_job_status 200 type1 job2 ENABLED
388 else
389     ecs_api_a1_get_job 200 job2 type1 $TARGET2 ricsim_g3_2 $STATUS2 testdata/ecs/job-template.json
390
391     ecs_api_a1_get_job_status 200 job2 ENABLED
392 fi
393
394 prodstub_equal create/prod-a/job2 1
395
396 if [ $ECS_VERSION == "V1-1" ]; then
397     ecs_api_edp_get_producer_jobs 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
398 else
399     ecs_api_edp_get_producer_jobs_2 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
400 fi
401
402 ## Setup prod-b
403 if [ $ECS_VERSION == "V1-1" ]; then
404     ecs_api_edp_put_producer 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2 testdata/ecs/ei-type-2.json
405 else
406     ecs_api_edp_put_type_2 201 type2 testdata/ecs/ei-type-2.json
407     ecs_api_edp_put_producer_2 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2
408 fi
409
410
411 ecs_api_a1_get_type_ids 200 type1 type2
412 if [  -z "$FLAT_A1_EI" ]; then
413     ecs_api_a1_get_type 200 type1 testdata/ecs/ei-type-1.json
414     ecs_api_a1_get_type 200 type2 testdata/ecs/ei-type-2.json
415 else
416     ecs_api_a1_get_type 200 type1 testdata/ecs/empty-type.json
417     ecs_api_a1_get_type 200 type2 testdata/ecs/empty-type.json
418 fi
419
420 ecs_api_edp_get_type_ids 200 type1 type2
421 if [ $ECS_VERSION == "V1-1" ]; then
422     ecs_api_edp_get_type 200 type1 testdata/ecs/ei-type-1.json prod-a
423     ecs_api_edp_get_type 200 type2 testdata/ecs/ei-type-2.json prod-b
424 else
425     ecs_api_edp_get_type_2 200 type1 testdata/ecs/ei-type-1.json
426     ecs_api_edp_get_type_2 200 type2 testdata/ecs/ei-type-2.json
427 fi
428
429 if [ $ECS_VERSION == "V1-1" ]; then
430     ecs_api_edp_get_producer_ids 200 prod-a prod-b
431 else
432     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b
433 fi
434
435 if [ $ECS_VERSION == "V1-1" ]; then
436     ecs_api_edp_get_producer 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
437     ecs_api_edp_get_producer 200 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2 testdata/ecs/ei-type-2.json
438 else
439     ecs_api_edp_get_producer_2 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
440     ecs_api_edp_get_producer_2 200 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2
441 fi
442
443 ecs_api_edp_get_producer_status 200 prod-b ENABLED
444
445 ## Create job for prod-b
446 ##  job3 - prod-b
447 if [  -z "$FLAT_A1_EI" ]; then
448     ecs_api_a1_put_job 201 type2 job3 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
449 else
450     ecs_api_a1_put_job 201 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template.json
451 fi
452
453 prodstub_equal create/prod-b/job3 1
454
455 # Check the job data in the producer
456 if [ $ECS_VERSION == "V1-1" ]; then
457     prodstub_check_jobdata 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
458 else
459     prodstub_check_jobdata_2 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
460 fi
461
462 ecs_api_a1_get_job_ids 200 type1 NOWNER job1 job2
463 ecs_api_a1_get_job_ids 200 type2 NOWNER job3
464 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_1 job1
465 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_2 job2
466 ecs_api_a1_get_job_ids 200 type2 ricsim_g3_3 job3
467
468 if [  -z "$FLAT_A1_EI" ]; then
469     ecs_api_a1_get_job 200 type2 job3 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
470
471     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
472 else
473     ecs_api_a1_get_job 200 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template.json
474
475     ecs_api_a1_get_job_status 200 job3 ENABLED
476 fi
477
478 if [ $ECS_VERSION == "V1-1" ]; then
479     ecs_api_edp_get_producer_jobs 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
480     ecs_api_edp_get_producer_jobs 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
481 else
482     ecs_api_edp_get_producer_jobs_2 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
483     ecs_api_edp_get_producer_jobs_2 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
484 fi
485
486 ## Setup prod-c (no types)
487 if [ $ECS_VERSION == "V1-1" ]; then
488     ecs_api_edp_put_producer 201 prod-c $CB_JOB/prod-c $CB_SV/prod-c NOTYPE
489 else
490     ecs_api_edp_put_producer_2 201 prod-c $CB_JOB/prod-c $CB_SV/prod-c NOTYPE
491 fi
492
493 if [ $ECS_VERSION == "V1-1" ]; then
494     ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c
495 else
496     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c
497 fi
498
499 if [ $ECS_VERSION == "V1-1" ]; then
500     ecs_api_edp_get_producer 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
501     ecs_api_edp_get_producer 200 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2 testdata/ecs/ei-type-2.json
502     ecs_api_edp_get_producer 200 prod-c $CB_JOB/prod-c $CB_SV/prod-c EMPTY
503 else
504     ecs_api_edp_get_producer_2 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
505     ecs_api_edp_get_producer_2 200 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2
506     ecs_api_edp_get_producer_2 200 prod-c $CB_JOB/prod-c $CB_SV/prod-c EMPTY
507 fi
508
509 ecs_api_edp_get_producer_status 200 prod-c ENABLED
510
511
512 ## Delete job3 and prod-b and re-create if different order
513
514 # Delete job then producer
515 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2 job3
516 if [ $ECS_VERSION == "V1-1" ]; then
517     ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c
518 else
519     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c
520 fi
521
522 if [  -z "$FLAT_A1_EI" ]; then
523     ecs_api_a1_delete_job 204 type2 job3
524 else
525     ecs_api_a1_delete_job 204 job3
526 fi
527
528 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2
529 if [ $ECS_VERSION == "V1-1" ]; then
530     ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c
531 else
532     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c
533 fi
534
535 ecs_api_edp_delete_producer 204 prod-b
536
537 ecs_api_edp_get_producer_status 404 prod-b
538
539 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2
540 if [ $ECS_VERSION == "V1-1" ]; then
541     ecs_api_edp_get_producer_ids 200 prod-a prod-c
542 else
543     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-c
544 fi
545
546 prodstub_equal delete/prod-b/job3 1
547
548 if [  -z "$FLAT_A1_EI" ]; then
549     ecs_api_a1_put_job 404 type2 job3 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
550 else
551     if [ $ECS_VERSION == "V1-1" ]; then
552         ecs_api_a1_put_job 404 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template.json
553     else
554         ecs_api_a1_put_job 201 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template.json
555         ecs_api_a1_get_job_status 200 job3 DISABLED
556     fi
557 fi
558
559 # Put producer then job
560 if [ $ECS_VERSION == "V1-1" ]; then
561     ecs_api_edp_put_producer 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2 testdata/ecs/ei-type-2.json
562 else
563     ecs_api_edp_put_producer_2 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2
564 fi
565
566 ecs_api_edp_get_producer_status 200 prod-b ENABLED
567
568 if [  -z "$FLAT_A1_EI" ]; then
569     ecs_api_a1_put_job 201 type2 job3 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
570     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
571 else
572     if [ $ECS_VERSION == "V1-1" ]; then
573         ecs_api_a1_put_job 201 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template2.json
574     else
575         ecs_api_a1_put_job 200 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template2.json
576     fi
577     ecs_api_a1_get_job_status 200 job3 ENABLED
578 fi
579
580 if [ $ECS_VERSION == "V1-1" ]; then
581     prodstub_check_jobdata 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
582 else
583     prodstub_check_jobdata_2 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
584 fi
585
586 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2 job3
587 if [ $ECS_VERSION == "V1-1" ]; then
588     ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c
589 else
590     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c
591 fi
592
593 if [ $ECS_VERSION == "V1-1" ]; then
594     prodstub_equal create/prod-b/job3 2
595 else
596     prodstub_equal create/prod-b/job3 3
597 fi
598 prodstub_equal delete/prod-b/job3 1
599
600 # Delete only the producer
601 ecs_api_edp_delete_producer 204 prod-b
602
603 ecs_api_edp_get_producer_status 404 prod-b
604
605 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2 job3
606 if [ $ECS_VERSION == "V1-1" ]; then
607     ecs_api_edp_get_producer_ids 200 prod-a prod-c
608 else
609     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-c
610 fi
611
612 if [  -z "$FLAT_A1_EI" ]; then
613     ecs_api_a1_get_job_status 200 type2 job3 DISABLED
614 else
615     ecs_api_a1_get_job_status 200 job3 DISABLED
616 fi
617
618 cr_equal received_callbacks 1 30
619 cr_equal received_callbacks?id=job3-status 1
620 cr_api_check_all_ecs_events 200 job3-status DISABLED
621
622 # Re-create the producer
623 if [ $ECS_VERSION == "V1-1" ]; then
624     ecs_api_edp_put_producer 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2 testdata/ecs/ei-type-2.json
625 else
626     ecs_api_edp_put_producer_2 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2
627 fi
628
629 ecs_api_edp_get_producer_status 200 prod-b ENABLED
630
631 if [  -z "$FLAT_A1_EI" ]; then
632     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
633 else
634     ecs_api_a1_get_job_status 200 job3 ENABLED
635 fi
636
637 cr_equal received_callbacks 2 30
638 cr_equal received_callbacks?id=job3-status 2
639 cr_api_check_all_ecs_events 200 job3-status ENABLED
640
641 if [ $ECS_VERSION == "V1-1" ]; then
642     prodstub_check_jobdata 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
643 else
644     prodstub_check_jobdata_2 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
645 fi
646
647 ## Setup prod-d
648 if [ $ECS_VERSION == "V1-1" ]; then
649     ecs_api_edp_put_producer 201 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4 testdata/ecs/ei-type-4.json
650 else
651     ecs_api_edp_put_type_2 201 type4 testdata/ecs/ei-type-1.json
652     ecs_api_edp_put_producer_2 201 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4
653 fi
654
655 ecs_api_a1_get_job_ids 200 type4 NOWNER EMPTY
656
657 if [  -z "$FLAT_A1_EI" ]; then
658     ecs_api_a1_put_job 201 type4 job8 $TARGET8 ricsim_g3_4 testdata/ecs/job-template.json
659 else
660     ecs_api_a1_put_job 201 job8 type4 $TARGET8 ricsim_g3_4 $STATUS8 testdata/ecs/job-template.json
661 fi
662
663 if [ $ECS_VERSION == "V1-1" ]; then
664     prodstub_check_jobdata 200 prod-d job8 type4 $TARGET8 ricsim_g3_4 testdata/ecs/job-template.json
665 else
666     prodstub_check_jobdata_2 200 prod-d job8 type4 $TARGET8 ricsim_g3_4 testdata/ecs/job-template.json
667 fi
668
669 prodstub_equal create/prod-d/job8 1
670 prodstub_equal delete/prod-d/job8 0
671
672 ecs_api_a1_get_job_ids 200 type4 NOWNER job8
673
674 if [  -z "$FLAT_A1_EI" ]; then
675     ecs_api_a1_get_job_status 200 type4 job8 ENABLED
676 else
677     ecs_api_a1_get_job_status 200 job8 ENABLED
678 fi
679
680 # Re-PUT the producer with zero types
681 if [ $ECS_VERSION == "V1-1" ]; then
682     ecs_api_edp_put_producer 200 prod-d $CB_JOB/prod-d $CB_SV/prod-d NOTYPE
683 else
684     ecs_api_edp_put_producer_2 200 prod-d $CB_JOB/prod-d $CB_SV/prod-d NOTYPE
685 fi
686
687 if [  -z "$FLAT_A1_EI" ]; then
688     ecs_api_a1_get_job_ids 404 type4 NOWNER
689 else
690     ecs_api_a1_get_job_ids 200 type4 NOWNER job8
691     ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2 job3 job8
692 fi
693
694 if [  -z "$FLAT_A1_EI" ]; then
695     ecs_api_a1_get_job_status 200 type4 job8 DISABLED
696 else
697     ecs_api_a1_get_job_status 200 job8 DISABLED
698 fi
699
700 cr_equal received_callbacks 3 30
701 cr_equal received_callbacks?id=job8-status 1
702 cr_api_check_all_ecs_events 200 job8-status DISABLED
703
704 prodstub_equal create/prod-d/job8 1
705 prodstub_equal delete/prod-d/job8 0
706
707 ## Re-setup prod-d
708 if [ $ECS_VERSION == "V1-1" ]; then
709     ecs_api_edp_put_producer 200 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4 testdata/ecs/ei-type-4.json
710 else
711     ecs_api_edp_put_type_2 200 type4 testdata/ecs/ei-type-4.json
712     ecs_api_edp_put_producer_2 200 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4
713 fi
714
715 if [  -z "$FLAT_A1_EI" ]; then
716     ecs_api_a1_get_job_ids 404 type4 NOWNER
717 else
718     ecs_api_a1_get_job_ids 200 type4 NOWNER job8
719     ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2 job3 job8
720 fi
721
722 if [  -z "$FLAT_A1_EI" ]; then
723     ecs_api_a1_get_job_status 200 type4 job8 ENABLED
724 else
725     ecs_api_a1_get_job_status 200 job8 ENABLED
726 fi
727
728 ecs_api_edp_get_producer_status 200 prod-a ENABLED
729 ecs_api_edp_get_producer_status 200 prod-b ENABLED
730 ecs_api_edp_get_producer_status 200 prod-c ENABLED
731 ecs_api_edp_get_producer_status 200 prod-d ENABLED
732
733 cr_equal received_callbacks 4 30
734 cr_equal received_callbacks?id=job8-status 2
735 cr_api_check_all_ecs_events 200 job8-status ENABLED
736
737 prodstub_equal create/prod-d/job8 2
738 prodstub_equal delete/prod-d/job8 0
739
740
741 ## Setup prod-e
742 if [ $ECS_VERSION == "V1-1" ]; then
743     ecs_api_edp_put_producer 201 prod-e $CB_JOB/prod-e $CB_SV/prod-e type6 testdata/ecs/ei-type-6.json
744 else
745     ecs_api_edp_put_type_2 201 type6 testdata/ecs/ei-type-6.json
746     ecs_api_edp_put_producer_2 201 prod-e $CB_JOB/prod-e $CB_SV/prod-e type6
747 fi
748
749 ecs_api_a1_get_job_ids 200 type6 NOWNER EMPTY
750
751 if [  -z "$FLAT_A1_EI" ]; then
752     ecs_api_a1_put_job 201 type6 job10 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
753 else
754     ecs_api_a1_put_job 201 job10 type6 $TARGET10 ricsim_g3_4 $STATUS10 testdata/ecs/job-template.json
755 fi
756
757 if [ $ECS_VERSION == "V1-1" ]; then
758     prodstub_check_jobdata 200 prod-e job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
759 else
760     prodstub_check_jobdata_2 200 prod-e job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
761 fi
762
763 prodstub_equal create/prod-e/job10 1
764 prodstub_equal delete/prod-e/job10 0
765
766 ecs_api_a1_get_job_ids 200 type6 NOWNER job10
767
768 if [  -z "$FLAT_A1_EI" ]; then
769     ecs_api_a1_get_job_status 200 type6 job10 ENABLED
770 else
771     ecs_api_a1_get_job_status 200 job10 ENABLED
772 fi
773
774 ## Setup prod-f
775 if [ $ECS_VERSION == "V1-1" ]; then
776     ecs_api_edp_put_producer 201 prod-f $CB_JOB/prod-f $CB_SV/prod-f type6 testdata/ecs/ei-type-6.json
777 else
778     ecs_api_edp_put_type_2 200 type6 testdata/ecs/ei-type-6.json
779     ecs_api_edp_put_producer_2 201 prod-f $CB_JOB/prod-f $CB_SV/prod-f type6
780 fi
781
782 ecs_api_a1_get_job_ids 200 type6 NOWNER job10
783
784 if [ $ECS_VERSION == "V1-1" ]; then
785     prodstub_check_jobdata 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
786 else
787     prodstub_check_jobdata_2 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
788 fi
789
790 prodstub_equal create/prod-f/job10 1
791 prodstub_equal delete/prod-f/job10 0
792
793 ecs_api_a1_get_job_ids 200 type6 NOWNER job10
794
795 if [  -z "$FLAT_A1_EI" ]; then
796     ecs_api_a1_get_job_status 200 type6 job10 ENABLED
797 else
798     ecs_api_a1_get_job_status 200 job10 ENABLED
799 fi
800
801 ## Status updates prod-a and jobs
802
803 if [ $ECS_VERSION == "V1-1" ]; then
804     ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c prod-d prod-e prod-f
805 else
806     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c prod-d prod-e prod-f
807 fi
808
809 ecs_api_edp_get_producer_status 200 prod-a ENABLED
810 ecs_api_edp_get_producer_status 200 prod-b ENABLED
811 ecs_api_edp_get_producer_status 200 prod-c ENABLED
812 ecs_api_edp_get_producer_status 200 prod-d ENABLED
813 ecs_api_edp_get_producer_status 200 prod-e ENABLED
814 ecs_api_edp_get_producer_status 200 prod-f ENABLED
815
816 # Arm producer prod-a for supervision failure
817 prodstub_arm_producer 200 prod-a 400
818
819 # Wait for producer prod-a to go disabled
820 ecs_api_edp_get_producer_status 200 prod-a DISABLED 360
821
822 if [ $ECS_VERSION == "V1-1" ]; then
823     ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c prod-d  prod-e prod-f
824 else
825     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c prod-d  prod-e prod-f
826 fi
827
828 ecs_api_edp_get_producer_status 200 prod-a DISABLED
829 ecs_api_edp_get_producer_status 200 prod-b ENABLED
830 ecs_api_edp_get_producer_status 200 prod-c ENABLED
831 ecs_api_edp_get_producer_status 200 prod-d ENABLED
832 ecs_api_edp_get_producer_status 200 prod-e ENABLED
833 ecs_api_edp_get_producer_status 200 prod-f ENABLED
834
835
836 if [  -z "$FLAT_A1_EI" ]; then
837     ecs_api_a1_get_job_status 200 type1 job1 ENABLED
838     ecs_api_a1_get_job_status 200 type1 job2 ENABLED
839     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
840     ecs_api_a1_get_job_status 200 type4 job8 ENABLED
841     ecs_api_a1_get_job_status 200 type6 job10 ENABLED
842 else
843     ecs_api_a1_get_job_status 200 job1 ENABLED
844     ecs_api_a1_get_job_status 200 job2 ENABLED
845     ecs_api_a1_get_job_status 200 job3 ENABLED
846     ecs_api_a1_get_job_status 200 job8 ENABLED
847     ecs_api_a1_get_job_status 200 job10 ENABLED
848 fi
849
850 # Arm producer prod-a for supervision
851 prodstub_arm_producer 200 prod-a 200
852
853 # Wait for producer prod-a to go enabled
854 ecs_api_edp_get_producer_status 200 prod-a ENABLED 360
855
856 if [ $ECS_VERSION == "V1-1" ]; then
857     ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c prod-d prod-e prod-f
858 else
859     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c prod-d prod-e prod-f
860 fi
861
862 ecs_api_edp_get_producer_status 200 prod-a ENABLED
863 ecs_api_edp_get_producer_status 200 prod-b ENABLED
864 ecs_api_edp_get_producer_status 200 prod-c ENABLED
865 ecs_api_edp_get_producer_status 200 prod-d ENABLED
866 ecs_api_edp_get_producer_status 200 prod-e ENABLED
867 ecs_api_edp_get_producer_status 200 prod-f ENABLED
868
869 if [  -z "$FLAT_A1_EI" ]; then
870     ecs_api_a1_get_job_status 200 type1 job1 ENABLED
871     ecs_api_a1_get_job_status 200 type1 job2 ENABLED
872     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
873     ecs_api_a1_get_job_status 200 type4 job8 ENABLED
874     ecs_api_a1_get_job_status 200 type6 job10 ENABLED
875 else
876     ecs_api_a1_get_job_status 200 job1 ENABLED
877     ecs_api_a1_get_job_status 200 job2 ENABLED
878     ecs_api_a1_get_job_status 200 job3 ENABLED
879     ecs_api_a1_get_job_status 200 job8 ENABLED
880     ecs_api_a1_get_job_status 200 job10 ENABLED
881 fi
882
883 # Arm producer prod-a for supervision failure
884 prodstub_arm_producer 200 prod-a 400
885
886 # Wait for producer prod-a to go disabled
887 ecs_api_edp_get_producer_status 200 prod-a DISABLED 360
888
889 if [ $ECS_VERSION == "V1-1" ]; then
890     ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c prod-d prod-e prod-f
891 else
892     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c prod-d prod-e prod-f
893 fi
894
895 ecs_api_edp_get_producer_status 200 prod-a DISABLED
896 ecs_api_edp_get_producer_status 200 prod-b ENABLED
897 ecs_api_edp_get_producer_status 200 prod-c ENABLED
898 ecs_api_edp_get_producer_status 200 prod-d ENABLED
899 ecs_api_edp_get_producer_status 200 prod-e ENABLED
900 ecs_api_edp_get_producer_status 200 prod-f ENABLED
901
902 if [  -z "$FLAT_A1_EI" ]; then
903     ecs_api_a1_get_job_status 200 type1 job1 ENABLED
904     ecs_api_a1_get_job_status 200 type1 job2 ENABLED
905     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
906     ecs_api_a1_get_job_status 200 type4 job8 ENABLED
907     ecs_api_a1_get_job_status 200 type6 job10 ENABLED
908 else
909     ecs_api_a1_get_job_status 200 job1 ENABLED
910     ecs_api_a1_get_job_status 200 job2 ENABLED
911     ecs_api_a1_get_job_status 200 job3 ENABLED
912     ecs_api_a1_get_job_status 200 job8 ENABLED
913     ecs_api_a1_get_job_status 200 job10 ENABLED
914 fi
915
916 # Wait for producer prod-a to be removed
917 ecs_equal json:ei-producer/v1/eiproducers 5 1000
918
919 if [ $ECS_VERSION == "V1-1" ]; then
920     ecs_api_edp_get_producer_ids 200 prod-b prod-c prod-d prod-e prod-f
921 else
922     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-b prod-c prod-d prod-e prod-f
923 fi
924
925
926 ecs_api_edp_get_producer_status 404 prod-a
927 ecs_api_edp_get_producer_status 200 prod-b ENABLED
928 ecs_api_edp_get_producer_status 200 prod-c ENABLED
929 ecs_api_edp_get_producer_status 200 prod-d ENABLED
930 ecs_api_edp_get_producer_status 200 prod-e ENABLED
931 ecs_api_edp_get_producer_status 200 prod-f ENABLED
932
933 if [  -z "$FLAT_A1_EI" ]; then
934     ecs_api_a1_get_job_status 200 type1 job1 DISABLED
935     ecs_api_a1_get_job_status 200 type1 job2 DISABLED
936     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
937     ecs_api_a1_get_job_status 200 type4 job8 ENABLED
938     ecs_api_a1_get_job_status 200 type6 job10 ENABLED
939 else
940     ecs_api_a1_get_job_status 200 job1 DISABLED
941     ecs_api_a1_get_job_status 200 job2 DISABLED
942     ecs_api_a1_get_job_status 200 job3 ENABLED
943     ecs_api_a1_get_job_status 200 job8 ENABLED
944     ecs_api_a1_get_job_status 200 job10 ENABLED
945 fi
946
947 cr_equal received_callbacks 6 30
948 cr_equal received_callbacks?id=job1-status 1
949 cr_equal received_callbacks?id=job2-status 1
950
951 cr_api_check_all_ecs_events 200 job1-status DISABLED
952 cr_api_check_all_ecs_events 200 job2-status DISABLED
953
954
955 # Arm producer prod-e for supervision failure
956 prodstub_arm_producer 200 prod-e 400
957
958 ecs_api_edp_get_producer_status 200 prod-e DISABLED 1000
959
960 if [ $ECS_VERSION == "V1-1" ]; then
961     ecs_api_edp_get_producer_ids 200 prod-b prod-c prod-d prod-e prod-f
962 else
963     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-b prod-c prod-d prod-e prod-f
964 fi
965
966 ecs_api_edp_get_producer_status 404 prod-a
967 ecs_api_edp_get_producer_status 200 prod-b ENABLED
968 ecs_api_edp_get_producer_status 200 prod-c ENABLED
969 ecs_api_edp_get_producer_status 200 prod-d ENABLED
970 ecs_api_edp_get_producer_status 200 prod-e DISABLED
971 ecs_api_edp_get_producer_status 200 prod-f ENABLED
972
973 if [  -z "$FLAT_A1_EI" ]; then
974     ecs_api_a1_get_job_status 200 type1 job1 DISABLED
975     ecs_api_a1_get_job_status 200 type1 job2 DISABLED
976     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
977     ecs_api_a1_get_job_status 200 type4 job8 ENABLED
978     ecs_api_a1_get_job_status 200 type6 job10 ENABLED
979 else
980     ecs_api_a1_get_job_status 200 job1 DISABLED
981     ecs_api_a1_get_job_status 200 job2 DISABLED
982     ecs_api_a1_get_job_status 200 job3 ENABLED
983     ecs_api_a1_get_job_status 200 job8 ENABLED
984     ecs_api_a1_get_job_status 200 job10 ENABLED
985 fi
986
987 #Disable create for job10 in prod-e
988 prodstub_arm_job_create 200 prod-e job10 400
989
990 #Update tjob 10 - only prod-f will be updated
991 if [  -z "$FLAT_A1_EI" ]; then
992     ecs_api_a1_put_job 200 type6 job10 $TARGET10 ricsim_g3_4 testdata/ecs/job-template2.json
993 else
994     ecs_api_a1_put_job 200 job10 type6 $TARGET10 ricsim_g3_4 $STATUS10 testdata/ecs/job-template2.json
995 fi
996 #Reset producer and job responses
997 prodstub_arm_producer 200 prod-e 200
998 prodstub_arm_job_create 200 prod-e job10 200
999
1000 ecs_api_edp_get_producer_status 200 prod-e ENABLED 360
1001
1002 if [ $ECS_VERSION == "V1-1" ]; then
1003     ecs_api_edp_get_producer_ids 200 prod-b prod-c prod-d prod-e prod-f
1004 else
1005     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-b prod-c prod-d prod-e prod-f
1006 fi
1007
1008 #Wait for job to be updated
1009 sleep_wait 120
1010
1011 if [ $ECS_VERSION == "V1-1" ]; then
1012     prodstub_check_jobdata 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template2.json
1013 else
1014     prodstub_check_jobdata_2 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template2.json
1015 fi
1016
1017 prodstub_arm_producer 200 prod-f 400
1018
1019 ecs_api_edp_get_producer_status 200 prod-f DISABLED 360
1020
1021 ecs_equal json:ei-producer/v1/eiproducers 4 1000
1022
1023 if [ $ECS_VERSION == "V1-1" ]; then
1024     ecs_api_edp_get_producer_ids 200 prod-b prod-c prod-d prod-e
1025 else
1026     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-b prod-c prod-d prod-e
1027 fi
1028
1029 ecs_api_edp_get_producer_status 404 prod-a
1030 ecs_api_edp_get_producer_status 200 prod-b ENABLED
1031 ecs_api_edp_get_producer_status 200 prod-c ENABLED
1032 ecs_api_edp_get_producer_status 200 prod-d ENABLED
1033 ecs_api_edp_get_producer_status 200 prod-e ENABLED
1034 ecs_api_edp_get_producer_status 404 prod-f
1035
1036 if [  -z "$FLAT_A1_EI" ]; then
1037     ecs_api_a1_get_job_status 200 type1 job1 DISABLED
1038     ecs_api_a1_get_job_status 200 type1 job2 DISABLED
1039     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
1040     ecs_api_a1_get_job_status 200 type4 job8 ENABLED
1041     ecs_api_a1_get_job_status 200 type6 job10 ENABLED
1042 else
1043     ecs_api_a1_get_job_status 200 job1 DISABLED
1044     ecs_api_a1_get_job_status 200 job2 DISABLED
1045     ecs_api_a1_get_job_status 200 job3 ENABLED
1046     ecs_api_a1_get_job_status 200 job8 ENABLED
1047     ecs_api_a1_get_job_status 200 job10 ENABLED
1048 fi
1049
1050 cr_equal received_callbacks 6
1051
1052
1053 if [[ "$ECS_FEATURE_LEVEL" != *"INFO-TYPES"* ]]; then
1054
1055     # End test if info types is not impl in tested version
1056     check_ecs_logs
1057
1058     store_logs END
1059
1060     #### TEST COMPLETE ####
1061
1062     print_result
1063
1064     auto_clean_environment
1065 fi
1066
1067
1068 ############################################
1069 # Test of info types
1070 ############################################
1071
1072 ### Setup prodstub sim to accept calls for producers, info types and jobs
1073 ## prod-ia type101
1074 ## prod-ib type101 and type102
1075 ## prod-ic no-type
1076 ## prod-id type104
1077 ## prod-ie type106
1078 ## prod-if type106
1079 ## prod-ig type150  (configured later)
1080 ## prod-ig type160  (configured later)
1081
1082 ## job101 -> prod-ia
1083 ## job102 -> prod-ia
1084 ## job103 -> prod-ib
1085 ## job104 -> prod-ia
1086 ## job106 -> prod-ib
1087 ## job108 -> prod-id
1088 ## job110 -> prod-ie and prod-if
1089 ## job150 -> prod-ig  (configured later)
1090
1091 prodstub_arm_producer 200 prod-ia
1092 prodstub_arm_producer 200 prod-ib
1093 prodstub_arm_producer 200 prod-ic
1094 prodstub_arm_producer 200 prod-id
1095 prodstub_arm_producer 200 prod-ie
1096 prodstub_arm_producer 200 prod-if
1097
1098 prodstub_arm_type 200 prod-ia type101
1099 prodstub_arm_type 200 prod-ib type102
1100 prodstub_arm_type 200 prod-ib type103
1101 prodstub_arm_type 200 prod-id type104
1102 prodstub_arm_type 200 prod-ie type106
1103 prodstub_arm_type 200 prod-if type106
1104
1105 prodstub_disarm_type 200 prod-ib type103
1106 prodstub_arm_type 200 prod-ib type101
1107 prodstub_disarm_type 200 prod-ib type101
1108
1109
1110 prodstub_arm_job_create 200 prod-ia job101
1111 prodstub_arm_job_create 200 prod-ia job102
1112 prodstub_arm_job_create 200 prod-ib job103
1113
1114 prodstub_arm_job_delete 200 prod-ia job101
1115 prodstub_arm_job_delete 200 prod-ia job102
1116 prodstub_arm_job_delete 200 prod-ib job103
1117
1118 prodstub_arm_job_create 200 prod-ib job104
1119 prodstub_arm_job_create 200 prod-ia job104
1120
1121 prodstub_arm_job_create 200 prod-ib job106
1122
1123 prodstub_arm_job_create 200 prod-id job108
1124
1125 prodstub_arm_job_create 200 prod-ie job110
1126 prodstub_arm_job_create 200 prod-if job110
1127
1128
1129 # NOTE: types, jobs and producers are still present related to eitypes
1130
1131
1132 ### Initial tests - no config made
1133 ### GET: type ids, types, producer ids, producers, job ids, jobs
1134 ### DELETE: jobs
1135 ecs_api_idc_get_type_ids 200 type1 type2 type4 type6
1136 ecs_api_idc_get_type 404 test-type
1137
1138 ecs_api_edp_get_type_ids 200 type1 type2 type4 type6
1139 ecs_api_edp_get_type_2 404 test-type
1140
1141 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-b prod-c prod-d prod-e
1142 ecs_api_edp_get_producer_2 404 test-prod
1143 ecs_api_edp_get_producer_status 404 test-prod
1144
1145 ecs_api_edp_delete_producer 404 test-prod
1146
1147 ecs_api_idc_get_job_ids 200 test-type NOWNER EMPTY
1148 ecs_api_idc_get_job_ids 200 test-type test-owner EMPTY
1149
1150 ecs_api_idc_get_job 404 test-job
1151
1152 ecs_api_idc_get_job_status 404 test-job
1153
1154 ecs_api_idc_delete_job 404 test-job
1155
1156 ecs_api_edp_get_producer_jobs_2 404 test-prod
1157
1158 ecs_api_edp_get_type_2 404 test-type
1159 ecs_api_edp_delete_type_2 404 test-type
1160
1161 ### Setup of producer/job and testing apis ###
1162
1163 ## Setup prod-ia
1164 ecs_api_edp_get_type_ids 200 type1 type2 type4 type6
1165 ecs_api_edp_get_type_2 404 type101
1166 ecs_api_edp_put_producer_2 404 prod-ia $CB_JOB/prod-ia $CB_SV/prod-ia type101
1167
1168 # Create type, delete and create again
1169 ecs_api_edp_put_type_2 201 type101 testdata/ecs/info-type-1.json
1170 ecs_api_edp_get_type_2 200 type101
1171 ecs_api_edp_get_type_ids 200 type101 type1 type2 type4 type6
1172 ecs_api_edp_delete_type_2 204 type101
1173 ecs_api_edp_get_type_2 404 type101
1174 ecs_api_edp_get_type_ids 200 type1 type2 type4 type6
1175 ecs_api_edp_put_type_2 201 type101 testdata/ecs/info-type-1.json
1176 ecs_api_edp_get_type_ids 200 type101 type1 type2 type4 type6
1177 ecs_api_edp_get_type_2 200 type101 testdata/ecs/info-type-1.json
1178
1179 ecs_api_edp_put_producer_2 201 prod-ia $CB_JOB/prod-ia $CB_SV/prod-ia type101
1180 ecs_api_edp_put_producer_2 200 prod-ia $CB_JOB/prod-ia $CB_SV/prod-ia type101
1181
1182 ecs_api_edp_delete_type_2 406 type101
1183
1184
1185 #ecs_api_idc_get_type_ids 200 type101
1186 #ecs_api_idc_get_type 200 type101 testdata/ecs/empty-type.json
1187
1188 ecs_api_edp_get_type_ids 200 type101 type1 type2 type4 type6
1189 ecs_api_edp_get_type_2 200 type101 testdata/ecs/info-type-1.json
1190
1191 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-b prod-c prod-d prod-e
1192 ecs_api_edp_get_producer_ids_2 200 type101 prod-ia
1193 ecs_api_edp_get_producer_ids_2 200 type102 EMPTY
1194
1195 ecs_api_edp_get_producer_2 200 prod-ia $CB_JOB/prod-ia $CB_SV/prod-ia type101
1196
1197 ecs_api_edp_get_producer_status 200 prod-ia ENABLED
1198
1199 ecs_api_idc_get_job_ids 200 type101 NOWNER EMPTY
1200 ecs_api_idc_get_job_ids 200 type101 test-owner EMPTY
1201
1202 ecs_api_idc_get_job 404 test-job
1203
1204 ecs_api_idc_get_job_status 404 test-job
1205 ecs_api_edp_get_producer_jobs_2 200 prod-ia EMPTY
1206
1207 ## Create a job for prod-ia
1208 ## job101 - prod-ia
1209 ecs_api_idc_put_job 201 job101 type101 $TARGET101 info-owner-1 $INFOSTATUS101 testdata/ecs/job-template.json VALIDATE
1210
1211 # Check the job data in the producer
1212 prodstub_check_jobdata_2 200 prod-ia job101 type101 $TARGET101 info-owner-1 testdata/ecs/job-template.json
1213
1214 ecs_api_idc_get_job_ids 200 type101 NOWNER job101
1215 ecs_api_idc_get_job_ids 200 type101 info-owner-1 job101
1216
1217 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job1 job2 job3 job8 job10
1218
1219 ecs_api_idc_get_job 200 job101 type101 $TARGET101 info-owner-1 $INFOSTATUS101 testdata/ecs/job-template.json
1220
1221 ecs_api_idc_get_job_status 200 job101 ENABLED
1222
1223 prodstub_equal create/prod-ia/job101 1
1224
1225 ecs_api_edp_get_producer_jobs_2 200 prod-ia job101 type101 $TARGET101 info-owner-1 testdata/ecs/job-template.json
1226
1227 ## Create a second job for prod-ia
1228 ## job102 - prod-ia
1229 ecs_api_idc_put_job 201 job102 type101 $TARGET102 info-owner-2 $INFOSTATUS102 testdata/ecs/job-template.json  VALIDATE
1230
1231 # Check the job data in the producer
1232 prodstub_check_jobdata_2 200 prod-ia job102 type101 $TARGET102 info-owner-2 testdata/ecs/job-template.json
1233 ecs_api_idc_get_job_ids 200 type101 NOWNER job101 job102
1234 ecs_api_idc_get_job_ids 200 type101 info-owner-1 job101
1235 ecs_api_idc_get_job_ids 200 type101 info-owner-2 job102
1236 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job102 job1 job2 job3 job8 job10
1237
1238 ecs_api_idc_get_job 200 job102 type101 $TARGET102 info-owner-2 $INFOSTATUS102 testdata/ecs/job-template.json
1239
1240 ecs_api_idc_get_job_status 200 job102 ENABLED
1241
1242 prodstub_equal create/prod-ia/job102 1
1243
1244 ecs_api_edp_get_producer_jobs_2 200 prod-ia job101 type101 $TARGET101 info-owner-1 testdata/ecs/job-template.json job102 type101 $TARGET102 info-owner-2 testdata/ecs/job-template.json
1245
1246
1247 ## Setup prod-ib
1248 ecs_api_edp_put_type_2 201 type102 testdata/ecs/info-type-2.json
1249 ecs_api_edp_put_producer_2 201 prod-ib $CB_JOB/prod-ib $CB_SV/prod-ib type102
1250
1251
1252 ecs_api_idc_get_type_ids 200 type101 type102 type1 type2 type4 type6
1253
1254 ecs_api_idc_get_type 200 type101 testdata/ecs/info-type-1.json
1255
1256 ecs_api_idc_get_type 200 type102 testdata/ecs/info-type-2.json
1257
1258 ecs_api_edp_get_type_ids 200 type101 type102 type1 type2 type4 type6
1259 ecs_api_edp_get_type_2 200 type101 testdata/ecs/info-type-1.json
1260 ecs_api_edp_get_type_2 200 type102 testdata/ecs/info-type-2.json
1261
1262 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ib prod-b prod-c prod-d prod-e
1263
1264 ecs_api_edp_get_producer_2 200 prod-ia $CB_JOB/prod-ia $CB_SV/prod-ia type101
1265 ecs_api_edp_get_producer_2 200 prod-ib $CB_JOB/prod-ib $CB_SV/prod-ib type102
1266
1267 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1268
1269 ## Create job for prod-ib
1270 ##  job103 - prod-ib
1271 ecs_api_idc_put_job 201 job103 type102 $TARGET103 info-owner-3 $INFOSTATUS103 testdata/ecs/job-template.json  VALIDATE
1272
1273 prodstub_equal create/prod-ib/job103 1
1274
1275 # Check the job data in the producer
1276 prodstub_check_jobdata_2 200 prod-ib job103 type102 $TARGET103 info-owner-3 testdata/ecs/job-template.json
1277
1278 ecs_api_idc_get_job_ids 200 type101 NOWNER job101 job102
1279 ecs_api_idc_get_job_ids 200 type102 NOWNER job103
1280 ecs_api_idc_get_job_ids 200 type101 info-owner-1 job101
1281 ecs_api_idc_get_job_ids 200 type101 info-owner-2 job102
1282 ecs_api_idc_get_job_ids 200 type102 info-owner-3 job103
1283
1284 ecs_api_idc_get_job 200 job103 type102 $TARGET103 info-owner-3 $INFOSTATUS103 testdata/ecs/job-template.json
1285
1286 ecs_api_idc_get_job_status 200 job103 ENABLED
1287
1288 ecs_api_edp_get_producer_jobs_2 200 prod-ia job101 type101 $TARGET101 info-owner-1 testdata/ecs/job-template.json job102 type101 $TARGET102 info-owner-2 testdata/ecs/job-template.json
1289 ecs_api_edp_get_producer_jobs_2 200 prod-ib job103 type102 $TARGET103 info-owner-3 testdata/ecs/job-template.json
1290
1291 ## Setup prod-ic (no types)
1292 ecs_api_edp_put_producer_2 201 prod-ic $CB_JOB/prod-ic $CB_SV/prod-ic NOTYPE
1293
1294 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ib prod-ic prod-b prod-c prod-d prod-e
1295
1296 ecs_api_edp_get_producer_2 200 prod-ia $CB_JOB/prod-ia $CB_SV/prod-ia type101
1297 ecs_api_edp_get_producer_2 200 prod-ib $CB_JOB/prod-ib $CB_SV/prod-ib type102
1298 ecs_api_edp_get_producer_2 200 prod-ic $CB_JOB/prod-ic $CB_SV/prod-ic EMPTY
1299
1300 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1301
1302
1303 ## Delete job103 and prod-ib and re-create if different order
1304
1305 # Delete job then producer
1306 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job102 job103 job1 job2 job3 job8 job10
1307 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ib prod-ic prod-b prod-c prod-d prod-e
1308
1309 ecs_api_idc_delete_job 204 job103
1310
1311 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job102 job1 job2 job3 job8 job10
1312 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ib prod-ic prod-b prod-c prod-d prod-e
1313
1314 ecs_api_edp_delete_producer 204 prod-ib
1315
1316 ecs_api_edp_get_producer_status 404 prod-ib
1317
1318 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job102 job1 job2 job3 job8 job10
1319 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ic prod-b prod-c prod-d prod-e
1320
1321 prodstub_equal delete/prod-ib/job103 1
1322
1323 ecs_api_idc_put_job 201 job103 type102 $TARGET103 info-owner-3 $INFOSTATUS103 testdata/ecs/job-template.json VALIDATE
1324 ecs_api_idc_get_job_status 200 job103 DISABLED
1325
1326 # Put producer then job
1327 ecs_api_edp_put_producer_2 201 prod-ib $CB_JOB/prod-ib $CB_SV/prod-ib type102
1328
1329 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1330
1331 ecs_api_idc_put_job 200 job103 type102 $TARGET103 info-owner-3 $INFOSTATUS103 testdata/ecs/job-template2.json  VALIDATE
1332 ecs_api_idc_get_job_status 200 job103 ENABLED
1333
1334 prodstub_check_jobdata_2 200 prod-ib job103 type102 $TARGET103 info-owner-3 testdata/ecs/job-template2.json
1335
1336 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job102 job103 job1 job2 job3 job8 job10
1337 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ib prod-ic prod-b prod-c prod-d prod-e
1338
1339 prodstub_equal create/prod-ib/job103 3
1340 prodstub_equal delete/prod-ib/job103 1
1341
1342 # Delete only the producer
1343 ecs_api_edp_delete_producer 204 prod-ib
1344
1345 ecs_api_edp_get_producer_status 404 prod-ib
1346
1347 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job102 job103  job1 job2 job3 job8 job10
1348 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ic prod-b prod-c prod-d prod-e
1349
1350 ecs_api_idc_get_job_status 200 job103 DISABLED
1351
1352 cr_equal received_callbacks 7 30
1353 cr_equal received_callbacks?id=info-job103-status 1
1354 cr_api_check_all_ecs_events 200 info-job103-status DISABLED
1355
1356 # Re-create the producer
1357 ecs_api_edp_put_producer_2 201 prod-ib $CB_JOB/prod-ib $CB_SV/prod-ib type102
1358
1359 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1360
1361 ecs_api_idc_get_job_status 200 job103 ENABLED
1362
1363 cr_equal received_callbacks 8 30
1364 cr_equal received_callbacks?id=info-job103-status 2
1365 cr_api_check_all_ecs_events 200 info-job103-status ENABLED
1366
1367 prodstub_check_jobdata_2 200 prod-ib job103 type102 $TARGET103 info-owner-3 testdata/ecs/job-template2.json
1368
1369 ## Setup prod-id
1370 ecs_api_edp_put_type_2 201 type104 testdata/ecs/info-type-4.json
1371 ecs_api_edp_put_producer_2 201 prod-id $CB_JOB/prod-id $CB_SV/prod-id type104
1372
1373 ecs_api_idc_get_job_ids 200 type104 NOWNER EMPTY
1374
1375 ecs_api_idc_put_job 201 job108 type104 $TARGET108 info-owner-4 $INFOSTATUS108 testdata/ecs/job-template.json  VALIDATE
1376
1377 prodstub_check_jobdata_2 200 prod-id job108 type104 $TARGET108 info-owner-4 testdata/ecs/job-template.json
1378
1379 prodstub_equal create/prod-id/job108 1
1380 prodstub_equal delete/prod-id/job108 0
1381
1382 ecs_api_idc_get_job_ids 200 type104 NOWNER job108
1383
1384 ecs_api_idc_get_job_status 200 job108 ENABLED
1385
1386 # Re-PUT the producer with zero types
1387 ecs_api_edp_put_producer_2 200 prod-id $CB_JOB/prod-id $CB_SV/prod-id NOTYPE
1388
1389 ecs_api_idc_get_job_ids 200 type104 NOWNER job108
1390 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job102 job103 job108  job1 job2 job3 job8 job10
1391
1392 ecs_api_idc_get_job_status 200 job108 DISABLED
1393
1394 cr_equal received_callbacks 9 30
1395 cr_equal received_callbacks?id=info-job108-status 1
1396 cr_api_check_all_ecs_events 200 info-job108-status DISABLED
1397
1398 prodstub_equal create/prod-id/job108 1
1399 prodstub_equal delete/prod-id/job108 0
1400
1401 ## Re-setup prod-id
1402 ecs_api_edp_put_type_2 200 type104 testdata/ecs/info-type-4.json
1403 ecs_api_edp_put_producer_2 200 prod-id $CB_JOB/prod-id $CB_SV/prod-id type104
1404
1405 ecs_api_idc_get_job_ids 200 type104 NOWNER job108
1406 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job102 job103 job108 job1 job2 job3 job8 job10
1407
1408 ecs_api_idc_get_job_status 200 job108 ENABLED
1409
1410 ecs_api_edp_get_producer_status 200 prod-ia ENABLED
1411 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1412 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1413 ecs_api_edp_get_producer_status 200 prod-id ENABLED
1414
1415 cr_equal received_callbacks 10 30
1416 cr_equal received_callbacks?id=info-job108-status 2
1417 cr_api_check_all_ecs_events 200 info-job108-status ENABLED
1418
1419 prodstub_equal create/prod-id/job108 2
1420 prodstub_equal delete/prod-id/job108 0
1421
1422
1423 ## Setup prod-ie
1424 ecs_api_edp_put_type_2 201 type106 testdata/ecs/info-type-6.json
1425 ecs_api_edp_put_producer_2 201 prod-ie $CB_JOB/prod-ie $CB_SV/prod-ie type106
1426
1427 ecs_api_idc_get_job_ids 200 type106 NOWNER EMPTY
1428
1429 ecs_api_idc_put_job 201 job110 type106 $TARGET110 info-owner-4 $INFOSTATUS110 testdata/ecs/job-template.json  VALIDATE
1430
1431 prodstub_check_jobdata_2 200 prod-ie job110 type106 $TARGET110 info-owner-4 testdata/ecs/job-template.json
1432
1433 prodstub_equal create/prod-ie/job110 1
1434 prodstub_equal delete/prod-ie/job110 0
1435
1436 ecs_api_idc_get_job_ids 200 type106 NOWNER job110
1437
1438 ecs_api_idc_get_job_status 200 job110 ENABLED
1439
1440 ## Setup prod-if
1441 ecs_api_edp_put_type_2 200 type106 testdata/ecs/info-type-6.json
1442 ecs_api_edp_put_producer_2 201 prod-if $CB_JOB/prod-if $CB_SV/prod-if type106
1443
1444 ecs_api_idc_get_job_ids 200 type106 NOWNER job110
1445
1446 prodstub_check_jobdata_2 200 prod-if job110 type106 $TARGET110 info-owner-4 testdata/ecs/job-template.json
1447
1448 prodstub_equal create/prod-if/job110 1
1449 prodstub_equal delete/prod-if/job110 0
1450
1451 ecs_api_idc_get_job_ids 200 type106 NOWNER job110
1452
1453 ecs_api_idc_get_job_status 200 job110 ENABLED
1454
1455 ## Status updates prod-ia and jobs
1456
1457 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ib prod-ic prod-id prod-ie prod-if  prod-b prod-c prod-d prod-e
1458
1459 ecs_api_edp_get_producer_status 200 prod-ia ENABLED
1460 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1461 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1462 ecs_api_edp_get_producer_status 200 prod-id ENABLED
1463 ecs_api_edp_get_producer_status 200 prod-ie ENABLED
1464 ecs_api_edp_get_producer_status 200 prod-if ENABLED
1465
1466 # Arm producer prod-ia for supervision failure
1467 prodstub_arm_producer 200 prod-ia 400
1468
1469 # Wait for producer prod-ia to go disabled
1470 ecs_api_edp_get_producer_status 200 prod-ia DISABLED 360
1471
1472 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ib prod-ic prod-id  prod-ie prod-if prod-b prod-c prod-d prod-e
1473
1474 ecs_api_edp_get_producer_status 200 prod-ia DISABLED
1475 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1476 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1477 ecs_api_edp_get_producer_status 200 prod-id ENABLED
1478 ecs_api_edp_get_producer_status 200 prod-ie ENABLED
1479 ecs_api_edp_get_producer_status 200 prod-if ENABLED
1480
1481
1482 ecs_api_idc_get_job_status 200 job101 ENABLED
1483 ecs_api_idc_get_job_status 200 job102 ENABLED
1484 ecs_api_idc_get_job_status 200 job103 ENABLED
1485 ecs_api_idc_get_job_status 200 job108 ENABLED
1486 ecs_api_idc_get_job_status 200 job110 ENABLED
1487
1488 # Arm producer prod-ia for supervision
1489 prodstub_arm_producer 200 prod-ia 200
1490
1491 # Wait for producer prod-ia to go enabled
1492 ecs_api_edp_get_producer_status 200 prod-ia ENABLED 360
1493
1494 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ib prod-ic prod-id prod-ie prod-if prod-b prod-c prod-d prod-e
1495
1496 ecs_api_edp_get_producer_status 200 prod-ia ENABLED
1497 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1498 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1499 ecs_api_edp_get_producer_status 200 prod-id ENABLED
1500 ecs_api_edp_get_producer_status 200 prod-ie ENABLED
1501 ecs_api_edp_get_producer_status 200 prod-if ENABLED
1502
1503 ecs_api_idc_get_job_status 200 job101 ENABLED
1504 ecs_api_idc_get_job_status 200 job102 ENABLED
1505 ecs_api_idc_get_job_status 200 job103 ENABLED
1506 ecs_api_idc_get_job_status 200 job108 ENABLED
1507 ecs_api_idc_get_job_status 200 job110 ENABLED
1508
1509 # Arm producer prod-ia for supervision failure
1510 prodstub_arm_producer 200 prod-ia 400
1511
1512 # Wait for producer prod-ia to go disabled
1513 ecs_api_edp_get_producer_status 200 prod-ia DISABLED 360
1514
1515 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ib prod-ic prod-id prod-ie prod-if prod-b prod-c prod-d prod-e
1516
1517 ecs_api_edp_get_producer_status 200 prod-ia DISABLED
1518 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1519 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1520 ecs_api_edp_get_producer_status 200 prod-id ENABLED
1521 ecs_api_edp_get_producer_status 200 prod-ie ENABLED
1522 ecs_api_edp_get_producer_status 200 prod-if ENABLED
1523
1524 ecs_api_idc_get_job_status 200 job101 ENABLED
1525 ecs_api_idc_get_job_status 200 job102 ENABLED
1526 ecs_api_idc_get_job_status 200 job103 ENABLED
1527 ecs_api_idc_get_job_status 200 job108 ENABLED
1528 ecs_api_idc_get_job_status 200 job110 ENABLED
1529
1530 # Wait for producer prod-ia to be removed
1531 ecs_equal json:ei-producer/v1/eiproducers 9 1000
1532
1533 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ib prod-ic prod-id prod-ie prod-if  prod-b prod-c prod-d prod-e
1534
1535
1536 ecs_api_edp_get_producer_status 404 prod-ia
1537 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1538 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1539 ecs_api_edp_get_producer_status 200 prod-id ENABLED
1540 ecs_api_edp_get_producer_status 200 prod-ie ENABLED
1541 ecs_api_edp_get_producer_status 200 prod-if ENABLED
1542
1543 ecs_api_idc_get_job_status 200 job101 DISABLED
1544 ecs_api_idc_get_job_status 200 job102 DISABLED
1545 ecs_api_idc_get_job_status 200 job103 ENABLED
1546 ecs_api_idc_get_job_status 200 job108 ENABLED
1547 ecs_api_idc_get_job_status 200 job110 ENABLED
1548
1549 cr_equal received_callbacks 12 30
1550 cr_equal received_callbacks?id=info-job101-status 1
1551 cr_equal received_callbacks?id=info-job102-status 1
1552
1553 cr_api_check_all_ecs_events 200 info-job101-status DISABLED
1554 cr_api_check_all_ecs_events 200 info-job102-status DISABLED
1555
1556
1557 # Arm producer prod-ie for supervision failure
1558 prodstub_arm_producer 200 prod-ie 400
1559
1560 ecs_api_edp_get_producer_status 200 prod-ie DISABLED 1000
1561
1562 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ib prod-ic prod-id prod-ie prod-if prod-b prod-c prod-d prod-e
1563
1564 ecs_api_edp_get_producer_status 404 prod-ia
1565 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1566 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1567 ecs_api_edp_get_producer_status 200 prod-id ENABLED
1568 ecs_api_edp_get_producer_status 200 prod-ie DISABLED
1569 ecs_api_edp_get_producer_status 200 prod-if ENABLED
1570
1571 ecs_api_idc_get_job_status 200 job101 DISABLED
1572 ecs_api_idc_get_job_status 200 job102 DISABLED
1573 ecs_api_idc_get_job_status 200 job103 ENABLED
1574 ecs_api_idc_get_job_status 200 job108 ENABLED
1575 ecs_api_idc_get_job_status 200 job110 ENABLED
1576
1577 #Disable create for job110 in prod-ie
1578 prodstub_arm_job_create 200 prod-ie job110 400
1579
1580 #Update tjob 10 - only prod-if will be updated
1581 ecs_api_idc_put_job 200 job110 type106 $TARGET110 info-owner-4 $INFOSTATUS110 testdata/ecs/job-template2.json  VALIDATE
1582 #Reset producer and job responses
1583 prodstub_arm_producer 200 prod-ie 200
1584 prodstub_arm_job_create 200 prod-ie job110 200
1585
1586 ecs_api_edp_get_producer_status 200 prod-ie ENABLED 360
1587
1588 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ib prod-ic prod-id prod-ie prod-if  prod-b prod-c prod-d prod-e
1589
1590 #Wait for job to be updated
1591 sleep_wait 120
1592
1593 prodstub_check_jobdata_2 200 prod-if job110 type106 $TARGET110 info-owner-4 testdata/ecs/job-template2.json
1594
1595 prodstub_arm_producer 200 prod-if 400
1596
1597 ecs_api_edp_get_producer_status 200 prod-if DISABLED 360
1598
1599 ecs_equal json:ei-producer/v1/eiproducers 8 1000
1600
1601 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ib prod-ic prod-id prod-ie prod-b prod-c prod-d prod-e
1602
1603 ecs_api_edp_get_producer_status 404 prod-ia
1604 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1605 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1606 ecs_api_edp_get_producer_status 200 prod-id ENABLED
1607 ecs_api_edp_get_producer_status 200 prod-ie ENABLED
1608 ecs_api_edp_get_producer_status 404 prod-if
1609
1610 ecs_api_idc_get_job_status 200 job101 DISABLED
1611 ecs_api_idc_get_job_status 200 job102 DISABLED
1612 ecs_api_idc_get_job_status 200 job103 ENABLED
1613 ecs_api_idc_get_job_status 200 job108 ENABLED
1614 ecs_api_idc_get_job_status 200 job110 ENABLED
1615
1616 cr_equal received_callbacks 12
1617
1618 ### Test of pre and post validation
1619
1620 ecs_api_idc_get_type_ids 200 type1 type2 type4 type6 type101 type102 type104 type106
1621 ecs_api_idc_put_job 404 job150 type150 $TARGET150 info-owner-1 $INFOSTATUS150 testdata/ecs/job-template.json VALIDATE
1622 ecs_api_idc_put_job 201 job160 type160 $TARGET160 info-owner-1 $INFOSTATUS160 testdata/ecs/job-template.json
1623
1624 ecs_api_idc_get_job_status 404 job150
1625 ecs_api_idc_get_job_status 200 job160 DISABLED 60
1626
1627 prodstub_arm_producer 200 prod-ig
1628 prodstub_arm_job_create 200 prod-ig job150
1629 prodstub_arm_job_create 200 prod-ig job160
1630
1631 ecs_api_edp_put_producer_2 201 prod-ig $CB_JOB/prod-ig $CB_SV/prod-ig NOTYPE
1632 ecs_api_edp_get_producer_status 200 prod-ig ENABLED 360
1633
1634 ecs_api_edp_get_producer_2 200 prod-ig $CB_JOB/prod-ig $CB_SV/prod-ig EMPTY
1635
1636 ecs_api_idc_get_job_status 404 job150
1637 ecs_api_idc_get_job_status 200 job160 DISABLED 60
1638
1639 prodstub_arm_type 200 prod-ig type160
1640
1641 ecs_api_edp_put_type_2 201 type160 testdata/ecs/info-type-60.json
1642 ecs_api_idc_get_type_ids 200 type1 type2 type4 type6 type101 type102 type104 type106 type160
1643
1644 ecs_api_edp_put_producer_2 200 prod-ig $CB_JOB/prod-ig $CB_SV/prod-ig type160
1645 ecs_api_edp_get_producer_status 200 prod-ig ENABLED 360
1646 ecs_api_edp_get_producer_2 200 prod-ig $CB_JOB/prod-ig $CB_SV/prod-ig type160
1647
1648 ecs_api_idc_put_job 404 job150 type150 $TARGET150 info-owner-1 $INFOSTATUS150 testdata/ecs/job-template.json VALIDATE
1649
1650 ecs_api_idc_get_job_status 404 job150
1651 ecs_api_idc_get_job_status 200 job160 ENABLED 60
1652
1653 prodstub_check_jobdata_2 200 prod-ig job160 type160 $TARGET160 info-owner-1 testdata/ecs/job-template.json
1654
1655 prodstub_equal create/prod-ig/job160 1
1656 prodstub_equal delete/prod-ig/job160 0
1657
1658 prodstub_arm_type 200 prod-ig type150
1659
1660 ecs_api_edp_put_type_2 201 type150 testdata/ecs/info-type-50.json
1661 ecs_api_idc_get_type_ids 200 type1 type2 type4 type6 type101 type102 type104 type106 type160 type150
1662
1663 ecs_api_edp_put_producer_2 200 prod-ig $CB_JOB/prod-ig $CB_SV/prod-ig type160 type150
1664 ecs_api_edp_get_producer_status 200 prod-ig ENABLED 360
1665
1666 ecs_api_edp_get_producer_2 200 prod-ig $CB_JOB/prod-ig $CB_SV/prod-ig type160 type150
1667
1668 ecs_api_idc_get_job_status 404 job150
1669 ecs_api_idc_get_job_status 200 job160 ENABLED
1670
1671 ecs_api_idc_put_job 201 job150 type150 $TARGET150 info-owner-1 $INFOSTATUS150 testdata/ecs/job-template.json VALIDATE
1672
1673 ecs_api_idc_get_job_status 200 job150 ENABLED 60
1674 ecs_api_idc_get_job_status 200 job160 ENABLED
1675
1676 cr_equal received_callbacks 12
1677
1678 check_ecs_logs
1679
1680 store_logs END
1681
1682 #### TEST COMPLETE ####
1683
1684 print_result
1685
1686 auto_clean_environment