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
10 # http://www.apache.org/licenses/LICENSE-2.0
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=================================================
21 TC_ONELINE_DESCR="ECS full interfaces walkthrough"
23 #App names to include in the test when running docker, space separated list
24 DOCKER_INCLUDED_IMAGES="ECS PRODSTUB CR RICSIM CP HTTPPROXY"
26 #App names to include in the test when running kubernetes, space separated list
27 KUBE_INCLUDED_IMAGES=" PRODSTUB CR ECS RICSIM CP HTTPPROXY"
28 #Prestarted app (not started by script) to include in the test when running kubernetes, space separated list
29 KUBE_PRESTARTED_IMAGES=" "
31 #Supported test environment profiles
32 SUPPORTED_PROFILES="ONAP-HONOLULU ORAN-CHERRY ORAN-DAWN"
34 SUPPORTED_RUNMODES="DOCKER KUBE"
36 . ../common/testcase_common.sh $@
37 . ../common/ecs_api_functions.sh
38 . ../common/prodstub_api_functions.sh
39 . ../common/cr_api_functions.sh
40 . ../common/control_panel_api_functions.sh
41 . ../common/controller_api_functions.sh
42 . ../common/ricsimulator_api_functions.sh
43 . ../common/http_proxy_api_functions.sh
59 #start_http_proxy #Uncomment this cmd to run with proxy
61 start_ecs NOPROXY $SIM_GROUP/$ECS_COMPOSE_DIR/application.yaml #Change NOPROXY to PROXY to run with http proxy
63 if [ $RUNMODE == "KUBE" ]; then
71 start_control_panel $SIM_GROUP/$CONTROL_PANEL_COMPOSE_DIR/application.properties
73 if [ "$PMS_VERSION" == "V2" ]; then
74 start_ric_simulators ricsim_g3 4 STD_2.0.0
79 CB_JOB="$PROD_STUB_SERVICE_PATH$PROD_STUB_JOB_CALLBACK"
80 CB_SV="$PROD_STUB_SERVICE_PATH$PROD_STUB_SUPERVISION_CALLBACK"
81 TARGET1="$RIC_SIM_HTTPX://ricsim_g3_1:$RIC_SIM_PORT/datadelivery"
82 TARGET2="$RIC_SIM_HTTPX://ricsim_g3_2:$RIC_SIM_PORT/datadelivery"
83 TARGET3="$RIC_SIM_HTTPX://ricsim_g3_3:$RIC_SIM_PORT/datadelivery"
84 TARGET8="$RIC_SIM_HTTPX://ricsim_g3_4:$RIC_SIM_PORT/datadelivery"
85 TARGET10="$RIC_SIM_HTTPX://ricsim_g3_4:$RIC_SIM_PORT/datadelivery"
87 STATUS1="$CR_SERVICE_PATH/job1-status"
88 STATUS2="$CR_SERVICE_PATH/job2-status"
89 STATUS3="$CR_SERVICE_PATH/job3-status"
90 STATUS8="$CR_SERVICE_PATH/job8-status"
91 STATUS10="$CR_SERVICE_PATH/job10-status"
93 ### Setup prodstub sim to accept calls for producers, types and jobs
95 ## prod-b type1 and type2
107 ## job10 -> prod-e and prod-f
109 prodstub_arm_producer 200 prod-a
110 prodstub_arm_producer 200 prod-b
111 prodstub_arm_producer 200 prod-c
112 prodstub_arm_producer 200 prod-d
113 prodstub_arm_producer 200 prod-e
114 prodstub_arm_producer 200 prod-f
116 prodstub_arm_type 200 prod-a type1
117 prodstub_arm_type 200 prod-b type2
118 prodstub_arm_type 200 prod-b type3
119 prodstub_arm_type 200 prod-d type4
120 prodstub_arm_type 200 prod-e type6
121 prodstub_arm_type 200 prod-f type6
123 prodstub_disarm_type 200 prod-b type3
124 prodstub_arm_type 200 prod-b type1
125 prodstub_disarm_type 200 prod-b type1
128 prodstub_arm_job_create 200 prod-a job1
129 prodstub_arm_job_create 200 prod-a job2
130 prodstub_arm_job_create 200 prod-b job3
132 prodstub_arm_job_delete 200 prod-a job1
133 prodstub_arm_job_delete 200 prod-a job2
134 prodstub_arm_job_delete 200 prod-b job3
136 prodstub_arm_job_create 200 prod-b job4
137 prodstub_arm_job_create 200 prod-a job4
139 prodstub_arm_job_create 200 prod-b job6
141 prodstub_arm_job_create 200 prod-d job8
143 prodstub_arm_job_create 200 prod-e job10
144 prodstub_arm_job_create 200 prod-f job10
147 ecs_api_service_status 200
149 cr_equal received_callbacks 0
151 ### Initial tests - no config made
152 ### GET: type ids, types, producer ids, producers, job ids, jobs
154 ecs_api_a1_get_type_ids 200 EMPTY
155 ecs_api_a1_get_type 404 test-type
157 ecs_api_edp_get_type_ids 200 EMPTY
158 if [ $ECS_VERSION == "V1-1" ]; then
159 ecs_api_edp_get_type 404 test-type
161 ecs_api_edp_get_type_2 404 test-type
164 if [ $ECS_VERSION == "V1-1" ]; then
165 ecs_api_edp_get_producer_ids 200 EMPTY
166 ecs_api_edp_get_producer 404 test-prod
168 ecs_api_edp_get_producer_ids_2 200 NOTYPE EMPTY
169 ecs_api_edp_get_producer_2 404 test-prod
171 ecs_api_edp_get_producer_status 404 test-prod
173 ecs_api_edp_delete_producer 404 test-prod
175 if [ -z "$FLAT_A1_EI" ]; then
176 ecs_api_a1_get_job_ids 404 test-type NOWNER
177 ecs_api_a1_get_job_ids 404 test-type test-owner
179 ecs_api_a1_get_job 404 test-type test-job
181 ecs_api_a1_get_job_status 404 test-type test-job
183 ecs_api_a1_get_job_ids 200 test-type NOWNER EMPTY
184 ecs_api_a1_get_job_ids 200 test-type test-owner EMPTY
186 ecs_api_a1_get_job 404 test-job
188 ecs_api_a1_get_job_status 404 test-job
191 if [ -z "$FLAT_A1_EI" ]; then
192 ecs_api_a1_delete_job 404 test-type test-job
194 ecs_api_a1_delete_job 404 test-job
197 if [ $ECS_VERSION == "V1-1" ]; then
198 ecs_api_edp_get_producer_jobs 404 test-prod
200 ecs_api_edp_get_producer_jobs_2 404 test-prod
203 if [ $ECS_VERSION == "V1-2" ]; then
204 ecs_api_edp_get_type_2 404 test-type
205 ecs_api_edp_delete_type_2 404 test-type
208 ### Setup of producer/job and testing apis ###
211 if [ $ECS_VERSION == "V1-1" ]; then
212 ecs_api_edp_put_producer 201 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
213 ecs_api_edp_put_producer 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
216 ecs_api_edp_get_type_ids 200 EMPTY
217 ecs_api_edp_get_type_2 404 type1
218 ecs_api_edp_put_producer_2 404 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
220 # Create type, delete and create again
221 ecs_api_edp_put_type_2 201 type1 testdata/ecs/ei-type-1.json
222 ecs_api_edp_get_type_2 200 type1
223 ecs_api_edp_get_type_ids 200 type1
224 ecs_api_edp_delete_type_2 204 type1
225 ecs_api_edp_get_type_2 404 type1
226 ecs_api_edp_get_type_ids 200 EMPTY
227 ecs_api_edp_put_type_2 201 type1 testdata/ecs/ei-type-1.json
228 ecs_api_edp_get_type_ids 200 type1
229 ecs_api_edp_get_type_2 200 type1 testdata/ecs/ei-type-1.json
231 ecs_api_edp_put_producer_2 201 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
232 ecs_api_edp_put_producer_2 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
234 ecs_api_edp_delete_type_2 406 type1
238 ecs_api_a1_get_type_ids 200 type1
239 if [ -z "$FLAT_A1_EI" ]; then
240 ecs_api_a1_get_type 200 type1 testdata/ecs/ei-type-1.json
242 ecs_api_a1_get_type 200 type1 testdata/ecs/empty-type.json
245 ecs_api_edp_get_type_ids 200 type1
246 if [ $ECS_VERSION == "V1-1" ]; then
247 ecs_api_edp_get_type 200 type1 testdata/ecs/ei-type-1.json prod-a
249 ecs_api_edp_get_type_2 200 type1 testdata/ecs/ei-type-1.json
252 if [ $ECS_VERSION == "V1-1" ]; then
253 ecs_api_edp_get_producer_ids 200 prod-a
255 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a
256 ecs_api_edp_get_producer_ids_2 200 type1 prod-a
257 ecs_api_edp_get_producer_ids_2 200 type2 EMPTY
260 if [ $ECS_VERSION == "V1-1" ]; then
261 ecs_api_edp_get_producer 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
263 ecs_api_edp_get_producer_2 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
266 ecs_api_edp_get_producer_status 200 prod-a ENABLED
268 ecs_api_a1_get_job_ids 200 type1 NOWNER EMPTY
269 ecs_api_a1_get_job_ids 200 type1 test-owner EMPTY
271 if [ -z "$FLAT_A1_EI" ]; then
272 ecs_api_a1_get_job 404 type1 test-job
274 ecs_api_a1_get_job_status 404 type1 test-job
276 ecs_api_a1_get_job 404 test-job
278 ecs_api_a1_get_job_status 404 test-job
280 if [ $ECS_VERSION == "V1-1" ]; then
281 ecs_api_edp_get_producer_jobs 200 prod-a EMPTY
283 ecs_api_edp_get_producer_jobs_2 200 prod-a EMPTY
286 ## Create a job for prod-a
288 if [ -z "$FLAT_A1_EI" ]; then
289 ecs_api_a1_put_job 201 type1 job1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
291 ecs_api_a1_put_job 201 job1 type1 $TARGET1 ricsim_g3_1 $STATUS1 testdata/ecs/job-template.json
294 # Check the job data in the producer
295 if [ $ECS_VERSION == "V1-1" ]; then
296 prodstub_check_jobdata 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
298 prodstub_check_jobdata_2 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
301 ecs_api_a1_get_job_ids 200 type1 NOWNER job1
302 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_1 job1
304 if [ ! -z "$FLAT_A1_EI" ]; then
305 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1
308 if [ -z "$FLAT_A1_EI" ]; then
309 ecs_api_a1_get_job 200 type1 job1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
311 ecs_api_a1_get_job_status 200 type1 job1 ENABLED
313 ecs_api_a1_get_job 200 job1 type1 $TARGET1 ricsim_g3_1 $STATUS1 testdata/ecs/job-template.json
315 ecs_api_a1_get_job_status 200 job1 ENABLED
318 prodstub_equal create/prod-a/job1 1
320 if [ $ECS_VERSION == "V1-1" ]; then
321 ecs_api_edp_get_producer_jobs 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
323 ecs_api_edp_get_producer_jobs_2 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
326 ## Create a second job for prod-a
328 if [ -z "$FLAT_A1_EI" ]; then
329 ecs_api_a1_put_job 201 type1 job2 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
331 ecs_api_a1_put_job 201 job2 type1 $TARGET2 ricsim_g3_2 $STATUS2 testdata/ecs/job-template.json
334 # Check the job data in the producer
335 if [ $ECS_VERSION == "V1-1" ]; then
336 prodstub_check_jobdata 200 prod-a job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
338 prodstub_check_jobdata_2 200 prod-a job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
340 ecs_api_a1_get_job_ids 200 type1 NOWNER job1 job2
341 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_1 job1
342 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_2 job2
343 if [ ! -z "$FLAT_A1_EI" ]; then
344 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2
347 if [ -z "$FLAT_A1_EI" ]; then
348 ecs_api_a1_get_job 200 type1 job2 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
350 ecs_api_a1_get_job_status 200 type1 job2 ENABLED
352 ecs_api_a1_get_job 200 job2 type1 $TARGET2 ricsim_g3_2 $STATUS2 testdata/ecs/job-template.json
354 ecs_api_a1_get_job_status 200 job2 ENABLED
357 prodstub_equal create/prod-a/job2 1
359 if [ $ECS_VERSION == "V1-1" ]; then
360 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
362 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
366 if [ $ECS_VERSION == "V1-1" ]; then
367 ecs_api_edp_put_producer 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2 testdata/ecs/ei-type-2.json
369 ecs_api_edp_put_type_2 201 type2 testdata/ecs/ei-type-2.json
370 ecs_api_edp_put_producer_2 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2
374 ecs_api_a1_get_type_ids 200 type1 type2
375 if [ -z "$FLAT_A1_EI" ]; then
376 ecs_api_a1_get_type 200 type1 testdata/ecs/ei-type-1.json
377 ecs_api_a1_get_type 200 type2 testdata/ecs/ei-type-2.json
379 ecs_api_a1_get_type 200 type1 testdata/ecs/empty-type.json
380 ecs_api_a1_get_type 200 type2 testdata/ecs/empty-type.json
383 ecs_api_edp_get_type_ids 200 type1 type2
384 if [ $ECS_VERSION == "V1-1" ]; then
385 ecs_api_edp_get_type 200 type1 testdata/ecs/ei-type-1.json prod-a
386 ecs_api_edp_get_type 200 type2 testdata/ecs/ei-type-2.json prod-b
388 ecs_api_edp_get_type_2 200 type1 testdata/ecs/ei-type-1.json
389 ecs_api_edp_get_type_2 200 type2 testdata/ecs/ei-type-2.json
392 if [ $ECS_VERSION == "V1-1" ]; then
393 ecs_api_edp_get_producer_ids 200 prod-a prod-b
395 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b
398 if [ $ECS_VERSION == "V1-1" ]; then
399 ecs_api_edp_get_producer 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
400 ecs_api_edp_get_producer 200 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2 testdata/ecs/ei-type-2.json
402 ecs_api_edp_get_producer_2 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
403 ecs_api_edp_get_producer_2 200 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2
406 ecs_api_edp_get_producer_status 200 prod-b ENABLED
408 ## Create job for prod-b
410 if [ -z "$FLAT_A1_EI" ]; then
411 ecs_api_a1_put_job 201 type2 job3 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
413 ecs_api_a1_put_job 201 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template.json
416 prodstub_equal create/prod-b/job3 1
418 # Check the job data in the producer
419 if [ $ECS_VERSION == "V1-1" ]; then
420 prodstub_check_jobdata 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
422 prodstub_check_jobdata_2 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
425 ecs_api_a1_get_job_ids 200 type1 NOWNER job1 job2
426 ecs_api_a1_get_job_ids 200 type2 NOWNER job3
427 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_1 job1
428 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_2 job2
429 ecs_api_a1_get_job_ids 200 type2 ricsim_g3_3 job3
431 if [ -z "$FLAT_A1_EI" ]; then
432 ecs_api_a1_get_job 200 type2 job3 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
434 ecs_api_a1_get_job_status 200 type2 job3 ENABLED
436 ecs_api_a1_get_job 200 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template.json
438 ecs_api_a1_get_job_status 200 job3 ENABLED
441 if [ $ECS_VERSION == "V1-1" ]; then
442 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
443 ecs_api_edp_get_producer_jobs 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
445 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
446 ecs_api_edp_get_producer_jobs_2 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
449 ## Setup prod-c (no types)
450 if [ $ECS_VERSION == "V1-1" ]; then
451 ecs_api_edp_put_producer 201 prod-c $CB_JOB/prod-c $CB_SV/prod-c NOTYPE
453 ecs_api_edp_put_producer_2 201 prod-c $CB_JOB/prod-c $CB_SV/prod-c NOTYPE
456 if [ $ECS_VERSION == "V1-1" ]; then
457 ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c
459 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c
462 if [ $ECS_VERSION == "V1-1" ]; then
463 ecs_api_edp_get_producer 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
464 ecs_api_edp_get_producer 200 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2 testdata/ecs/ei-type-2.json
465 ecs_api_edp_get_producer 200 prod-c $CB_JOB/prod-c $CB_SV/prod-c EMPTY
467 ecs_api_edp_get_producer_2 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
468 ecs_api_edp_get_producer_2 200 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2
469 ecs_api_edp_get_producer_2 200 prod-c $CB_JOB/prod-c $CB_SV/prod-c EMPTY
472 ecs_api_edp_get_producer_status 200 prod-c ENABLED
475 ## Delete job3 and prod-b and re-create if different order
477 # Delete job then producer
478 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2 job3
479 if [ $ECS_VERSION == "V1-1" ]; then
480 ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c
482 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c
485 if [ -z "$FLAT_A1_EI" ]; then
486 ecs_api_a1_delete_job 204 type2 job3
488 ecs_api_a1_delete_job 204 job3
491 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2
492 if [ $ECS_VERSION == "V1-1" ]; then
493 ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c
495 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c
498 ecs_api_edp_delete_producer 204 prod-b
500 ecs_api_edp_get_producer_status 404 prod-b
502 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2
503 if [ $ECS_VERSION == "V1-1" ]; then
504 ecs_api_edp_get_producer_ids 200 prod-a prod-c
506 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-c
509 prodstub_equal delete/prod-b/job3 1
511 if [ -z "$FLAT_A1_EI" ]; then
512 ecs_api_a1_put_job 404 type2 job3 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
514 if [ $ECS_VERSION == "V1-1" ]; then
515 ecs_api_a1_put_job 404 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template.json
517 ecs_api_a1_put_job 201 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template.json
518 ecs_api_a1_get_job_status 200 job3 DISABLED
522 # Put producer then job
523 if [ $ECS_VERSION == "V1-1" ]; then
524 ecs_api_edp_put_producer 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2 testdata/ecs/ei-type-2.json
526 ecs_api_edp_put_producer_2 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2
529 ecs_api_edp_get_producer_status 200 prod-b ENABLED
531 if [ -z "$FLAT_A1_EI" ]; then
532 ecs_api_a1_put_job 201 type2 job3 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
533 ecs_api_a1_get_job_status 200 type2 job3 ENABLED
535 if [ $ECS_VERSION == "V1-1" ]; then
536 ecs_api_a1_put_job 201 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template2.json
538 ecs_api_a1_put_job 200 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template2.json
540 ecs_api_a1_get_job_status 200 job3 ENABLED
543 if [ $ECS_VERSION == "V1-1" ]; then
544 prodstub_check_jobdata 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
546 prodstub_check_jobdata_2 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
549 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2 job3
550 if [ $ECS_VERSION == "V1-1" ]; then
551 ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c
553 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c
556 if [ $ECS_VERSION == "V1-1" ]; then
557 prodstub_equal create/prod-b/job3 2
559 prodstub_equal create/prod-b/job3 3
561 prodstub_equal delete/prod-b/job3 1
563 # Delete only the producer
564 ecs_api_edp_delete_producer 204 prod-b
566 ecs_api_edp_get_producer_status 404 prod-b
568 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2 job3
569 if [ $ECS_VERSION == "V1-1" ]; then
570 ecs_api_edp_get_producer_ids 200 prod-a prod-c
572 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-c
575 if [ -z "$FLAT_A1_EI" ]; then
576 ecs_api_a1_get_job_status 200 type2 job3 DISABLED
578 ecs_api_a1_get_job_status 200 job3 DISABLED
581 cr_equal received_callbacks 1 30
582 cr_equal received_callbacks?id=job3-status 1
583 cr_api_check_all_ecs_events 200 job3-status DISABLED
585 # Re-create the producer
586 if [ $ECS_VERSION == "V1-1" ]; then
587 ecs_api_edp_put_producer 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2 testdata/ecs/ei-type-2.json
589 ecs_api_edp_put_producer_2 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2
592 ecs_api_edp_get_producer_status 200 prod-b ENABLED
594 if [ -z "$FLAT_A1_EI" ]; then
595 ecs_api_a1_get_job_status 200 type2 job3 ENABLED
597 ecs_api_a1_get_job_status 200 job3 ENABLED
600 cr_equal received_callbacks 2 30
601 cr_equal received_callbacks?id=job3-status 2
602 cr_api_check_all_ecs_events 200 job3-status ENABLED
604 if [ $ECS_VERSION == "V1-1" ]; then
605 prodstub_check_jobdata 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
607 prodstub_check_jobdata_2 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
611 if [ $ECS_VERSION == "V1-1" ]; then
612 ecs_api_edp_put_producer 201 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4 testdata/ecs/ei-type-4.json
614 ecs_api_edp_put_type_2 201 type4 testdata/ecs/ei-type-1.json
615 ecs_api_edp_put_producer_2 201 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4
618 ecs_api_a1_get_job_ids 200 type4 NOWNER EMPTY
620 if [ -z "$FLAT_A1_EI" ]; then
621 ecs_api_a1_put_job 201 type4 job8 $TARGET8 ricsim_g3_4 testdata/ecs/job-template.json
623 ecs_api_a1_put_job 201 job8 type4 $TARGET8 ricsim_g3_4 $STATUS8 testdata/ecs/job-template.json
626 if [ $ECS_VERSION == "V1-1" ]; then
627 prodstub_check_jobdata 200 prod-d job8 type4 $TARGET8 ricsim_g3_4 testdata/ecs/job-template.json
629 prodstub_check_jobdata_2 200 prod-d job8 type4 $TARGET8 ricsim_g3_4 testdata/ecs/job-template.json
632 prodstub_equal create/prod-d/job8 1
633 prodstub_equal delete/prod-d/job8 0
635 ecs_api_a1_get_job_ids 200 type4 NOWNER job8
637 if [ -z "$FLAT_A1_EI" ]; then
638 ecs_api_a1_get_job_status 200 type4 job8 ENABLED
640 ecs_api_a1_get_job_status 200 job8 ENABLED
643 # Re-PUT the producer with zero types
644 if [ $ECS_VERSION == "V1-1" ]; then
645 ecs_api_edp_put_producer 200 prod-d $CB_JOB/prod-d $CB_SV/prod-d NOTYPE
647 ecs_api_edp_put_producer_2 200 prod-d $CB_JOB/prod-d $CB_SV/prod-d NOTYPE
650 if [ -z "$FLAT_A1_EI" ]; then
651 ecs_api_a1_get_job_ids 404 type4 NOWNER
653 ecs_api_a1_get_job_ids 200 type4 NOWNER job8
654 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2 job3 job8
657 if [ -z "$FLAT_A1_EI" ]; then
658 ecs_api_a1_get_job_status 200 type4 job8 DISABLED
660 ecs_api_a1_get_job_status 200 job8 DISABLED
663 cr_equal received_callbacks 3 30
664 cr_equal received_callbacks?id=job8-status 1
665 cr_api_check_all_ecs_events 200 job8-status DISABLED
667 prodstub_equal create/prod-d/job8 1
668 prodstub_equal delete/prod-d/job8 0
671 if [ $ECS_VERSION == "V1-1" ]; then
672 ecs_api_edp_put_producer 200 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4 testdata/ecs/ei-type-4.json
674 ecs_api_edp_put_type_2 200 type4 testdata/ecs/ei-type-4.json
675 ecs_api_edp_put_producer_2 200 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4
678 if [ -z "$FLAT_A1_EI" ]; then
679 ecs_api_a1_get_job_ids 404 type4 NOWNER
681 ecs_api_a1_get_job_ids 200 type4 NOWNER job8
682 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2 job3 job8
685 if [ -z "$FLAT_A1_EI" ]; then
686 ecs_api_a1_get_job_status 200 type4 job8 ENABLED
688 ecs_api_a1_get_job_status 200 job8 ENABLED
691 ecs_api_edp_get_producer_status 200 prod-a ENABLED
692 ecs_api_edp_get_producer_status 200 prod-b ENABLED
693 ecs_api_edp_get_producer_status 200 prod-c ENABLED
694 ecs_api_edp_get_producer_status 200 prod-d ENABLED
696 cr_equal received_callbacks 4 30
697 cr_equal received_callbacks?id=job8-status 2
698 cr_api_check_all_ecs_events 200 job8-status ENABLED
700 prodstub_equal create/prod-d/job8 2
701 prodstub_equal delete/prod-d/job8 0
705 if [ $ECS_VERSION == "V1-1" ]; then
706 ecs_api_edp_put_producer 201 prod-e $CB_JOB/prod-e $CB_SV/prod-e type6 testdata/ecs/ei-type-6.json
708 ecs_api_edp_put_type_2 201 type6 testdata/ecs/ei-type-6.json
709 ecs_api_edp_put_producer_2 201 prod-e $CB_JOB/prod-e $CB_SV/prod-e type6
712 ecs_api_a1_get_job_ids 200 type6 NOWNER EMPTY
714 if [ -z "$FLAT_A1_EI" ]; then
715 ecs_api_a1_put_job 201 type6 job10 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
717 ecs_api_a1_put_job 201 job10 type6 $TARGET10 ricsim_g3_4 $STATUS10 testdata/ecs/job-template.json
720 if [ $ECS_VERSION == "V1-1" ]; then
721 prodstub_check_jobdata 200 prod-e job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
723 prodstub_check_jobdata_2 200 prod-e job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
726 prodstub_equal create/prod-e/job10 1
727 prodstub_equal delete/prod-e/job10 0
729 ecs_api_a1_get_job_ids 200 type6 NOWNER job10
731 if [ -z "$FLAT_A1_EI" ]; then
732 ecs_api_a1_get_job_status 200 type6 job10 ENABLED
734 ecs_api_a1_get_job_status 200 job10 ENABLED
738 if [ $ECS_VERSION == "V1-1" ]; then
739 ecs_api_edp_put_producer 201 prod-f $CB_JOB/prod-f $CB_SV/prod-f type6 testdata/ecs/ei-type-6.json
741 ecs_api_edp_put_type_2 200 type6 testdata/ecs/ei-type-6.json
742 ecs_api_edp_put_producer_2 201 prod-f $CB_JOB/prod-f $CB_SV/prod-f type6
745 ecs_api_a1_get_job_ids 200 type6 NOWNER job10
747 if [ $ECS_VERSION == "V1-1" ]; then
748 prodstub_check_jobdata 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
750 prodstub_check_jobdata_2 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
753 prodstub_equal create/prod-f/job10 1
754 prodstub_equal delete/prod-f/job10 0
756 ecs_api_a1_get_job_ids 200 type6 NOWNER job10
758 if [ -z "$FLAT_A1_EI" ]; then
759 ecs_api_a1_get_job_status 200 type6 job10 ENABLED
761 ecs_api_a1_get_job_status 200 job10 ENABLED
764 ## Status updates prod-a and jobs
766 if [ $ECS_VERSION == "V1-1" ]; then
767 ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c prod-d prod-e prod-f
769 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c prod-d prod-e prod-f
772 ecs_api_edp_get_producer_status 200 prod-a ENABLED
773 ecs_api_edp_get_producer_status 200 prod-b ENABLED
774 ecs_api_edp_get_producer_status 200 prod-c ENABLED
775 ecs_api_edp_get_producer_status 200 prod-d ENABLED
776 ecs_api_edp_get_producer_status 200 prod-e ENABLED
777 ecs_api_edp_get_producer_status 200 prod-f ENABLED
779 # Arm producer prod-a for supervision failure
780 prodstub_arm_producer 200 prod-a 400
782 # Wait for producer prod-a to go disabled
783 ecs_api_edp_get_producer_status 200 prod-a DISABLED 360
785 if [ $ECS_VERSION == "V1-1" ]; then
786 ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c prod-d prod-e prod-f
788 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c prod-d prod-e prod-f
791 ecs_api_edp_get_producer_status 200 prod-a DISABLED
792 ecs_api_edp_get_producer_status 200 prod-b ENABLED
793 ecs_api_edp_get_producer_status 200 prod-c ENABLED
794 ecs_api_edp_get_producer_status 200 prod-d ENABLED
795 ecs_api_edp_get_producer_status 200 prod-e ENABLED
796 ecs_api_edp_get_producer_status 200 prod-f ENABLED
799 if [ -z "$FLAT_A1_EI" ]; then
800 ecs_api_a1_get_job_status 200 type1 job1 ENABLED
801 ecs_api_a1_get_job_status 200 type1 job2 ENABLED
802 ecs_api_a1_get_job_status 200 type2 job3 ENABLED
803 ecs_api_a1_get_job_status 200 type4 job8 ENABLED
804 ecs_api_a1_get_job_status 200 type6 job10 ENABLED
806 ecs_api_a1_get_job_status 200 job1 ENABLED
807 ecs_api_a1_get_job_status 200 job2 ENABLED
808 ecs_api_a1_get_job_status 200 job3 ENABLED
809 ecs_api_a1_get_job_status 200 job8 ENABLED
810 ecs_api_a1_get_job_status 200 job10 ENABLED
813 # Arm producer prod-a for supervision
814 prodstub_arm_producer 200 prod-a 200
816 # Wait for producer prod-a to go enabled
817 ecs_api_edp_get_producer_status 200 prod-a ENABLED 360
819 if [ $ECS_VERSION == "V1-1" ]; then
820 ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c prod-d prod-e prod-f
822 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c prod-d prod-e prod-f
825 ecs_api_edp_get_producer_status 200 prod-a ENABLED
826 ecs_api_edp_get_producer_status 200 prod-b ENABLED
827 ecs_api_edp_get_producer_status 200 prod-c ENABLED
828 ecs_api_edp_get_producer_status 200 prod-d ENABLED
829 ecs_api_edp_get_producer_status 200 prod-e ENABLED
830 ecs_api_edp_get_producer_status 200 prod-f ENABLED
832 if [ -z "$FLAT_A1_EI" ]; then
833 ecs_api_a1_get_job_status 200 type1 job1 ENABLED
834 ecs_api_a1_get_job_status 200 type1 job2 ENABLED
835 ecs_api_a1_get_job_status 200 type2 job3 ENABLED
836 ecs_api_a1_get_job_status 200 type4 job8 ENABLED
837 ecs_api_a1_get_job_status 200 type6 job10 ENABLED
839 ecs_api_a1_get_job_status 200 job1 ENABLED
840 ecs_api_a1_get_job_status 200 job2 ENABLED
841 ecs_api_a1_get_job_status 200 job3 ENABLED
842 ecs_api_a1_get_job_status 200 job8 ENABLED
843 ecs_api_a1_get_job_status 200 job10 ENABLED
846 # Arm producer prod-a for supervision failure
847 prodstub_arm_producer 200 prod-a 400
849 # Wait for producer prod-a to go disabled
850 ecs_api_edp_get_producer_status 200 prod-a DISABLED 360
852 if [ $ECS_VERSION == "V1-1" ]; then
853 ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c prod-d prod-e prod-f
855 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c prod-d prod-e prod-f
858 ecs_api_edp_get_producer_status 200 prod-a DISABLED
859 ecs_api_edp_get_producer_status 200 prod-b ENABLED
860 ecs_api_edp_get_producer_status 200 prod-c ENABLED
861 ecs_api_edp_get_producer_status 200 prod-d ENABLED
862 ecs_api_edp_get_producer_status 200 prod-e ENABLED
863 ecs_api_edp_get_producer_status 200 prod-f ENABLED
865 if [ -z "$FLAT_A1_EI" ]; then
866 ecs_api_a1_get_job_status 200 type1 job1 ENABLED
867 ecs_api_a1_get_job_status 200 type1 job2 ENABLED
868 ecs_api_a1_get_job_status 200 type2 job3 ENABLED
869 ecs_api_a1_get_job_status 200 type4 job8 ENABLED
870 ecs_api_a1_get_job_status 200 type6 job10 ENABLED
872 ecs_api_a1_get_job_status 200 job1 ENABLED
873 ecs_api_a1_get_job_status 200 job2 ENABLED
874 ecs_api_a1_get_job_status 200 job3 ENABLED
875 ecs_api_a1_get_job_status 200 job8 ENABLED
876 ecs_api_a1_get_job_status 200 job10 ENABLED
879 # Wait for producer prod-a to be removed
880 ecs_equal json:ei-producer/v1/eiproducers 5 1000
882 if [ $ECS_VERSION == "V1-1" ]; then
883 ecs_api_edp_get_producer_ids 200 prod-b prod-c prod-d prod-e prod-f
885 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-b prod-c prod-d prod-e prod-f
889 ecs_api_edp_get_producer_status 404 prod-a
890 ecs_api_edp_get_producer_status 200 prod-b ENABLED
891 ecs_api_edp_get_producer_status 200 prod-c ENABLED
892 ecs_api_edp_get_producer_status 200 prod-d ENABLED
893 ecs_api_edp_get_producer_status 200 prod-e ENABLED
894 ecs_api_edp_get_producer_status 200 prod-f ENABLED
896 if [ -z "$FLAT_A1_EI" ]; then
897 ecs_api_a1_get_job_status 200 type1 job1 DISABLED
898 ecs_api_a1_get_job_status 200 type1 job2 DISABLED
899 ecs_api_a1_get_job_status 200 type2 job3 ENABLED
900 ecs_api_a1_get_job_status 200 type4 job8 ENABLED
901 ecs_api_a1_get_job_status 200 type6 job10 ENABLED
903 ecs_api_a1_get_job_status 200 job1 DISABLED
904 ecs_api_a1_get_job_status 200 job2 DISABLED
905 ecs_api_a1_get_job_status 200 job3 ENABLED
906 ecs_api_a1_get_job_status 200 job8 ENABLED
907 ecs_api_a1_get_job_status 200 job10 ENABLED
910 cr_equal received_callbacks 6 30
911 cr_equal received_callbacks?id=job1-status 1
912 cr_equal received_callbacks?id=job2-status 1
914 cr_api_check_all_ecs_events 200 job1-status DISABLED
915 cr_api_check_all_ecs_events 200 job2-status DISABLED
918 # Arm producer prod-e for supervision failure
919 prodstub_arm_producer 200 prod-e 400
921 ecs_api_edp_get_producer_status 200 prod-e DISABLED 1000
923 if [ $ECS_VERSION == "V1-1" ]; then
924 ecs_api_edp_get_producer_ids 200 prod-b prod-c prod-d prod-e prod-f
926 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-b prod-c prod-d prod-e prod-f
929 ecs_api_edp_get_producer_status 404 prod-a
930 ecs_api_edp_get_producer_status 200 prod-b ENABLED
931 ecs_api_edp_get_producer_status 200 prod-c ENABLED
932 ecs_api_edp_get_producer_status 200 prod-d ENABLED
933 ecs_api_edp_get_producer_status 200 prod-e DISABLED
934 ecs_api_edp_get_producer_status 200 prod-f ENABLED
936 if [ -z "$FLAT_A1_EI" ]; then
937 ecs_api_a1_get_job_status 200 type1 job1 DISABLED
938 ecs_api_a1_get_job_status 200 type1 job2 DISABLED
939 ecs_api_a1_get_job_status 200 type2 job3 ENABLED
940 ecs_api_a1_get_job_status 200 type4 job8 ENABLED
941 ecs_api_a1_get_job_status 200 type6 job10 ENABLED
943 ecs_api_a1_get_job_status 200 job1 DISABLED
944 ecs_api_a1_get_job_status 200 job2 DISABLED
945 ecs_api_a1_get_job_status 200 job3 ENABLED
946 ecs_api_a1_get_job_status 200 job8 ENABLED
947 ecs_api_a1_get_job_status 200 job10 ENABLED
950 #Disable create for job10 in prod-e
951 prodstub_arm_job_create 200 prod-e job10 400
953 #Update tjob 10 - only prod-f will be updated
954 if [ -z "$FLAT_A1_EI" ]; then
955 ecs_api_a1_put_job 200 type6 job10 $TARGET10 ricsim_g3_4 testdata/ecs/job-template2.json
957 ecs_api_a1_put_job 200 job10 type6 $TARGET10 ricsim_g3_4 $STATUS10 testdata/ecs/job-template2.json
959 #Reset producer and job responses
960 prodstub_arm_producer 200 prod-e 200
961 prodstub_arm_job_create 200 prod-e job10 200
963 ecs_api_edp_get_producer_status 200 prod-e ENABLED 360
965 if [ $ECS_VERSION == "V1-1" ]; then
966 ecs_api_edp_get_producer_ids 200 prod-b prod-c prod-d prod-e prod-f
968 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-b prod-c prod-d prod-e prod-f
971 #Wait for job to be updated
974 if [ $ECS_VERSION == "V1-1" ]; then
975 prodstub_check_jobdata 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template2.json
977 prodstub_check_jobdata_2 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template2.json
980 prodstub_arm_producer 200 prod-f 400
982 ecs_api_edp_get_producer_status 200 prod-f DISABLED 360
984 ecs_equal json:ei-producer/v1/eiproducers 4 1000
986 if [ $ECS_VERSION == "V1-1" ]; then
987 ecs_api_edp_get_producer_ids 200 prod-b prod-c prod-d prod-e
989 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-b prod-c prod-d prod-e
992 ecs_api_edp_get_producer_status 404 prod-a
993 ecs_api_edp_get_producer_status 200 prod-b ENABLED
994 ecs_api_edp_get_producer_status 200 prod-c ENABLED
995 ecs_api_edp_get_producer_status 200 prod-d ENABLED
996 ecs_api_edp_get_producer_status 200 prod-e ENABLED
997 ecs_api_edp_get_producer_status 404 prod-f
999 if [ -z "$FLAT_A1_EI" ]; then
1000 ecs_api_a1_get_job_status 200 type1 job1 DISABLED
1001 ecs_api_a1_get_job_status 200 type1 job2 DISABLED
1002 ecs_api_a1_get_job_status 200 type2 job3 ENABLED
1003 ecs_api_a1_get_job_status 200 type4 job8 ENABLED
1004 ecs_api_a1_get_job_status 200 type6 job10 ENABLED
1006 ecs_api_a1_get_job_status 200 job1 DISABLED
1007 ecs_api_a1_get_job_status 200 job2 DISABLED
1008 ecs_api_a1_get_job_status 200 job3 ENABLED
1009 ecs_api_a1_get_job_status 200 job8 ENABLED
1010 ecs_api_a1_get_job_status 200 job10 ENABLED
1013 cr_equal received_callbacks 6
1019 #### TEST COMPLETE ####
1023 auto_clean_environment