Added function test of ecs type subscriptions
[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 ORAN-E-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 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
131     #Type registration status callbacks
132     TYPESTATUS1="$CR_SERVICE_PATH/type-status1"
133     TYPESTATUS2="$CR_SERVICE_PATH/type-status2"
134
135     ecs_api_idc_put_subscription 201 subscription-id-1 owner1 $TYPESTATUS1
136
137     ecs_api_idc_get_subscription_ids 200 NOOWNER subscription-id-1
138
139     ecs_api_idc_get_subscription_ids 200 owner1 subscription-id-1
140
141     ecs_api_idc_get_subscription_ids 200 test EMPTY
142
143     ecs_api_idc_get_subscription 200 subscription-id-1 owner1 $TYPESTATUS1
144
145     ecs_api_idc_get_subscription 404 test
146
147     ecs_api_idc_put_subscription 200 subscription-id-1 owner1 $TYPESTATUS1
148
149     ecs_api_idc_put_subscription 200 subscription-id-1 owner1 $TYPESTATUS1
150
151     ecs_api_idc_put_subscription 201 subscription-id-2 owner2 $TYPESTATUS2
152
153     ecs_api_idc_get_subscription_ids 200 NOOWNER subscription-id-1 subscription-id-2
154
155     ecs_api_idc_get_subscription_ids 200 owner1 subscription-id-1
156
157     ecs_api_idc_get_subscription_ids 200 owner2 subscription-id-2
158
159     ecs_api_idc_get_subscription 200 subscription-id-1 owner1 $TYPESTATUS1
160     ecs_api_idc_get_subscription 200 subscription-id-2 owner2 $TYPESTATUS2
161
162     ecs_api_idc_delete_subscription 204 subscription-id-2
163
164     ecs_api_idc_get_subscription_ids 200 NOOWNER subscription-id-1
165
166     ecs_api_edp_put_type_2 201 type1 testdata/ecs/ei-type-1.json
167
168     cr_equal received_callbacks 1 30
169     cr_equal received_callbacks?id=type-status1 1
170     cr_api_check_all_ecs_subscription_events 200 type-status1 type1 testdata/ecs/ei-type-1.json REGISTERED
171
172     ecs_api_edp_delete_type_2 204 type1
173
174     cr_equal received_callbacks 2 30
175     cr_equal received_callbacks?id=type-status1 2
176     cr_api_check_all_ecs_subscription_events 200 type-status1 type1 testdata/ecs/ei-type-1.json DEREGISTERED
177
178     ecs_api_idc_put_subscription 201 subscription-id-2 owner2 $TYPESTATUS2
179     ecs_api_idc_get_subscription_ids 200 NOOWNER subscription-id-1 subscription-id-2
180
181     ecs_api_edp_put_type_2 201 type1 testdata/ecs/ei-type-1.json
182
183     cr_equal received_callbacks 4 30
184     cr_equal received_callbacks?id=type-status1 3
185     cr_equal received_callbacks?id=type-status2 1
186     cr_api_check_all_ecs_subscription_events 200 type-status1 type1 testdata/ecs/ei-type-1.json REGISTERED
187
188     ecs_api_idc_delete_subscription 204 subscription-id-2
189
190     ecs_api_edp_delete_type_2 204 type1
191
192     cr_equal received_callbacks 5 30
193     cr_equal received_callbacks?id=type-status1 4
194     cr_equal received_callbacks?id=type-status2 1
195     cr_api_check_all_ecs_subscription_events 200 type-status1 type1 testdata/ecs/ei-type-1.json DEREGISTERED
196
197     cr_api_reset
198 fi
199
200 ### Setup prodstub sim to accept calls for producers, types and jobs
201 ## prod-a type1
202 ## prod-b type1 and type2
203 ## prod-c no-type
204 ## prod-d type4
205 ## prod-e type6
206 ## prod-f type6
207
208 ## job1 -> prod-a
209 ## job2 -> prod-a
210 ## job3 -> prod-b
211 ## job4 -> prod-a
212 ## job6 -> prod-b
213 ## job8 -> prod-d
214 ## job10 -> prod-e and prod-f
215
216 prodstub_arm_producer 200 prod-a
217 prodstub_arm_producer 200 prod-b
218 prodstub_arm_producer 200 prod-c
219 prodstub_arm_producer 200 prod-d
220 prodstub_arm_producer 200 prod-e
221 prodstub_arm_producer 200 prod-f
222
223 prodstub_arm_type 200 prod-a type1
224 prodstub_arm_type 200 prod-b type2
225 prodstub_arm_type 200 prod-b type3
226 prodstub_arm_type 200 prod-d type4
227 prodstub_arm_type 200 prod-e type6
228 prodstub_arm_type 200 prod-f type6
229
230 prodstub_disarm_type 200 prod-b type3
231 prodstub_arm_type 200 prod-b type1
232 prodstub_disarm_type 200 prod-b type1
233
234
235 prodstub_arm_job_create 200 prod-a job1
236 prodstub_arm_job_create 200 prod-a job2
237 prodstub_arm_job_create 200 prod-b job3
238
239 prodstub_arm_job_delete 200 prod-a job1
240 prodstub_arm_job_delete 200 prod-a job2
241 prodstub_arm_job_delete 200 prod-b job3
242
243 prodstub_arm_job_create 200 prod-b job4
244 prodstub_arm_job_create 200 prod-a job4
245
246 prodstub_arm_job_create 200 prod-b job6
247
248 prodstub_arm_job_create 200 prod-d job8
249
250 prodstub_arm_job_create 200 prod-e job10
251 prodstub_arm_job_create 200 prod-f job10
252
253 ### ecs status
254 ecs_api_service_status 200
255
256 cr_equal received_callbacks 0
257
258 ### Initial tests - no config made
259 ### GET: type ids, types, producer ids, producers, job ids, jobs
260 ### DELETE: jobs
261 ecs_api_a1_get_type_ids 200 EMPTY
262 ecs_api_a1_get_type 404 test-type
263
264 ecs_api_edp_get_type_ids 200 EMPTY
265 if [ $ECS_VERSION == "V1-1" ]; then
266     ecs_api_edp_get_type 404 test-type
267 else
268     ecs_api_edp_get_type_2 404 test-type
269 fi
270
271 if [ $ECS_VERSION == "V1-1" ]; then
272     ecs_api_edp_get_producer_ids 200 EMPTY
273     ecs_api_edp_get_producer 404 test-prod
274 else
275     ecs_api_edp_get_producer_ids_2 200 NOTYPE EMPTY
276     ecs_api_edp_get_producer_2 404 test-prod
277 fi
278 ecs_api_edp_get_producer_status 404 test-prod
279
280 ecs_api_edp_delete_producer 404 test-prod
281
282 if [  -z "$FLAT_A1_EI" ]; then
283     ecs_api_a1_get_job_ids 404 test-type NOWNER
284     ecs_api_a1_get_job_ids 404 test-type test-owner
285
286     ecs_api_a1_get_job 404 test-type test-job
287
288     ecs_api_a1_get_job_status 404 test-type test-job
289 else
290     ecs_api_a1_get_job_ids 200 test-type NOWNER EMPTY
291     ecs_api_a1_get_job_ids 200 test-type test-owner EMPTY
292
293     ecs_api_a1_get_job 404 test-job
294
295     ecs_api_a1_get_job_status 404 test-job
296 fi
297
298 if [  -z "$FLAT_A1_EI" ]; then
299     ecs_api_a1_delete_job 404 test-type test-job
300 else
301     ecs_api_a1_delete_job 404 test-job
302 fi
303
304 if [ $ECS_VERSION == "V1-1" ]; then
305     ecs_api_edp_get_producer_jobs 404 test-prod
306 else
307     ecs_api_edp_get_producer_jobs_2 404 test-prod
308 fi
309
310 if [ $ECS_VERSION == "V1-2" ]; then
311     ecs_api_edp_get_type_2 404 test-type
312     ecs_api_edp_delete_type_2 404 test-type
313 fi
314
315 ### Setup of producer/job and testing apis ###
316
317 ## Setup prod-a
318 if [ $ECS_VERSION == "V1-1" ]; then
319     ecs_api_edp_put_producer 201 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
320     ecs_api_edp_put_producer 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
321 else
322     #V1-2
323     ecs_api_edp_get_type_ids 200 EMPTY
324     ecs_api_edp_get_type_2 404 type1
325     ecs_api_edp_put_producer_2 404 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
326
327     # Create type, delete and create again
328     ecs_api_edp_put_type_2 201 type1 testdata/ecs/ei-type-1.json
329     ecs_api_edp_get_type_2 200 type1
330     ecs_api_edp_get_type_ids 200 type1
331     ecs_api_edp_delete_type_2 204 type1
332     ecs_api_edp_get_type_2 404 type1
333     ecs_api_edp_get_type_ids 200 EMPTY
334     ecs_api_edp_put_type_2 201 type1 testdata/ecs/ei-type-1.json
335     ecs_api_edp_get_type_ids 200 type1
336     ecs_api_edp_get_type_2 200 type1 testdata/ecs/ei-type-1.json
337
338     ecs_api_edp_put_producer_2 201 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
339     ecs_api_edp_put_producer_2 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
340
341     if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
342         cr_equal received_callbacks 3 30
343         cr_equal received_callbacks?id=type-status1 3
344         cr_api_check_all_ecs_subscription_events 200 type-status1 type1 testdata/ecs/ei-type-1.json REGISTERED type1 testdata/ecs/ei-type-1.json DEREGISTERED type1 testdata/ecs/ei-type-1.json REGISTERED
345     else
346         cr_equal received_callbacks 0
347     fi
348 fi
349
350
351 ecs_api_a1_get_type_ids 200 type1
352 if [  -z "$FLAT_A1_EI" ]; then
353     ecs_api_a1_get_type 200 type1 testdata/ecs/ei-type-1.json
354 else
355     ecs_api_a1_get_type 200 type1 testdata/ecs/empty-type.json
356 fi
357
358 ecs_api_edp_get_type_ids 200 type1
359 if [ $ECS_VERSION == "V1-1" ]; then
360     ecs_api_edp_get_type 200 type1 testdata/ecs/ei-type-1.json prod-a
361 else
362     ecs_api_edp_get_type_2 200 type1 testdata/ecs/ei-type-1.json
363 fi
364
365 if [ $ECS_VERSION == "V1-1" ]; then
366     ecs_api_edp_get_producer_ids 200 prod-a
367 else
368     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a
369     ecs_api_edp_get_producer_ids_2 200 type1 prod-a
370     ecs_api_edp_get_producer_ids_2 200 type2 EMPTY
371 fi
372
373 if [ $ECS_VERSION == "V1-1" ]; then
374     ecs_api_edp_get_producer 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
375 else
376     ecs_api_edp_get_producer_2 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
377 fi
378
379 ecs_api_edp_get_producer_status 200 prod-a ENABLED
380
381 ecs_api_a1_get_job_ids 200 type1 NOWNER EMPTY
382 ecs_api_a1_get_job_ids 200 type1 test-owner EMPTY
383
384 if [  -z "$FLAT_A1_EI" ]; then
385     ecs_api_a1_get_job 404 type1 test-job
386
387     ecs_api_a1_get_job_status 404 type1 test-job
388 else
389     ecs_api_a1_get_job 404 test-job
390
391     ecs_api_a1_get_job_status 404 test-job
392 fi
393 if [ $ECS_VERSION == "V1-1" ]; then
394     ecs_api_edp_get_producer_jobs 200 prod-a EMPTY
395 else
396     ecs_api_edp_get_producer_jobs_2 200 prod-a EMPTY
397 fi
398
399 ## Create a job for prod-a
400 ## job1 - prod-a
401 if [  -z "$FLAT_A1_EI" ]; then
402     ecs_api_a1_put_job 201 type1 job1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
403 else
404     ecs_api_a1_put_job 201 job1 type1 $TARGET1 ricsim_g3_1 $STATUS1 testdata/ecs/job-template.json
405 fi
406
407 # Check the job data in the producer
408 if [ $ECS_VERSION == "V1-1" ]; then
409     prodstub_check_jobdata 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
410 else
411     if [[ "$ECS_FEATURE_LEVEL" != *"INFO-TYPES"* ]]; then
412         prodstub_check_jobdata_2 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
413     else
414         prodstub_check_jobdata_3 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
415     fi
416 fi
417
418 ecs_api_a1_get_job_ids 200 type1 NOWNER job1
419 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_1 job1
420
421 if [ ! -z "$FLAT_A1_EI" ]; then
422     ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1
423 fi
424
425 if [  -z "$FLAT_A1_EI" ]; then
426     ecs_api_a1_get_job 200 type1 job1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
427
428     ecs_api_a1_get_job_status 200 type1 job1 ENABLED
429 else
430     ecs_api_a1_get_job 200 job1 type1 $TARGET1 ricsim_g3_1 $STATUS1 testdata/ecs/job-template.json
431
432     ecs_api_a1_get_job_status 200 job1 ENABLED
433 fi
434
435 prodstub_equal create/prod-a/job1 1
436
437 if [ $ECS_VERSION == "V1-1" ]; then
438     ecs_api_edp_get_producer_jobs 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
439 else
440     ecs_api_edp_get_producer_jobs_2 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
441 fi
442
443 ## Create a second job for prod-a
444 ## job2 - prod-a
445 if [  -z "$FLAT_A1_EI" ]; then
446     ecs_api_a1_put_job 201 type1 job2 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
447 else
448     ecs_api_a1_put_job 201 job2 type1 $TARGET2 ricsim_g3_2 $STATUS2 testdata/ecs/job-template.json
449 fi
450
451 # Check the job data in the producer
452 if [ $ECS_VERSION == "V1-1" ]; then
453     prodstub_check_jobdata 200 prod-a job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
454 else
455     if [[ "$ECS_FEATURE_LEVEL" != *"INFO-TYPES"* ]]; then
456         prodstub_check_jobdata_2 200 prod-a job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
457     else
458         prodstub_check_jobdata_3 200 prod-a job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
459     fi
460 fi
461 ecs_api_a1_get_job_ids 200 type1 NOWNER job1 job2
462 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_1 job1
463 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_2 job2
464 if [ ! -z "$FLAT_A1_EI" ]; then
465     ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2
466 fi
467
468 if [  -z "$FLAT_A1_EI" ]; then
469     ecs_api_a1_get_job 200 type1 job2 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
470
471     ecs_api_a1_get_job_status 200 type1 job2 ENABLED
472 else
473     ecs_api_a1_get_job 200 job2 type1 $TARGET2 ricsim_g3_2 $STATUS2 testdata/ecs/job-template.json
474
475     ecs_api_a1_get_job_status 200 job2 ENABLED
476 fi
477
478 prodstub_equal create/prod-a/job2 1
479
480 if [ $ECS_VERSION == "V1-1" ]; then
481     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
482 else
483     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
484 fi
485
486 ## Setup prod-b
487 if [ $ECS_VERSION == "V1-1" ]; then
488     ecs_api_edp_put_producer 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2 testdata/ecs/ei-type-2.json
489 else
490     ecs_api_edp_put_type_2 201 type2 testdata/ecs/ei-type-2.json
491     ecs_api_edp_put_producer_2 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2
492     if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
493         cr_equal received_callbacks 4 30
494         cr_equal received_callbacks?id=type-status1 4
495         cr_api_check_all_ecs_subscription_events 200 type-status1 type2 testdata/ecs/ei-type-2.json REGISTERED
496     else
497         cr_equal received_callbacks 0
498     fi
499 fi
500
501
502 ecs_api_a1_get_type_ids 200 type1 type2
503 if [  -z "$FLAT_A1_EI" ]; then
504     ecs_api_a1_get_type 200 type1 testdata/ecs/ei-type-1.json
505     ecs_api_a1_get_type 200 type2 testdata/ecs/ei-type-2.json
506 else
507     ecs_api_a1_get_type 200 type1 testdata/ecs/empty-type.json
508     ecs_api_a1_get_type 200 type2 testdata/ecs/empty-type.json
509 fi
510
511 ecs_api_edp_get_type_ids 200 type1 type2
512 if [ $ECS_VERSION == "V1-1" ]; then
513     ecs_api_edp_get_type 200 type1 testdata/ecs/ei-type-1.json prod-a
514     ecs_api_edp_get_type 200 type2 testdata/ecs/ei-type-2.json prod-b
515 else
516     ecs_api_edp_get_type_2 200 type1 testdata/ecs/ei-type-1.json
517     ecs_api_edp_get_type_2 200 type2 testdata/ecs/ei-type-2.json
518 fi
519
520 if [ $ECS_VERSION == "V1-1" ]; then
521     ecs_api_edp_get_producer_ids 200 prod-a prod-b
522 else
523     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b
524 fi
525
526 if [ $ECS_VERSION == "V1-1" ]; then
527     ecs_api_edp_get_producer 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
528     ecs_api_edp_get_producer 200 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2 testdata/ecs/ei-type-2.json
529 else
530     ecs_api_edp_get_producer_2 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
531     ecs_api_edp_get_producer_2 200 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2
532 fi
533
534 ecs_api_edp_get_producer_status 200 prod-b ENABLED
535
536 ## Create job for prod-b
537 ##  job3 - prod-b
538 if [  -z "$FLAT_A1_EI" ]; then
539     ecs_api_a1_put_job 201 type2 job3 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
540 else
541     ecs_api_a1_put_job 201 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template.json
542 fi
543
544 prodstub_equal create/prod-b/job3 1
545
546 # Check the job data in the producer
547 if [ $ECS_VERSION == "V1-1" ]; then
548     prodstub_check_jobdata 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
549 else
550     if [[ "$ECS_FEATURE_LEVEL" != *"INFO-TYPES"* ]]; then
551         prodstub_check_jobdata_2 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
552     else
553         prodstub_check_jobdata_3 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
554     fi
555 fi
556
557 ecs_api_a1_get_job_ids 200 type1 NOWNER job1 job2
558 ecs_api_a1_get_job_ids 200 type2 NOWNER job3
559 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_1 job1
560 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_2 job2
561 ecs_api_a1_get_job_ids 200 type2 ricsim_g3_3 job3
562
563 if [  -z "$FLAT_A1_EI" ]; then
564     ecs_api_a1_get_job 200 type2 job3 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
565
566     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
567 else
568     ecs_api_a1_get_job 200 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template.json
569
570     ecs_api_a1_get_job_status 200 job3 ENABLED
571 fi
572
573 if [ $ECS_VERSION == "V1-1" ]; then
574     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
575     ecs_api_edp_get_producer_jobs 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
576 else
577     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
578     ecs_api_edp_get_producer_jobs_2 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
579 fi
580
581 ## Setup prod-c (no types)
582 if [ $ECS_VERSION == "V1-1" ]; then
583     ecs_api_edp_put_producer 201 prod-c $CB_JOB/prod-c $CB_SV/prod-c NOTYPE
584 else
585     ecs_api_edp_put_producer_2 201 prod-c $CB_JOB/prod-c $CB_SV/prod-c NOTYPE
586 fi
587
588 if [ $ECS_VERSION == "V1-1" ]; then
589     ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c
590 else
591     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c
592 fi
593
594 if [ $ECS_VERSION == "V1-1" ]; then
595     ecs_api_edp_get_producer 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
596     ecs_api_edp_get_producer 200 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2 testdata/ecs/ei-type-2.json
597     ecs_api_edp_get_producer 200 prod-c $CB_JOB/prod-c $CB_SV/prod-c EMPTY
598 else
599     ecs_api_edp_get_producer_2 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
600     ecs_api_edp_get_producer_2 200 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2
601     ecs_api_edp_get_producer_2 200 prod-c $CB_JOB/prod-c $CB_SV/prod-c EMPTY
602 fi
603
604 ecs_api_edp_get_producer_status 200 prod-c ENABLED
605
606
607 ## Delete job3 and prod-b and re-create if different order
608
609 # Delete job then producer
610 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2 job3
611 if [ $ECS_VERSION == "V1-1" ]; then
612     ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c
613 else
614     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c
615 fi
616
617 if [  -z "$FLAT_A1_EI" ]; then
618     ecs_api_a1_delete_job 204 type2 job3
619 else
620     ecs_api_a1_delete_job 204 job3
621 fi
622
623 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2
624 if [ $ECS_VERSION == "V1-1" ]; then
625     ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c
626 else
627     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c
628 fi
629
630 ecs_api_edp_delete_producer 204 prod-b
631
632 ecs_api_edp_get_producer_status 404 prod-b
633
634 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2
635 if [ $ECS_VERSION == "V1-1" ]; then
636     ecs_api_edp_get_producer_ids 200 prod-a prod-c
637 else
638     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-c
639 fi
640
641 prodstub_equal delete/prod-b/job3 1
642
643 if [  -z "$FLAT_A1_EI" ]; then
644     ecs_api_a1_put_job 404 type2 job3 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
645 else
646     if [ $ECS_VERSION == "V1-1" ]; then
647         ecs_api_a1_put_job 404 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template.json
648     else
649         ecs_api_a1_put_job 201 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template.json
650         ecs_api_a1_get_job_status 200 job3 DISABLED
651     fi
652 fi
653
654 # Put producer then job
655 if [ $ECS_VERSION == "V1-1" ]; then
656     ecs_api_edp_put_producer 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2 testdata/ecs/ei-type-2.json
657 else
658     ecs_api_edp_put_producer_2 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2
659 fi
660
661 ecs_api_edp_get_producer_status 200 prod-b ENABLED
662
663 if [  -z "$FLAT_A1_EI" ]; then
664     ecs_api_a1_put_job 201 type2 job3 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
665     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
666 else
667     if [ $ECS_VERSION == "V1-1" ]; then
668         ecs_api_a1_put_job 201 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template2.json
669     else
670         ecs_api_a1_put_job 200 job3 type2 $TARGET3 ricsim_g3_3 $STATUS3 testdata/ecs/job-template2.json
671     fi
672     ecs_api_a1_get_job_status 200 job3 ENABLED
673 fi
674
675 if [ $ECS_VERSION == "V1-1" ]; then
676     prodstub_check_jobdata 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
677 else
678     if [[ "$ECS_FEATURE_LEVEL" != *"INFO-TYPES"* ]]; then
679         prodstub_check_jobdata_2 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
680     else
681         prodstub_check_jobdata_3 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
682     fi
683 fi
684
685 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2 job3
686 if [ $ECS_VERSION == "V1-1" ]; then
687     ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c
688 else
689     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c
690 fi
691
692 if [ $ECS_VERSION == "V1-1" ]; then
693     prodstub_equal create/prod-b/job3 2
694 else
695     prodstub_equal create/prod-b/job3 3
696 fi
697 prodstub_equal delete/prod-b/job3 1
698
699 # Delete only the producer
700 ecs_api_edp_delete_producer 204 prod-b
701
702 ecs_api_edp_get_producer_status 404 prod-b
703
704 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2 job3
705 if [ $ECS_VERSION == "V1-1" ]; then
706     ecs_api_edp_get_producer_ids 200 prod-a prod-c
707 else
708     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-c
709 fi
710
711 if [  -z "$FLAT_A1_EI" ]; then
712     ecs_api_a1_get_job_status 200 type2 job3 DISABLED
713 else
714     ecs_api_a1_get_job_status 200 job3 DISABLED
715 fi
716
717 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
718     cr_equal received_callbacks 5 30
719     cr_equal received_callbacks?id=type-status1 4
720     cr_equal received_callbacks?id=job3-status 1
721     cr_api_check_all_ecs_events 200 job3-status DISABLED
722 else
723     cr_equal received_callbacks 1 30
724     cr_equal received_callbacks?id=job3-status 1
725     cr_api_check_all_ecs_events 200 job3-status DISABLED
726 fi
727
728 # Re-create the producer
729 if [ $ECS_VERSION == "V1-1" ]; then
730     ecs_api_edp_put_producer 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2 testdata/ecs/ei-type-2.json
731 else
732     ecs_api_edp_put_producer_2 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2
733 fi
734
735 ecs_api_edp_get_producer_status 200 prod-b ENABLED
736
737 if [  -z "$FLAT_A1_EI" ]; then
738     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
739 else
740     ecs_api_a1_get_job_status 200 job3 ENABLED
741 fi
742
743 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
744     cr_equal received_callbacks 6 30
745     cr_equal received_callbacks?id=type-status1 4
746     cr_equal received_callbacks?id=job3-status 2
747     cr_api_check_all_ecs_events 200 job3-status ENABLED
748 else
749     cr_equal received_callbacks 2 30
750     cr_equal received_callbacks?id=job3-status 2
751     cr_api_check_all_ecs_events 200 job3-status ENABLED
752 fi
753
754 if [ $ECS_VERSION == "V1-1" ]; then
755     prodstub_check_jobdata 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
756 else
757     if [[ "$ECS_FEATURE_LEVEL" != *"INFO-TYPES"* ]]; then
758         prodstub_check_jobdata_2 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
759     else
760         prodstub_check_jobdata_3 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
761     fi
762 fi
763
764 ## Setup prod-d
765 if [ $ECS_VERSION == "V1-1" ]; then
766     ecs_api_edp_put_producer 201 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4 testdata/ecs/ei-type-4.json
767 else
768     ecs_api_edp_put_type_2 201 type4 testdata/ecs/ei-type-4.json
769     ecs_api_edp_put_producer_2 201 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4
770 fi
771
772 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
773     cr_equal received_callbacks 7 30
774     cr_equal received_callbacks?id=type-status1 5
775     cr_api_check_all_ecs_subscription_events 200 type-status1 type4 testdata/ecs/ei-type-4.json REGISTERED
776 fi
777
778 ecs_api_a1_get_job_ids 200 type4 NOWNER EMPTY
779
780 if [  -z "$FLAT_A1_EI" ]; then
781     ecs_api_a1_put_job 201 type4 job8 $TARGET8 ricsim_g3_4 testdata/ecs/job-template.json
782 else
783     ecs_api_a1_put_job 201 job8 type4 $TARGET8 ricsim_g3_4 $STATUS8 testdata/ecs/job-template.json
784 fi
785
786 if [ $ECS_VERSION == "V1-1" ]; then
787     prodstub_check_jobdata 200 prod-d job8 type4 $TARGET8 ricsim_g3_4 testdata/ecs/job-template.json
788 else
789     if [[ "$ECS_FEATURE_LEVEL" != *"INFO-TYPES"* ]]; then
790         prodstub_check_jobdata_2 200 prod-d job8 type4 $TARGET8 ricsim_g3_4 testdata/ecs/job-template.json
791     else
792         prodstub_check_jobdata_3 200 prod-d job8 type4 $TARGET8 ricsim_g3_4 testdata/ecs/job-template.json
793     fi
794 fi
795
796 prodstub_equal create/prod-d/job8 1
797 prodstub_equal delete/prod-d/job8 0
798
799 ecs_api_a1_get_job_ids 200 type4 NOWNER job8
800
801 if [  -z "$FLAT_A1_EI" ]; then
802     ecs_api_a1_get_job_status 200 type4 job8 ENABLED
803 else
804     ecs_api_a1_get_job_status 200 job8 ENABLED
805 fi
806
807 # Re-PUT the producer with zero types
808 if [ $ECS_VERSION == "V1-1" ]; then
809     ecs_api_edp_put_producer 200 prod-d $CB_JOB/prod-d $CB_SV/prod-d NOTYPE
810 else
811     ecs_api_edp_put_producer_2 200 prod-d $CB_JOB/prod-d $CB_SV/prod-d NOTYPE
812 fi
813
814 if [  -z "$FLAT_A1_EI" ]; then
815     ecs_api_a1_get_job_ids 404 type4 NOWNER
816 else
817     ecs_api_a1_get_job_ids 200 type4 NOWNER job8
818     ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2 job3 job8
819 fi
820
821 if [  -z "$FLAT_A1_EI" ]; then
822     ecs_api_a1_get_job_status 200 type4 job8 DISABLED
823 else
824     ecs_api_a1_get_job_status 200 job8 DISABLED
825 fi
826
827 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
828     cr_equal received_callbacks 8 30
829     cr_equal received_callbacks?id=type-status1 5
830     cr_equal received_callbacks?id=job8-status 1
831     cr_api_check_all_ecs_events 200 job8-status DISABLED
832 else
833     cr_equal received_callbacks 3 30
834     cr_equal received_callbacks?id=job8-status 1
835     cr_api_check_all_ecs_events 200 job8-status DISABLED
836 fi
837
838 prodstub_equal create/prod-d/job8 1
839 prodstub_equal delete/prod-d/job8 0
840
841 ## Re-setup prod-d
842 if [ $ECS_VERSION == "V1-1" ]; then
843     ecs_api_edp_put_producer 200 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4 testdata/ecs/ei-type-4.json
844 else
845     ecs_api_edp_put_type_2 200 type4 testdata/ecs/ei-type-4.json
846     ecs_api_edp_put_producer_2 200 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4
847 fi
848
849 if [  -z "$FLAT_A1_EI" ]; then
850     ecs_api_a1_get_job_ids 404 type4 NOWNER
851 else
852     ecs_api_a1_get_job_ids 200 type4 NOWNER job8
853     ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2 job3 job8
854 fi
855
856 if [  -z "$FLAT_A1_EI" ]; then
857     ecs_api_a1_get_job_status 200 type4 job8 ENABLED
858 else
859     ecs_api_a1_get_job_status 200 job8 ENABLED
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
867 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
868     cr_equal received_callbacks 10 30
869     cr_equal received_callbacks?id=type-status1 6
870     cr_api_check_all_ecs_subscription_events 200 type-status1 type4 testdata/ecs/ei-type-4.json REGISTERED
871
872     cr_equal received_callbacks?id=job8-status 2
873     cr_api_check_all_ecs_events 200 job8-status ENABLED
874 else
875     cr_equal received_callbacks 4 30
876     cr_equal received_callbacks?id=job8-status 2
877     cr_api_check_all_ecs_events 200 job8-status ENABLED
878 fi
879
880 prodstub_equal create/prod-d/job8 2
881 prodstub_equal delete/prod-d/job8 0
882
883 ## Setup prod-e
884 if [ $ECS_VERSION == "V1-1" ]; then
885     ecs_api_edp_put_producer 201 prod-e $CB_JOB/prod-e $CB_SV/prod-e type6 testdata/ecs/ei-type-6.json
886 else
887     ecs_api_edp_put_type_2 201 type6 testdata/ecs/ei-type-6.json
888     ecs_api_edp_put_producer_2 201 prod-e $CB_JOB/prod-e $CB_SV/prod-e type6
889 fi
890
891 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
892     cr_equal received_callbacks 11 30
893     cr_equal received_callbacks?id=type-status1 7
894     cr_api_check_all_ecs_subscription_events 200 type-status1 type6 testdata/ecs/ei-type-6.json REGISTERED
895 fi
896
897 ecs_api_a1_get_job_ids 200 type6 NOWNER EMPTY
898
899 if [  -z "$FLAT_A1_EI" ]; then
900     ecs_api_a1_put_job 201 type6 job10 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
901 else
902     ecs_api_a1_put_job 201 job10 type6 $TARGET10 ricsim_g3_4 $STATUS10 testdata/ecs/job-template.json
903 fi
904
905 if [ $ECS_VERSION == "V1-1" ]; then
906     prodstub_check_jobdata 200 prod-e job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
907 else
908     if [[ "$ECS_FEATURE_LEVEL" != *"INFO-TYPES"* ]]; then
909         prodstub_check_jobdata_2 200 prod-e job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
910     else
911         prodstub_check_jobdata_3 200 prod-e job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
912     fi
913 fi
914
915 prodstub_equal create/prod-e/job10 1
916 prodstub_equal delete/prod-e/job10 0
917
918 ecs_api_a1_get_job_ids 200 type6 NOWNER job10
919
920 if [  -z "$FLAT_A1_EI" ]; then
921     ecs_api_a1_get_job_status 200 type6 job10 ENABLED
922 else
923     ecs_api_a1_get_job_status 200 job10 ENABLED
924 fi
925
926 ## Setup prod-f
927 if [ $ECS_VERSION == "V1-1" ]; then
928     ecs_api_edp_put_producer 201 prod-f $CB_JOB/prod-f $CB_SV/prod-f type6 testdata/ecs/ei-type-6.json
929 else
930     ecs_api_edp_put_type_2 200 type6 testdata/ecs/ei-type-6.json
931     ecs_api_edp_put_producer_2 201 prod-f $CB_JOB/prod-f $CB_SV/prod-f type6
932 fi
933
934 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
935     cr_equal received_callbacks 12 30
936     cr_equal received_callbacks?id=type-status1 8
937     cr_api_check_all_ecs_subscription_events 200 type-status1 type6 testdata/ecs/ei-type-6.json REGISTERED
938 fi
939
940 ecs_api_a1_get_job_ids 200 type6 NOWNER job10
941
942 if [ $ECS_VERSION == "V1-1" ]; then
943     prodstub_check_jobdata 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
944 else
945     if [[ "$ECS_FEATURE_LEVEL" != *"INFO-TYPES"* ]]; then
946         prodstub_check_jobdata_2 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
947     else
948         prodstub_check_jobdata_3 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
949     fi
950 fi
951
952 prodstub_equal create/prod-f/job10 1
953 prodstub_equal delete/prod-f/job10 0
954
955 ecs_api_a1_get_job_ids 200 type6 NOWNER job10
956
957 if [  -z "$FLAT_A1_EI" ]; then
958     ecs_api_a1_get_job_status 200 type6 job10 ENABLED
959 else
960     ecs_api_a1_get_job_status 200 job10 ENABLED
961 fi
962
963 ## Status updates prod-a and jobs
964
965 if [ $ECS_VERSION == "V1-1" ]; then
966     ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c prod-d prod-e prod-f
967 else
968     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c prod-d prod-e prod-f
969 fi
970
971 ecs_api_edp_get_producer_status 200 prod-a ENABLED
972 ecs_api_edp_get_producer_status 200 prod-b ENABLED
973 ecs_api_edp_get_producer_status 200 prod-c ENABLED
974 ecs_api_edp_get_producer_status 200 prod-d ENABLED
975 ecs_api_edp_get_producer_status 200 prod-e ENABLED
976 ecs_api_edp_get_producer_status 200 prod-f ENABLED
977
978 # Arm producer prod-a for supervision failure
979 prodstub_arm_producer 200 prod-a 400
980
981 # Wait for producer prod-a to go disabled
982 ecs_api_edp_get_producer_status 200 prod-a DISABLED 360
983
984 if [ $ECS_VERSION == "V1-1" ]; then
985     ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c prod-d  prod-e prod-f
986 else
987     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c prod-d  prod-e prod-f
988 fi
989
990 ecs_api_edp_get_producer_status 200 prod-a DISABLED
991 ecs_api_edp_get_producer_status 200 prod-b ENABLED
992 ecs_api_edp_get_producer_status 200 prod-c ENABLED
993 ecs_api_edp_get_producer_status 200 prod-d ENABLED
994 ecs_api_edp_get_producer_status 200 prod-e ENABLED
995 ecs_api_edp_get_producer_status 200 prod-f ENABLED
996
997
998 if [  -z "$FLAT_A1_EI" ]; then
999     ecs_api_a1_get_job_status 200 type1 job1 ENABLED
1000     ecs_api_a1_get_job_status 200 type1 job2 ENABLED
1001     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
1002     ecs_api_a1_get_job_status 200 type4 job8 ENABLED
1003     ecs_api_a1_get_job_status 200 type6 job10 ENABLED
1004 else
1005     ecs_api_a1_get_job_status 200 job1 ENABLED
1006     ecs_api_a1_get_job_status 200 job2 ENABLED
1007     ecs_api_a1_get_job_status 200 job3 ENABLED
1008     ecs_api_a1_get_job_status 200 job8 ENABLED
1009     ecs_api_a1_get_job_status 200 job10 ENABLED
1010 fi
1011
1012 # Arm producer prod-a for supervision
1013 prodstub_arm_producer 200 prod-a 200
1014
1015 # Wait for producer prod-a to go enabled
1016 ecs_api_edp_get_producer_status 200 prod-a ENABLED 360
1017
1018 if [ $ECS_VERSION == "V1-1" ]; then
1019     ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c prod-d prod-e prod-f
1020 else
1021     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c prod-d prod-e prod-f
1022 fi
1023
1024 ecs_api_edp_get_producer_status 200 prod-a ENABLED
1025 ecs_api_edp_get_producer_status 200 prod-b ENABLED
1026 ecs_api_edp_get_producer_status 200 prod-c ENABLED
1027 ecs_api_edp_get_producer_status 200 prod-d ENABLED
1028 ecs_api_edp_get_producer_status 200 prod-e ENABLED
1029 ecs_api_edp_get_producer_status 200 prod-f ENABLED
1030
1031 if [  -z "$FLAT_A1_EI" ]; then
1032     ecs_api_a1_get_job_status 200 type1 job1 ENABLED
1033     ecs_api_a1_get_job_status 200 type1 job2 ENABLED
1034     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
1035     ecs_api_a1_get_job_status 200 type4 job8 ENABLED
1036     ecs_api_a1_get_job_status 200 type6 job10 ENABLED
1037 else
1038     ecs_api_a1_get_job_status 200 job1 ENABLED
1039     ecs_api_a1_get_job_status 200 job2 ENABLED
1040     ecs_api_a1_get_job_status 200 job3 ENABLED
1041     ecs_api_a1_get_job_status 200 job8 ENABLED
1042     ecs_api_a1_get_job_status 200 job10 ENABLED
1043 fi
1044
1045 # Arm producer prod-a for supervision failure
1046 prodstub_arm_producer 200 prod-a 400
1047
1048 # Wait for producer prod-a to go disabled
1049 ecs_api_edp_get_producer_status 200 prod-a DISABLED 360
1050
1051 if [ $ECS_VERSION == "V1-1" ]; then
1052     ecs_api_edp_get_producer_ids 200 prod-a prod-b prod-c prod-d prod-e prod-f
1053 else
1054     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-a prod-b prod-c prod-d prod-e prod-f
1055 fi
1056
1057 ecs_api_edp_get_producer_status 200 prod-a DISABLED
1058 ecs_api_edp_get_producer_status 200 prod-b ENABLED
1059 ecs_api_edp_get_producer_status 200 prod-c ENABLED
1060 ecs_api_edp_get_producer_status 200 prod-d ENABLED
1061 ecs_api_edp_get_producer_status 200 prod-e ENABLED
1062 ecs_api_edp_get_producer_status 200 prod-f ENABLED
1063
1064 if [  -z "$FLAT_A1_EI" ]; then
1065     ecs_api_a1_get_job_status 200 type1 job1 ENABLED
1066     ecs_api_a1_get_job_status 200 type1 job2 ENABLED
1067     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
1068     ecs_api_a1_get_job_status 200 type4 job8 ENABLED
1069     ecs_api_a1_get_job_status 200 type6 job10 ENABLED
1070 else
1071     ecs_api_a1_get_job_status 200 job1 ENABLED
1072     ecs_api_a1_get_job_status 200 job2 ENABLED
1073     ecs_api_a1_get_job_status 200 job3 ENABLED
1074     ecs_api_a1_get_job_status 200 job8 ENABLED
1075     ecs_api_a1_get_job_status 200 job10 ENABLED
1076 fi
1077
1078 # Wait for producer prod-a to be removed
1079 if [[ "$ECS_FEATURE_LEVEL" == *"INFO-TYPES"* ]]; then
1080     ecs_equal json:data-producer/v1/info-producers 5 1000
1081 else
1082     ecs_equal json:ei-producer/v1/eiproducers 5 1000
1083 fi
1084
1085 if [ $ECS_VERSION == "V1-1" ]; then
1086     ecs_api_edp_get_producer_ids 200 prod-b prod-c prod-d prod-e prod-f
1087 else
1088     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-b prod-c prod-d prod-e prod-f
1089 fi
1090
1091
1092 ecs_api_edp_get_producer_status 404 prod-a
1093 ecs_api_edp_get_producer_status 200 prod-b ENABLED
1094 ecs_api_edp_get_producer_status 200 prod-c ENABLED
1095 ecs_api_edp_get_producer_status 200 prod-d ENABLED
1096 ecs_api_edp_get_producer_status 200 prod-e ENABLED
1097 ecs_api_edp_get_producer_status 200 prod-f ENABLED
1098
1099 if [  -z "$FLAT_A1_EI" ]; then
1100     ecs_api_a1_get_job_status 200 type1 job1 DISABLED
1101     ecs_api_a1_get_job_status 200 type1 job2 DISABLED
1102     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
1103     ecs_api_a1_get_job_status 200 type4 job8 ENABLED
1104     ecs_api_a1_get_job_status 200 type6 job10 ENABLED
1105 else
1106     ecs_api_a1_get_job_status 200 job1 DISABLED
1107     ecs_api_a1_get_job_status 200 job2 DISABLED
1108     ecs_api_a1_get_job_status 200 job3 ENABLED
1109     ecs_api_a1_get_job_status 200 job8 ENABLED
1110     ecs_api_a1_get_job_status 200 job10 ENABLED
1111 fi
1112
1113 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
1114     cr_equal received_callbacks 14 30
1115 else
1116     cr_equal received_callbacks 6 30
1117 fi
1118
1119 cr_equal received_callbacks?id=job1-status 1
1120 cr_equal received_callbacks?id=job2-status 1
1121
1122 cr_api_check_all_ecs_events 200 job1-status DISABLED
1123 cr_api_check_all_ecs_events 200 job2-status DISABLED
1124
1125
1126 # Arm producer prod-e for supervision failure
1127 prodstub_arm_producer 200 prod-e 400
1128
1129 ecs_api_edp_get_producer_status 200 prod-e DISABLED 1000
1130
1131 if [ $ECS_VERSION == "V1-1" ]; then
1132     ecs_api_edp_get_producer_ids 200 prod-b prod-c prod-d prod-e prod-f
1133 else
1134     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-b prod-c prod-d prod-e prod-f
1135 fi
1136
1137 ecs_api_edp_get_producer_status 404 prod-a
1138 ecs_api_edp_get_producer_status 200 prod-b ENABLED
1139 ecs_api_edp_get_producer_status 200 prod-c ENABLED
1140 ecs_api_edp_get_producer_status 200 prod-d ENABLED
1141 ecs_api_edp_get_producer_status 200 prod-e DISABLED
1142 ecs_api_edp_get_producer_status 200 prod-f ENABLED
1143
1144 if [  -z "$FLAT_A1_EI" ]; then
1145     ecs_api_a1_get_job_status 200 type1 job1 DISABLED
1146     ecs_api_a1_get_job_status 200 type1 job2 DISABLED
1147     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
1148     ecs_api_a1_get_job_status 200 type4 job8 ENABLED
1149     ecs_api_a1_get_job_status 200 type6 job10 ENABLED
1150 else
1151     ecs_api_a1_get_job_status 200 job1 DISABLED
1152     ecs_api_a1_get_job_status 200 job2 DISABLED
1153     ecs_api_a1_get_job_status 200 job3 ENABLED
1154     ecs_api_a1_get_job_status 200 job8 ENABLED
1155     ecs_api_a1_get_job_status 200 job10 ENABLED
1156 fi
1157
1158 #Disable create for job10 in prod-e
1159 prodstub_arm_job_create 200 prod-e job10 400
1160
1161 #Update tjob 10 - only prod-f will be updated
1162 if [  -z "$FLAT_A1_EI" ]; then
1163     ecs_api_a1_put_job 200 type6 job10 $TARGET10 ricsim_g3_4 testdata/ecs/job-template2.json
1164 else
1165     ecs_api_a1_put_job 200 job10 type6 $TARGET10 ricsim_g3_4 $STATUS10 testdata/ecs/job-template2.json
1166 fi
1167 #Reset producer and job responses
1168 prodstub_arm_producer 200 prod-e 200
1169 prodstub_arm_job_create 200 prod-e job10 200
1170
1171 ecs_api_edp_get_producer_status 200 prod-e ENABLED 360
1172
1173 if [ $ECS_VERSION == "V1-1" ]; then
1174     ecs_api_edp_get_producer_ids 200 prod-b prod-c prod-d prod-e prod-f
1175 else
1176     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-b prod-c prod-d prod-e prod-f
1177 fi
1178
1179 #Wait for job to be updated
1180 sleep_wait 120
1181
1182 if [ $ECS_VERSION == "V1-1" ]; then
1183     prodstub_check_jobdata 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template2.json
1184 else
1185     if [[ "$ECS_FEATURE_LEVEL" != *"INFO-TYPES"* ]]; then
1186         prodstub_check_jobdata_2 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template2.json
1187     else
1188         prodstub_check_jobdata_3 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template2.json
1189     fi
1190 fi
1191
1192 prodstub_arm_producer 200 prod-f 400
1193
1194 ecs_api_edp_get_producer_status 200 prod-f DISABLED 360
1195
1196 if [[ "$ECS_FEATURE_LEVEL" == *"INFO-TYPES"* ]]; then
1197     ecs_equal json:data-producer/v1/info-producers 4 1000
1198 else
1199     ecs_equal json:ei-producer/v1/eiproducers 4 1000
1200 fi
1201
1202 if [ $ECS_VERSION == "V1-1" ]; then
1203     ecs_api_edp_get_producer_ids 200 prod-b prod-c prod-d prod-e
1204 else
1205     ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-b prod-c prod-d prod-e
1206 fi
1207
1208 ecs_api_edp_get_producer_status 404 prod-a
1209 ecs_api_edp_get_producer_status 200 prod-b ENABLED
1210 ecs_api_edp_get_producer_status 200 prod-c ENABLED
1211 ecs_api_edp_get_producer_status 200 prod-d ENABLED
1212 ecs_api_edp_get_producer_status 200 prod-e ENABLED
1213 ecs_api_edp_get_producer_status 404 prod-f
1214
1215 if [  -z "$FLAT_A1_EI" ]; then
1216     ecs_api_a1_get_job_status 200 type1 job1 DISABLED
1217     ecs_api_a1_get_job_status 200 type1 job2 DISABLED
1218     ecs_api_a1_get_job_status 200 type2 job3 ENABLED
1219     ecs_api_a1_get_job_status 200 type4 job8 ENABLED
1220     ecs_api_a1_get_job_status 200 type6 job10 ENABLED
1221 else
1222     ecs_api_a1_get_job_status 200 job1 DISABLED
1223     ecs_api_a1_get_job_status 200 job2 DISABLED
1224     ecs_api_a1_get_job_status 200 job3 ENABLED
1225     ecs_api_a1_get_job_status 200 job8 ENABLED
1226     ecs_api_a1_get_job_status 200 job10 ENABLED
1227 fi
1228
1229 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
1230     cr_equal received_callbacks 14 30
1231 else
1232     cr_equal received_callbacks 6 30
1233 fi
1234
1235
1236 if [[ "$ECS_FEATURE_LEVEL" != *"INFO-TYPES"* ]]; then
1237
1238     # End test if info types is not impl in tested version
1239     check_ecs_logs
1240
1241     store_logs END
1242
1243     #### TEST COMPLETE ####
1244
1245     print_result
1246
1247     auto_clean_environment
1248 fi
1249
1250
1251 ############################################
1252 # Test of info types
1253 ############################################
1254
1255 ### Setup prodstub sim to accept calls for producers, info types and jobs
1256 ## prod-ia type101
1257 ## prod-ib type101 and type102
1258 ## prod-ic no-type
1259 ## prod-id type104
1260 ## prod-ie type106
1261 ## prod-if type106
1262 ## prod-ig type150  (configured later)
1263 ## prod-ig type160  (configured later)
1264
1265 ## job101 -> prod-ia
1266 ## job102 -> prod-ia
1267 ## job103 -> prod-ib
1268 ## job104 -> prod-ia
1269 ## job106 -> prod-ib
1270 ## job108 -> prod-id
1271 ## job110 -> prod-ie and prod-if
1272 ## job150 -> prod-ig  (configured later)
1273
1274 prodstub_arm_producer 200 prod-ia
1275 prodstub_arm_producer 200 prod-ib
1276 prodstub_arm_producer 200 prod-ic
1277 prodstub_arm_producer 200 prod-id
1278 prodstub_arm_producer 200 prod-ie
1279 prodstub_arm_producer 200 prod-if
1280
1281 prodstub_arm_type 200 prod-ia type101
1282 prodstub_arm_type 200 prod-ib type102
1283 prodstub_arm_type 200 prod-ib type103
1284 prodstub_arm_type 200 prod-id type104
1285 prodstub_arm_type 200 prod-ie type106
1286 prodstub_arm_type 200 prod-if type106
1287
1288 prodstub_disarm_type 200 prod-ib type103
1289 prodstub_arm_type 200 prod-ib type101
1290 prodstub_disarm_type 200 prod-ib type101
1291
1292
1293 prodstub_arm_job_create 200 prod-ia job101
1294 prodstub_arm_job_create 200 prod-ia job102
1295 prodstub_arm_job_create 200 prod-ib job103
1296
1297 prodstub_arm_job_delete 200 prod-ia job101
1298 prodstub_arm_job_delete 200 prod-ia job102
1299 prodstub_arm_job_delete 200 prod-ib job103
1300
1301 prodstub_arm_job_create 200 prod-ib job104
1302 prodstub_arm_job_create 200 prod-ia job104
1303
1304 prodstub_arm_job_create 200 prod-ib job106
1305
1306 prodstub_arm_job_create 200 prod-id job108
1307
1308 prodstub_arm_job_create 200 prod-ie job110
1309 prodstub_arm_job_create 200 prod-if job110
1310
1311
1312 # NOTE: types, jobs and producers are still present related to eitypes
1313
1314
1315 ### Initial tests - no config made
1316 ### GET: type ids, types, producer ids, producers, job ids, jobs
1317 ### DELETE: jobs
1318 ecs_api_idc_get_type_ids 200 type1 type2 type4 type6
1319 ecs_api_idc_get_type 404 test-type
1320
1321 ecs_api_edp_get_type_ids 200 type1 type2 type4 type6
1322 ecs_api_edp_get_type_2 404 test-type
1323
1324 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-b prod-c prod-d prod-e
1325 ecs_api_edp_get_producer_2 404 test-prod
1326 ecs_api_edp_get_producer_status 404 test-prod
1327
1328 ecs_api_edp_delete_producer 404 test-prod
1329
1330 ecs_api_idc_get_job_ids 200 test-type NOWNER EMPTY
1331 ecs_api_idc_get_job_ids 200 test-type test-owner EMPTY
1332
1333 ecs_api_idc_get_job 404 test-job
1334
1335 ecs_api_idc_get_job_status2 404 test-job
1336
1337 ecs_api_idc_delete_job 404 test-job
1338
1339 ecs_api_edp_get_producer_jobs_2 404 test-prod
1340
1341 ecs_api_edp_get_type_2 404 test-type
1342 ecs_api_edp_delete_type_2 404 test-type
1343
1344 ### Setup of producer/job and testing apis ###
1345
1346 ## Setup prod-ia
1347 ecs_api_edp_get_type_ids 200 type1 type2 type4 type6
1348 ecs_api_edp_get_type_2 404 type101
1349 ecs_api_edp_put_producer_2 404 prod-ia $CB_JOB/prod-ia $CB_SV/prod-ia type101
1350
1351 # Create type, delete and create again
1352 ecs_api_edp_put_type_2 201 type101 testdata/ecs/info-type-1.json
1353 ecs_api_edp_get_type_2 200 type101
1354 ecs_api_edp_get_type_ids 200 type101 type1 type2 type4 type6
1355 ecs_api_edp_delete_type_2 204 type101
1356 ecs_api_edp_get_type_2 404 type101
1357 ecs_api_edp_get_type_ids 200 type1 type2 type4 type6
1358 ecs_api_edp_put_type_2 201 type101 testdata/ecs/info-type-1.json
1359 ecs_api_edp_get_type_ids 200 type101 type1 type2 type4 type6
1360 ecs_api_edp_get_type_2 200 type101 testdata/ecs/info-type-1.json
1361
1362 ecs_api_edp_put_producer_2 201 prod-ia $CB_JOB/prod-ia $CB_SV/prod-ia type101
1363 ecs_api_edp_put_producer_2 200 prod-ia $CB_JOB/prod-ia $CB_SV/prod-ia type101
1364
1365 ecs_api_edp_delete_type_2 406 type101
1366
1367 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
1368     cr_equal received_callbacks 17 30
1369     cr_equal received_callbacks?id=type-status1 11
1370     cr_api_check_all_ecs_subscription_events 200 type-status1 type101 testdata/ecs/info-type-1.json REGISTERED type101 testdata/ecs/info-type-1.json DEREGISTERED type101 testdata/ecs/info-type-1.json REGISTERED
1371 else
1372     cr_equal received_callbacks 6
1373 fi
1374
1375 ecs_api_edp_get_type_ids 200 type101 type1 type2 type4 type6
1376 ecs_api_edp_get_type_2 200 type101 testdata/ecs/info-type-1.json
1377
1378 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-b prod-c prod-d prod-e
1379 ecs_api_edp_get_producer_ids_2 200 type101 prod-ia
1380 ecs_api_edp_get_producer_ids_2 200 type102 EMPTY
1381
1382 ecs_api_edp_get_producer_2 200 prod-ia $CB_JOB/prod-ia $CB_SV/prod-ia type101
1383
1384 ecs_api_edp_get_producer_status 200 prod-ia ENABLED
1385
1386 ecs_api_idc_get_job_ids 200 type101 NOWNER EMPTY
1387 ecs_api_idc_get_job_ids 200 type101 test-owner EMPTY
1388
1389 ecs_api_idc_get_job 404 test-job
1390
1391 ecs_api_idc_get_job_status2 404 test-job
1392 ecs_api_edp_get_producer_jobs_2 200 prod-ia EMPTY
1393
1394 ## Create a job for prod-ia
1395 ## job101 - prod-ia
1396 ecs_api_idc_put_job 201 job101 type101 $TARGET101 info-owner-1 $INFOSTATUS101 testdata/ecs/job-template.json VALIDATE
1397
1398 # Check the job data in the producer
1399 prodstub_check_jobdata_3 200 prod-ia job101 type101 $TARGET101 info-owner-1 testdata/ecs/job-template.json
1400
1401 ecs_api_idc_get_job_ids 200 type101 NOWNER job101
1402 ecs_api_idc_get_job_ids 200 type101 info-owner-1 job101
1403
1404 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job1 job2 job3 job8 job10
1405
1406 ecs_api_idc_get_job 200 job101 type101 $TARGET101 info-owner-1 $INFOSTATUS101 testdata/ecs/job-template.json
1407
1408 ecs_api_idc_get_job_status2 200 job101 ENABLED  1 prod-ia
1409
1410 prodstub_equal create/prod-ia/job101 1
1411
1412 ecs_api_edp_get_producer_jobs_2 200 prod-ia job101 type101 $TARGET101 info-owner-1 testdata/ecs/job-template.json
1413
1414 ## Create a second job for prod-ia
1415 ## job102 - prod-ia
1416 ecs_api_idc_put_job 201 job102 type101 $TARGET102 info-owner-2 $INFOSTATUS102 testdata/ecs/job-template.json  VALIDATE
1417
1418 # Check the job data in the producer
1419 prodstub_check_jobdata_3 200 prod-ia job102 type101 $TARGET102 info-owner-2 testdata/ecs/job-template.json
1420 ecs_api_idc_get_job_ids 200 type101 NOWNER job101 job102
1421 ecs_api_idc_get_job_ids 200 type101 info-owner-1 job101
1422 ecs_api_idc_get_job_ids 200 type101 info-owner-2 job102
1423 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job102 job1 job2 job3 job8 job10
1424
1425 ecs_api_idc_get_job 200 job102 type101 $TARGET102 info-owner-2 $INFOSTATUS102 testdata/ecs/job-template.json
1426
1427 ecs_api_idc_get_job_status2 200 job102 ENABLED 1 prod-ia
1428
1429 prodstub_equal create/prod-ia/job102 1
1430
1431 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
1432
1433
1434 ## Setup prod-ib
1435 ecs_api_edp_put_type_2 201 type102 testdata/ecs/info-type-2.json
1436 ecs_api_edp_put_producer_2 201 prod-ib $CB_JOB/prod-ib $CB_SV/prod-ib type102
1437
1438 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
1439     cr_equal received_callbacks 18 30
1440     cr_equal received_callbacks?id=type-status1 12
1441     cr_api_check_all_ecs_subscription_events 200 type-status1 type102 testdata/ecs/info-type-2.json REGISTERED
1442 else
1443     cr_equal received_callbacks 6
1444 fi
1445
1446 ecs_api_idc_get_type_ids 200 type101 type102 type1 type2 type4 type6
1447
1448 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
1449     ecs_api_idc_get_type 200 type101 testdata/ecs/info-type-1.json ENABLED 1
1450
1451     ecs_api_idc_get_type 200 type102 testdata/ecs/info-type-2.json ENABLED 1
1452 else
1453     ecs_api_idc_get_type 200 type101 testdata/ecs/info-type-1.json
1454
1455     ecs_api_idc_get_type 200 type102 testdata/ecs/info-type-2.json
1456 fi
1457
1458 ecs_api_edp_get_type_ids 200 type101 type102 type1 type2 type4 type6
1459 ecs_api_edp_get_type_2 200 type101 testdata/ecs/info-type-1.json
1460 ecs_api_edp_get_type_2 200 type102 testdata/ecs/info-type-2.json
1461
1462 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ib prod-b prod-c prod-d prod-e
1463
1464 ecs_api_edp_get_producer_2 200 prod-ia $CB_JOB/prod-ia $CB_SV/prod-ia type101
1465 ecs_api_edp_get_producer_2 200 prod-ib $CB_JOB/prod-ib $CB_SV/prod-ib type102
1466
1467 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1468
1469 ## Create job for prod-ib
1470 ##  job103 - prod-ib
1471 ecs_api_idc_put_job 201 job103 type102 $TARGET103 info-owner-3 $INFOSTATUS103 testdata/ecs/job-template.json  VALIDATE
1472
1473 prodstub_equal create/prod-ib/job103 1
1474
1475 # Check the job data in the producer
1476 prodstub_check_jobdata_3 200 prod-ib job103 type102 $TARGET103 info-owner-3 testdata/ecs/job-template.json
1477
1478 ecs_api_idc_get_job_ids 200 type101 NOWNER job101 job102
1479 ecs_api_idc_get_job_ids 200 type102 NOWNER job103
1480 ecs_api_idc_get_job_ids 200 type101 info-owner-1 job101
1481 ecs_api_idc_get_job_ids 200 type101 info-owner-2 job102
1482 ecs_api_idc_get_job_ids 200 type102 info-owner-3 job103
1483
1484 ecs_api_idc_get_job 200 job103 type102 $TARGET103 info-owner-3 $INFOSTATUS103 testdata/ecs/job-template.json
1485
1486 ecs_api_idc_get_job_status2 200 job103 ENABLED 1 prod-ib
1487
1488 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
1489 ecs_api_edp_get_producer_jobs_2 200 prod-ib job103 type102 $TARGET103 info-owner-3 testdata/ecs/job-template.json
1490
1491 ## Setup prod-ic (no types)
1492 ecs_api_edp_put_producer_2 201 prod-ic $CB_JOB/prod-ic $CB_SV/prod-ic NOTYPE
1493
1494 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ib prod-ic prod-b prod-c prod-d prod-e
1495
1496 ecs_api_edp_get_producer_2 200 prod-ia $CB_JOB/prod-ia $CB_SV/prod-ia type101
1497 ecs_api_edp_get_producer_2 200 prod-ib $CB_JOB/prod-ib $CB_SV/prod-ib type102
1498 ecs_api_edp_get_producer_2 200 prod-ic $CB_JOB/prod-ic $CB_SV/prod-ic EMPTY
1499
1500 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1501
1502
1503 ## Delete job103 and prod-ib and re-create if different order
1504
1505 # Delete job then producer
1506 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job102 job103 job1 job2 job3 job8 job10
1507 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ib prod-ic prod-b prod-c prod-d prod-e
1508
1509 ecs_api_idc_delete_job 204 job103
1510
1511 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job102 job1 job2 job3 job8 job10
1512 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ib prod-ic prod-b prod-c prod-d prod-e
1513
1514 ecs_api_edp_delete_producer 204 prod-ib
1515
1516 ecs_api_edp_get_producer_status 404 prod-ib
1517
1518 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job102 job1 job2 job3 job8 job10
1519 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ic prod-b prod-c prod-d prod-e
1520
1521 prodstub_equal delete/prod-ib/job103 1
1522
1523 ecs_api_idc_put_job 201 job103 type102 $TARGET103 info-owner-3 $INFOSTATUS103 testdata/ecs/job-template.json VALIDATE
1524 ecs_api_idc_get_job_status2 200 job103 DISABLED EMPTYPROD
1525
1526 # Put producer then job
1527 ecs_api_edp_put_producer_2 201 prod-ib $CB_JOB/prod-ib $CB_SV/prod-ib type102
1528
1529 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1530
1531 ecs_api_idc_put_job 200 job103 type102 $TARGET103 info-owner-3 $INFOSTATUS103 testdata/ecs/job-template2.json  VALIDATE
1532 ecs_api_idc_get_job_status2 200 job103 ENABLED 1 prod-ib
1533
1534 prodstub_check_jobdata_3 200 prod-ib job103 type102 $TARGET103 info-owner-3 testdata/ecs/job-template2.json
1535
1536 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job102 job103 job1 job2 job3 job8 job10
1537 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ib prod-ic prod-b prod-c prod-d prod-e
1538
1539 prodstub_equal create/prod-ib/job103 3
1540 prodstub_equal delete/prod-ib/job103 1
1541
1542 # Delete only the producer
1543 ecs_api_edp_delete_producer 204 prod-ib
1544
1545 ecs_api_edp_get_producer_status 404 prod-ib
1546
1547 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job102 job103  job1 job2 job3 job8 job10
1548 ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ic prod-b prod-c prod-d prod-e
1549
1550 ecs_api_idc_get_job_status2 200 job103 DISABLED EMPTYPROD
1551
1552 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
1553     cr_equal received_callbacks 19 30
1554
1555     cr_equal received_callbacks?id=info-job103-status 1
1556     cr_api_check_all_ecs_events 200 info-job103-status DISABLED
1557 else
1558     cr_equal received_callbacks 7 30
1559     cr_equal received_callbacks?id=info-job103-status 1
1560     cr_api_check_all_ecs_events 200 info-job103-status DISABLED
1561 fi
1562
1563 # Re-create the producer
1564 ecs_api_edp_put_producer_2 201 prod-ib $CB_JOB/prod-ib $CB_SV/prod-ib type102
1565
1566 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1567
1568 ecs_api_idc_get_job_status2 200 job103 ENABLED 1 prod-ib
1569
1570 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
1571     cr_equal received_callbacks 20 30
1572     cr_equal received_callbacks?id=info-job103-status 2
1573     cr_api_check_all_ecs_events 200 info-job103-status ENABLED
1574 else
1575     cr_equal received_callbacks 8 30
1576     cr_equal received_callbacks?id=info-job103-status 2
1577     cr_api_check_all_ecs_events 200 info-job103-status ENABLED
1578 fi
1579
1580 prodstub_check_jobdata_3 200 prod-ib job103 type102 $TARGET103 info-owner-3 testdata/ecs/job-template2.json
1581
1582 ## Setup prod-id
1583 ecs_api_edp_put_type_2 201 type104 testdata/ecs/info-type-4.json
1584 ecs_api_edp_put_producer_2 201 prod-id $CB_JOB/prod-id $CB_SV/prod-id type104
1585
1586 ecs_api_idc_get_job_ids 200 type104 NOWNER EMPTY
1587
1588 ecs_api_idc_put_job 201 job108 type104 $TARGET108 info-owner-4 $INFOSTATUS108 testdata/ecs/job-template.json  VALIDATE
1589
1590 prodstub_check_jobdata_3 200 prod-id job108 type104 $TARGET108 info-owner-4 testdata/ecs/job-template.json
1591
1592 prodstub_equal create/prod-id/job108 1
1593 prodstub_equal delete/prod-id/job108 0
1594
1595 ecs_api_idc_get_job_ids 200 type104 NOWNER job108
1596
1597 ecs_api_idc_get_job_status2 200 job108 ENABLED 1 prod-id
1598
1599 # Re-PUT the producer with zero types
1600 ecs_api_edp_put_producer_2 200 prod-id $CB_JOB/prod-id $CB_SV/prod-id NOTYPE
1601
1602 ecs_api_idc_get_job_ids 200 type104 NOWNER job108
1603 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job102 job103 job108  job1 job2 job3 job8 job10
1604
1605 ecs_api_idc_get_job_status2 200 job108 DISABLED EMPTYPROD
1606
1607 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
1608     cr_equal received_callbacks 22 30
1609     cr_equal received_callbacks?id=type-status1 13
1610     cr_api_check_all_ecs_subscription_events 200 type-status1 type104 testdata/ecs/info-type-4.json REGISTERED
1611
1612     cr_equal received_callbacks?id=info-job108-status 1
1613     cr_api_check_all_ecs_events 200 info-job108-status DISABLED
1614 else
1615     cr_equal received_callbacks 9 30
1616     cr_equal received_callbacks?id=info-job108-status 1
1617     cr_api_check_all_ecs_events 200 info-job108-status DISABLED
1618 fi
1619
1620 prodstub_equal create/prod-id/job108 1
1621 prodstub_equal delete/prod-id/job108 0
1622
1623 ## Re-setup prod-id
1624 ecs_api_edp_put_type_2 200 type104 testdata/ecs/info-type-4.json
1625 ecs_api_edp_put_producer_2 200 prod-id $CB_JOB/prod-id $CB_SV/prod-id type104
1626
1627
1628 ecs_api_idc_get_job_ids 200 type104 NOWNER job108
1629 ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job102 job103 job108 job1 job2 job3 job8 job10
1630
1631 ecs_api_idc_get_job_status2 200 job108 ENABLED  1 prod-id
1632
1633 ecs_api_edp_get_producer_status 200 prod-ia ENABLED
1634 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1635 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1636 ecs_api_edp_get_producer_status 200 prod-id ENABLED
1637
1638 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
1639     cr_equal received_callbacks 24 30
1640
1641     cr_equal received_callbacks?id=type-status1 14
1642     cr_api_check_all_ecs_subscription_events 200 type-status1 type104 testdata/ecs/info-type-4.json REGISTERED
1643
1644     cr_equal received_callbacks?id=info-job108-status 2
1645     cr_api_check_all_ecs_events 200 info-job108-status ENABLED
1646 else
1647     cr_equal received_callbacks 10 30
1648     cr_equal received_callbacks?id=info-job108-status 2
1649     cr_api_check_all_ecs_events 200 info-job108-status ENABLED
1650 fi
1651
1652 prodstub_equal create/prod-id/job108 2
1653 prodstub_equal delete/prod-id/job108 0
1654
1655
1656 ## Setup prod-ie
1657 ecs_api_edp_put_type_2 201 type106 testdata/ecs/info-type-6.json
1658 ecs_api_edp_put_producer_2 201 prod-ie $CB_JOB/prod-ie $CB_SV/prod-ie type106
1659
1660 ecs_api_idc_get_job_ids 200 type106 NOWNER EMPTY
1661
1662 ecs_api_idc_put_job 201 job110 type106 $TARGET110 info-owner-4 $INFOSTATUS110 testdata/ecs/job-template.json  VALIDATE
1663
1664 prodstub_check_jobdata_3 200 prod-ie job110 type106 $TARGET110 info-owner-4 testdata/ecs/job-template.json
1665
1666 prodstub_equal create/prod-ie/job110 1
1667 prodstub_equal delete/prod-ie/job110 0
1668
1669 ecs_api_idc_get_job_ids 200 type106 NOWNER job110
1670
1671 ecs_api_idc_get_job_status2 200 job110 ENABLED 1 prod-ie
1672
1673 ## Setup prod-if
1674 ecs_api_edp_put_type_2 200 type106 testdata/ecs/info-type-6.json
1675 ecs_api_edp_put_producer_2 201 prod-if $CB_JOB/prod-if $CB_SV/prod-if type106
1676
1677 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
1678     cr_equal received_callbacks 26 30
1679
1680     cr_equal received_callbacks?id=type-status1 16
1681     cr_api_check_all_ecs_subscription_events 200 type-status1 type106 testdata/ecs/info-type-6.json REGISTERED type106 testdata/ecs/info-type-6.json REGISTERED
1682 fi
1683
1684
1685 ecs_api_idc_get_job_ids 200 type106 NOWNER job110
1686
1687 prodstub_check_jobdata_3 200 prod-if job110 type106 $TARGET110 info-owner-4 testdata/ecs/job-template.json
1688
1689 prodstub_equal create/prod-if/job110 1
1690 prodstub_equal delete/prod-if/job110 0
1691
1692 ecs_api_idc_get_job_ids 200 type106 NOWNER job110
1693
1694 ecs_api_idc_get_job_status2 200 job110 ENABLED  2 prod-ie prod-if
1695
1696 ## Status updates prod-ia and jobs
1697
1698 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
1699
1700 ecs_api_edp_get_producer_status 200 prod-ia ENABLED
1701 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1702 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1703 ecs_api_edp_get_producer_status 200 prod-id ENABLED
1704 ecs_api_edp_get_producer_status 200 prod-ie ENABLED
1705 ecs_api_edp_get_producer_status 200 prod-if ENABLED
1706
1707 # Arm producer prod-ia for supervision failure
1708 prodstub_arm_producer 200 prod-ia 400
1709
1710 # Wait for producer prod-ia to go disabled
1711 ecs_api_edp_get_producer_status 200 prod-ia DISABLED 360
1712
1713 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
1714
1715 ecs_api_edp_get_producer_status 200 prod-ia DISABLED
1716 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1717 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1718 ecs_api_edp_get_producer_status 200 prod-id ENABLED
1719 ecs_api_edp_get_producer_status 200 prod-ie ENABLED
1720 ecs_api_edp_get_producer_status 200 prod-if ENABLED
1721
1722
1723 ecs_api_idc_get_job_status2 200 job101 ENABLED 1 prod-ia
1724 ecs_api_idc_get_job_status2 200 job102 ENABLED 1 prod-ia
1725 ecs_api_idc_get_job_status2 200 job103 ENABLED 1 prod-ib
1726 ecs_api_idc_get_job_status2 200 job108 ENABLED 1 prod-id
1727 ecs_api_idc_get_job_status2 200 job110 ENABLED 2 prod-ie prod-if
1728
1729 # Arm producer prod-ia for supervision
1730 prodstub_arm_producer 200 prod-ia 200
1731
1732 # Wait for producer prod-ia to go enabled
1733 ecs_api_edp_get_producer_status 200 prod-ia ENABLED 360
1734
1735 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
1736
1737 ecs_api_edp_get_producer_status 200 prod-ia ENABLED
1738 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1739 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1740 ecs_api_edp_get_producer_status 200 prod-id ENABLED
1741 ecs_api_edp_get_producer_status 200 prod-ie ENABLED
1742 ecs_api_edp_get_producer_status 200 prod-if ENABLED
1743
1744 ecs_api_idc_get_job_status2 200 job101 ENABLED 1 prod-ia
1745 ecs_api_idc_get_job_status2 200 job102 ENABLED 1 prod-ia
1746 ecs_api_idc_get_job_status2 200 job103 ENABLED 1 prod-ib
1747 ecs_api_idc_get_job_status2 200 job108 ENABLED 1 prod-id
1748 ecs_api_idc_get_job_status2 200 job110 ENABLED 2 prod-ie prod-if
1749
1750 # Arm producer prod-ia for supervision failure
1751 prodstub_arm_producer 200 prod-ia 400
1752
1753 # Wait for producer prod-ia to go disabled
1754 ecs_api_edp_get_producer_status 200 prod-ia DISABLED 360
1755
1756 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
1757
1758 ecs_api_edp_get_producer_status 200 prod-ia DISABLED
1759 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1760 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1761 ecs_api_edp_get_producer_status 200 prod-id ENABLED
1762 ecs_api_edp_get_producer_status 200 prod-ie ENABLED
1763 ecs_api_edp_get_producer_status 200 prod-if ENABLED
1764
1765 ecs_api_idc_get_job_status2 200 job101 ENABLED 1 prod-ia
1766 ecs_api_idc_get_job_status2 200 job102 ENABLED 1 prod-ia
1767 ecs_api_idc_get_job_status2 200 job103 ENABLED 1 prod-ib
1768 ecs_api_idc_get_job_status2 200 job108 ENABLED 1 prod-id
1769 ecs_api_idc_get_job_status2 200 job110 ENABLED 2 prod-ie prod-if
1770
1771 # Wait for producer prod-ia to be removed
1772 if [[ "$ECS_FEATURE_LEVEL" == *"INFO-TYPES"* ]]; then
1773     ecs_equal json:data-producer/v1/info-producers 9 1000
1774 else
1775     ecs_equal json:ei-producer/v1/eiproducers 9 1000
1776 fi
1777
1778 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
1779
1780
1781 ecs_api_edp_get_producer_status 404 prod-ia
1782 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1783 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1784 ecs_api_edp_get_producer_status 200 prod-id ENABLED
1785 ecs_api_edp_get_producer_status 200 prod-ie ENABLED
1786 ecs_api_edp_get_producer_status 200 prod-if ENABLED
1787
1788 ecs_api_idc_get_job_status2 200 job101 DISABLED EMPTYPROD
1789 ecs_api_idc_get_job_status2 200 job102 DISABLED EMPTYPROD
1790 ecs_api_idc_get_job_status2 200 job103 ENABLED 1 prod-ib
1791 ecs_api_idc_get_job_status2 200 job108 ENABLED 1 prod-id
1792 ecs_api_idc_get_job_status2 200 job110 ENABLED 2 prod-ie prod-if
1793
1794
1795 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
1796     cr_equal received_callbacks 28 30
1797
1798     cr_equal received_callbacks?id=info-job101-status 1
1799     cr_equal received_callbacks?id=info-job102-status 1
1800     cr_api_check_all_ecs_events 200 info-job101-status DISABLED
1801     cr_api_check_all_ecs_events 200 info-job102-status DISABLED
1802 else
1803     cr_equal received_callbacks 12 30
1804
1805     cr_equal received_callbacks?id=info-job101-status 1
1806     cr_equal received_callbacks?id=info-job102-status 1
1807     cr_api_check_all_ecs_events 200 info-job101-status DISABLED
1808     cr_api_check_all_ecs_events 200 info-job102-status DISABLED
1809 fi
1810
1811
1812 # Arm producer prod-ie for supervision failure
1813 prodstub_arm_producer 200 prod-ie 400
1814
1815 ecs_api_edp_get_producer_status 200 prod-ie DISABLED 1000
1816
1817 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
1818
1819 ecs_api_edp_get_producer_status 404 prod-ia
1820 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1821 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1822 ecs_api_edp_get_producer_status 200 prod-id ENABLED
1823 ecs_api_edp_get_producer_status 200 prod-ie DISABLED
1824 ecs_api_edp_get_producer_status 200 prod-if ENABLED
1825
1826 ecs_api_idc_get_job_status2 200 job101 DISABLED EMPTYPROD
1827 ecs_api_idc_get_job_status2 200 job102 DISABLED EMPTYPROD
1828 ecs_api_idc_get_job_status2 200 job103 ENABLED 1 prod-ib
1829 ecs_api_idc_get_job_status2 200 job108 ENABLED 1 prod-id
1830 ecs_api_idc_get_job_status2 200 job110 ENABLED 2 prod-ie prod-if
1831
1832 #Disable create for job110 in prod-ie
1833 prodstub_arm_job_create 200 prod-ie job110 400
1834
1835 #Update tjob 10 - only prod-if will be updated
1836 ecs_api_idc_put_job 200 job110 type106 $TARGET110 info-owner-4 $INFOSTATUS110 testdata/ecs/job-template2.json  VALIDATE
1837 #Reset producer and job responses
1838 prodstub_arm_producer 200 prod-ie 200
1839 prodstub_arm_job_create 200 prod-ie job110 200
1840
1841 ecs_api_edp_get_producer_status 200 prod-ie ENABLED 360
1842
1843 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
1844
1845 #Wait for job to be updated
1846 sleep_wait 120
1847
1848 prodstub_check_jobdata_3 200 prod-if job110 type106 $TARGET110 info-owner-4 testdata/ecs/job-template2.json
1849
1850 prodstub_arm_producer 200 prod-if 400
1851
1852 ecs_api_edp_get_producer_status 200 prod-if DISABLED 360
1853
1854 if [[ "$ECS_FEATURE_LEVEL" == *"INFO-TYPES"* ]]; then
1855     ecs_equal json:data-producer/v1/info-producers 8 1000
1856 else
1857     ecs_equal json:ei-producer/v1/eiproducers 8 1000
1858 fi
1859
1860 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
1861
1862 ecs_api_edp_get_producer_status 404 prod-ia
1863 ecs_api_edp_get_producer_status 200 prod-ib ENABLED
1864 ecs_api_edp_get_producer_status 200 prod-ic ENABLED
1865 ecs_api_edp_get_producer_status 200 prod-id ENABLED
1866 ecs_api_edp_get_producer_status 200 prod-ie ENABLED
1867 ecs_api_edp_get_producer_status 404 prod-if
1868
1869 ecs_api_idc_get_job_status2 200 job101 DISABLED EMPTYPROD
1870 ecs_api_idc_get_job_status2 200 job102 DISABLED EMPTYPROD
1871 ecs_api_idc_get_job_status2 200 job103 ENABLED 1 prod-ib
1872 ecs_api_idc_get_job_status2 200 job108 ENABLED 1 prod-id
1873 ecs_api_idc_get_job_status2 200 job110 ENABLED 1 prod-ie
1874
1875 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
1876     cr_equal received_callbacks 28
1877 else
1878     cr_equal received_callbacks 12
1879 fi
1880 ### Test of pre and post validation
1881
1882 ecs_api_idc_get_type_ids 200 type1 type2 type4 type6 type101 type102 type104 type106
1883 ecs_api_idc_put_job 404 job150 type150 $TARGET150 info-owner-1 $INFOSTATUS150 testdata/ecs/job-template.json VALIDATE
1884 ecs_api_idc_put_job 201 job160 type160 $TARGET160 info-owner-1 $INFOSTATUS160 testdata/ecs/job-template.json
1885
1886 ecs_api_idc_get_job_status2 404 job150
1887 ecs_api_idc_get_job_status2 200 job160 DISABLED EMPTYPROD 60
1888
1889 prodstub_arm_producer 200 prod-ig
1890 prodstub_arm_job_create 200 prod-ig job150
1891 prodstub_arm_job_create 200 prod-ig job160
1892
1893 ecs_api_edp_put_producer_2 201 prod-ig $CB_JOB/prod-ig $CB_SV/prod-ig NOTYPE
1894 ecs_api_edp_get_producer_status 200 prod-ig ENABLED 360
1895
1896 ecs_api_edp_get_producer_2 200 prod-ig $CB_JOB/prod-ig $CB_SV/prod-ig EMPTY
1897
1898 ecs_api_idc_get_job_status2 404 job150
1899 ecs_api_idc_get_job_status2 200 job160 DISABLED EMPTYPROD 60
1900
1901 prodstub_arm_type 200 prod-ig type160
1902
1903 ecs_api_edp_put_type_2 201 type160 testdata/ecs/info-type-60.json
1904 ecs_api_idc_get_type_ids 200 type1 type2 type4 type6 type101 type102 type104 type106 type160
1905
1906 ecs_api_edp_put_producer_2 200 prod-ig $CB_JOB/prod-ig $CB_SV/prod-ig type160
1907 ecs_api_edp_get_producer_status 200 prod-ig ENABLED 360
1908 ecs_api_edp_get_producer_2 200 prod-ig $CB_JOB/prod-ig $CB_SV/prod-ig type160
1909
1910 ecs_api_idc_put_job 404 job150 type150 $TARGET150 info-owner-1 $INFOSTATUS150 testdata/ecs/job-template.json VALIDATE
1911
1912 ecs_api_idc_get_job_status2 404 job150
1913 ecs_api_idc_get_job_status2 200 job160 ENABLED 1 prod-ig 60
1914
1915 prodstub_check_jobdata_3 200 prod-ig job160 type160 $TARGET160 info-owner-1 testdata/ecs/job-template.json
1916
1917 prodstub_equal create/prod-ig/job160 1
1918 prodstub_equal delete/prod-ig/job160 0
1919
1920 prodstub_arm_type 200 prod-ig type150
1921
1922 ecs_api_edp_put_type_2 201 type150 testdata/ecs/info-type-50.json
1923 ecs_api_idc_get_type_ids 200 type1 type2 type4 type6 type101 type102 type104 type106 type160 type150
1924
1925 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
1926     cr_equal received_callbacks 30 30
1927     cr_equal received_callbacks?id=type-status1 18
1928     cr_api_check_all_ecs_subscription_events 200 type-status1 type160 testdata/ecs/info-type-60.json REGISTERED type150 testdata/ecs/info-type-50.json REGISTERED
1929 else
1930     cr_equal received_callbacks 12
1931 fi
1932
1933 ecs_api_edp_put_producer_2 200 prod-ig $CB_JOB/prod-ig $CB_SV/prod-ig type160 type150
1934 ecs_api_edp_get_producer_status 200 prod-ig ENABLED 360
1935
1936 ecs_api_edp_get_producer_2 200 prod-ig $CB_JOB/prod-ig $CB_SV/prod-ig type160 type150
1937
1938 ecs_api_idc_get_job_status2 404 job150
1939 ecs_api_idc_get_job_status2 200 job160 ENABLED  1 prod-ig
1940
1941 ecs_api_idc_put_job 201 job150 type150 $TARGET150 info-owner-1 $INFOSTATUS150 testdata/ecs/job-template.json VALIDATE
1942
1943 ecs_api_idc_get_job_status2 200 job150 ENABLED  1 prod-ig 60
1944 ecs_api_idc_get_job_status2 200 job160 ENABLED  1 prod-ig
1945
1946 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
1947     cr_equal received_callbacks 30 30
1948     cr_equal received_callbacks?id=type-status1 18
1949 else
1950     cr_equal received_callbacks 12
1951 fi
1952
1953 check_ecs_logs
1954
1955 store_logs END
1956
1957 #### TEST COMPLETE ####
1958
1959 print_result
1960
1961 auto_clean_environment