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