Kafka now works in kube for calls outside its namespace
[nonrtric.git] / test / auto-test / FTC1800.sh
index d8ecc85..232f901 100755 (executable)
 #
 
 
-TC_ONELINE_DESCR="ECS Create 10000 jobs and restart, test job persisency"
+TC_ONELINE_DESCR="ECS Create 10000 jobs (ei and info) restart, test job persistency"
 
-#App names to include in the test, space separated list
-INCLUDED_IMAGES="ECS PRODSTUB CR CP"
+#App names to include in the test when running docker, space separated list
+DOCKER_INCLUDED_IMAGES="ECS PRODSTUB CR CP NGW KUBEPROXY"
 
-#SUPPORTED TEST ENV FILE
-SUPPORTED_PROFILES="ONAP-MASTER ORAN-MASTER"
+#App names to include in the test when running kubernetes, space separated list
+KUBE_INCLUDED_IMAGES="ECS PRODSTUB CP CR KUBEPROXY NGW"
+#Prestarted app (not started by script) to include in the test when running kubernetes, space separated list
+KUBE_PRESTARTED_IMAGES=""
 
-. ../common/testcase_common.sh  $@
-. ../common/ecs_api_functions.sh
-. ../common/prodstub_api_functions.sh
+#Ignore image in DOCKER_INCLUDED_IMAGES, KUBE_INCLUDED_IMAGES if
+#the image is not configured in the supplied env_file
+#Used for images not applicable to all supported profile
+CONDITIONALLY_IGNORED_IMAGES="NGW"
+
+#Supported test environment profiles
+SUPPORTED_PROFILES="ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-RELEASE ORAN-E-RELEASE"
+#Supported run modes
+SUPPORTED_RUNMODES="DOCKER KUBE"
+
+. ../common/testcase_common.sh $@
+
+setup_testenvironment
 
 #### TEST BEGIN ####
 
 FLAT_A1_EI="1"
 
-clean_containers
+clean_environment
+
+start_kube_proxy
 
 use_ecs_rest_http
 
 use_prod_stub_http
 
-start_ecs
+start_ecs NOPROXY $SIM_GROUP/$ECS_COMPOSE_DIR/$ECS_CONFIG_FILE
 
 start_prod_stub
 
 set_ecs_trace
 
-start_control_panel
+start_control_panel $SIM_GROUP/$CONTROL_PANEL_COMPOSE_DIR/$CONTROL_PANEL_CONFIG_FILE
 
-start_cr
+if [ ! -z "$NRT_GATEWAY_APP_NAME" ]; then
+    start_gateway $SIM_GROUP/$NRT_GATEWAY_COMPOSE_DIR/$NRT_GATEWAY_CONFIG_FILE
+fi
 
-CB_JOB="http://$PROD_STUB_APP_NAME:$PROD_STUB_PORT/callbacks/job"
-CB_SV="http://$PROD_STUB_APP_NAME:$PROD_STUB_PORT/callbacks/supervision"
+start_cr 1
+
+CB_JOB="$PROD_STUB_SERVICE_PATH$PROD_STUB_JOB_CALLBACK"
+CB_SV="$PROD_STUB_SERVICE_PATH$PROD_STUB_SUPERVISION_CALLBACK"
 TARGET="http://localhost:80/target"  # Dummy target
 
 NUM_JOBS=10000
+use_info_jobs=false  #Set flag if interface supporting info-types is used
+if [[ "$ECS_FEATURE_LEVEL" == *"INFO-TYPES"* ]]; then
+    use_info_jobs=true
+    NUM_JOBS=5000 # 5K ei jobs and 5K info jobs
+fi
+
+if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
+    #Type registration status callbacks
+    TYPESTATUS1="$CR_SERVICE_APP_PATH_0/type-status1"
+    TYPESTATUS2="$CR_SERVICE_APP_PATH_0/type-status2"
+
+    ecs_api_idc_put_subscription 201 subscription-id-1 owner1 $TYPESTATUS1
+
+    ecs_api_idc_get_subscription_ids 200 owner1 subscription-id-1
+
+    ecs_api_idc_put_subscription 201 subscription-id-2 owner2 $TYPESTATUS2
+
+    ecs_api_idc_get_subscription_ids 200 owner2 subscription-id-2
+
+fi
 
 # Setup prodstub sim to accept calls for producers, types and jobs
 prodstub_arm_producer 200 prod-a
@@ -96,15 +134,129 @@ do
     fi
 done
 
-ecs_api_edp_put_producer 201 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
+if [ $use_info_jobs ]; then
+    prodstub_arm_producer 200 prod-a
+    prodstub_arm_producer 200 prod-b
+    prodstub_arm_producer 200 prod-c
+    prodstub_arm_producer 200 prod-d
+
+    prodstub_arm_type 200 prod-a type101
+
+    prodstub_arm_type 200 prod-b type101
+    prodstub_arm_type 200 prod-b type102
+
+    prodstub_arm_type 200 prod-c type101
+    prodstub_arm_type 200 prod-c type102
+    prodstub_arm_type 200 prod-c type103
+
+    prodstub_arm_type 200 prod-d type104
+    prodstub_arm_type 200 prod-d type105
+
+    for ((i=1; i<=$NUM_JOBS; i++))
+    do
+        if [ $(($i%5)) -eq 0 ]; then
+            prodstub_arm_job_create 200 prod-a job$(($i+$NUM_JOBS))
+            prodstub_arm_job_create 200 prod-b job$(($i+$NUM_JOBS))
+            prodstub_arm_job_create 200 prod-c job$(($i+$NUM_JOBS))
+        fi
+        if [ $(($i%5)) -eq 1 ]; then
+            prodstub_arm_job_create 200 prod-b job$(($i+$NUM_JOBS))
+            prodstub_arm_job_create 200 prod-c job$(($i+$NUM_JOBS))
+        fi
+        if [ $(($i%5)) -eq 2 ]; then
+            prodstub_arm_job_create 200 prod-c job$(($i+$NUM_JOBS))
+        fi
+        if [ $(($i%5)) -eq 3 ]; then
+            prodstub_arm_job_create 200 prod-d job$(($i+$NUM_JOBS))
+        fi
+        if [ $(($i%5)) -eq 4 ]; then
+            prodstub_arm_job_create 200 prod-d job$(($i+$NUM_JOBS))
+        fi
+    done
+fi
+
+
+if [ $ECS_VERSION == "V1-1" ]; then
+
+    ecs_api_edp_put_producer 201 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
+
+    ecs_api_edp_put_producer 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type1 testdata/ecs/ei-type-1.json type2 testdata/ecs/ei-type-2.json
+
+    ecs_api_edp_put_producer 201 prod-c $CB_JOB/prod-c $CB_SV/prod-c type1 testdata/ecs/ei-type-1.json type2 testdata/ecs/ei-type-2.json type3 testdata/ecs/ei-type-3.json
+
+    ecs_api_edp_put_producer 201 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4 testdata/ecs/ei-type-4.json type5 testdata/ecs/ei-type-5.json
+
+else
+
+    ecs_api_edp_put_type_2 201 type1 testdata/ecs/ei-type-1.json
+    ecs_api_edp_put_type_2 201 type2 testdata/ecs/ei-type-2.json
+    ecs_api_edp_put_type_2 201 type3 testdata/ecs/ei-type-3.json
+    ecs_api_edp_put_type_2 201 type4 testdata/ecs/ei-type-4.json
+    ecs_api_edp_put_type_2 201 type5 testdata/ecs/ei-type-5.json
+
+    ecs_api_edp_put_producer_2 201 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
+
+    ecs_api_edp_put_producer_2 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type1 type2
+
+    ecs_api_edp_put_producer_2 201 prod-c $CB_JOB/prod-c $CB_SV/prod-c type1 type2 type3
+
+    ecs_api_edp_put_producer_2 201 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4 type5
+
+    if [ $use_info_jobs ]; then
+        ecs_api_edp_put_type_2 201 type101 testdata/ecs/info-type-1.json
+        ecs_api_edp_put_type_2 201 type102 testdata/ecs/info-type-2.json
+        ecs_api_edp_put_type_2 201 type103 testdata/ecs/info-type-3.json
+        ecs_api_edp_put_type_2 201 type104 testdata/ecs/info-type-4.json
+        ecs_api_edp_put_type_2 201 type105 testdata/ecs/info-type-5.json
+
+
+
+        if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
+            cr_equal 0 received_callbacks 20 30
+            cr_equal 0 received_callbacks?id=type-status1 10
+            cr_equal 0 received_callbacks?id=type-status2 10
+
+            cr_api_check_all_ecs_subscription_events 200 0 type-status1 \
+                type1 testdata/ecs/ei-type-1.json REGISTERED \
+                type2 testdata/ecs/ei-type-2.json REGISTERED \
+                type3 testdata/ecs/ei-type-3.json REGISTERED \
+                type4 testdata/ecs/ei-type-4.json REGISTERED \
+                type5 testdata/ecs/ei-type-5.json REGISTERED \
+                type101 testdata/ecs/info-type-1.json REGISTERED \
+                type102 testdata/ecs/info-type-2.json REGISTERED \
+                type103 testdata/ecs/info-type-3.json REGISTERED \
+                type104 testdata/ecs/info-type-4.json REGISTERED \
+                type105 testdata/ecs/info-type-5.json REGISTERED
+
+            cr_api_check_all_ecs_subscription_events 200 0 type-status2 \
+                type1 testdata/ecs/ei-type-1.json REGISTERED \
+                type2 testdata/ecs/ei-type-2.json REGISTERED \
+                type3 testdata/ecs/ei-type-3.json REGISTERED \
+                type4 testdata/ecs/ei-type-4.json REGISTERED \
+                type5 testdata/ecs/ei-type-5.json REGISTERED \
+                type101 testdata/ecs/info-type-1.json REGISTERED \
+                type102 testdata/ecs/info-type-2.json REGISTERED \
+                type103 testdata/ecs/info-type-3.json REGISTERED \
+                type104 testdata/ecs/info-type-4.json REGISTERED \
+                type105 testdata/ecs/info-type-5.json REGISTERED
+
+        fi
+
+        ecs_api_edp_put_producer_2 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 type101
 
-ecs_api_edp_put_producer 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type1 testdata/ecs/ei-type-1.json type2 testdata/ecs/ei-type-2.json
+        ecs_api_edp_put_producer_2 200 prod-b $CB_JOB/prod-b $CB_SV/prod-b type1 type2 type101 type102
 
-ecs_api_edp_put_producer 201 prod-c $CB_JOB/prod-c $CB_SV/prod-c type1 testdata/ecs/ei-type-1.json type2 testdata/ecs/ei-type-2.json type3 testdata/ecs/ei-type-3.json
+        ecs_api_edp_put_producer_2 200 prod-c $CB_JOB/prod-c $CB_SV/prod-c type1 type2 type3 type101 type102 type103
 
-ecs_api_edp_put_producer 201 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4 testdata/ecs/ei-type-4.json type5 testdata/ecs/ei-type-5.json
+        ecs_api_edp_put_producer_2 200 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4 type5 type104 type105
+    fi
+fi
 
-ecs_equal json:ei-producer/v1/eiproducers 4
+if [ $use_info_jobs ]; then
+    ecs_equal json:data-producer/v1/info-producers 4
+else
+    ecs_equal json:ei-producer/v1/eiproducers 4
+fi
 
 ecs_api_edp_get_producer_status 200 prod-a ENABLED
 ecs_api_edp_get_producer_status 200 prod-b ENABLED
@@ -114,43 +266,63 @@ ecs_api_edp_get_producer_status 200 prod-d ENABLED
 for ((i=1; i<=$NUM_JOBS; i++))
 do
     if [ $(($i%5)) -eq 0 ]; then
-        ecs_api_a1_put_job 201 job$i type1 $TARGET ric1 $CR_PATH/job_status_ric1 testdata/ecs/job-template.json
+        ecs_api_a1_put_job 201 job$i type1 $TARGET ric1 $CR_SERVICE_APP_PATH_0/job_status_ric1 testdata/ecs/job-template.json
         if [  -z "$FLAT_A1_EI" ]; then
             ecs_api_a1_get_job_status 200 type1 job$i ENABLED
         else
-            ecs_api_a1_get_job_status 200 job$i ENABLED
+            ecs_api_a1_get_job_status 200 job$i ENABLED 120
+        fi
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_put_job 201 job$(($i+$NUM_JOBS)) type101 $TARGET info-owner $CR_SERVICE_APP_PATH_0/job_status_info-owner testdata/ecs/job-template.json VALIDATE
+            ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) ENABLED 3 prod-a prod-b prod-c 120
         fi
     fi
     if [ $(($i%5)) -eq 1 ]; then
-        ecs_api_a1_put_job 201 job$i type2 $TARGET ric1 $CR_PATH/job_status_ric1 testdata/ecs/job-template.json
+        ecs_api_a1_put_job 201 job$i type2 $TARGET ric1 $CR_SERVICE_APP_PATH_0/job_status_ric1 testdata/ecs/job-template.json
         if [  -z "$FLAT_A1_EI" ]; then
             ecs_api_a1_get_job_status 200 type2 job$i ENABLED
         else
-            ecs_api_a1_get_job_status 200 job$i ENABLED
+            ecs_api_a1_get_job_status 200 job$i ENABLED 120
+        fi
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_put_job 201 job$(($i+$NUM_JOBS)) type102 $TARGET info-owner $CR_SERVICE_APP_PATH_0/job_status_info-owner testdata/ecs/job-template.json VALIDATE
+            ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) ENABLED 2 prod-b prod-c 120
         fi
     fi
     if [ $(($i%5)) -eq 2 ]; then
-        ecs_api_a1_put_job 201 job$i type3 $TARGET ric1 $CR_PATH/job_status_ric1 testdata/ecs/job-template.json
+        ecs_api_a1_put_job 201 job$i type3 $TARGET ric1 $CR_SERVICE_APP_PATH_0/job_status_ric1 testdata/ecs/job-template.json
         if [  -z "$FLAT_A1_EI" ]; then
             ecs_api_a1_get_job_status 200 type3 job$i ENABLED
         else
-            ecs_api_a1_get_job_status 200 job$i ENABLED
+            ecs_api_a1_get_job_status 200 job$i ENABLED 120
+        fi
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_put_job 201 job$(($i+$NUM_JOBS)) type103 $TARGET info-owner $CR_SERVICE_APP_PATH_0/job_status_info-owner testdata/ecs/job-template.json VALIDATE
+            ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) ENABLED 1 prod-c 120
         fi
     fi
     if [ $(($i%5)) -eq 3 ]; then
-        ecs_api_a1_put_job 201 job$i type4 $TARGET ric1 $CR_PATH/job_status_ric1 testdata/ecs/job-template.json
+        ecs_api_a1_put_job 201 job$i type4 $TARGET ric1 $CR_SERVICE_APP_PATH_0/job_status_ric1 testdata/ecs/job-template.json
         if [  -z "$FLAT_A1_EI" ]; then
             ecs_api_a1_get_job_status 200 type4 job$i ENABLED
         else
-            ecs_api_a1_get_job_status 200 job$i ENABLED
+            ecs_api_a1_get_job_status 200 job$i ENABLED 120
+        fi
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_put_job 201 job$(($i+$NUM_JOBS)) type104 $TARGET info-owner $CR_SERVICE_APP_PATH_0/job_status_info-owner testdata/ecs/job-template.json VALIDATE
+            ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) ENABLED 1 prod-d 120
         fi
     fi
     if [ $(($i%5)) -eq 4 ]; then
-        ecs_api_a1_put_job 201 job$i type5 $TARGET ric1 $CR_PATH/job_status_ric1 testdata/ecs/job-template.json
+        ecs_api_a1_put_job 201 job$i type5 $TARGET ric1 $CR_SERVICE_APP_PATH_0/job_status_ric1 testdata/ecs/job-template.json
         if [  -z "$FLAT_A1_EI" ]; then
             ecs_api_a1_get_job_status 200 type5 job$i ENABLED
         else
-            ecs_api_a1_get_job_status 200 job$i ENABLED
+            ecs_api_a1_get_job_status 200 job$i ENABLED 120
+        fi
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_put_job 201 job$(($i+$NUM_JOBS)) type105 $TARGET info-owner $CR_SERVICE_APP_PATH_0/job_status_info-owner testdata/ecs/job-template.json VALIDATE
+            ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) ENABLED 1 prod-d 120
         fi
     fi
 done
@@ -163,35 +335,104 @@ if [  -z "$FLAT_A1_EI" ]; then
     ecs_equal json:A1-EI/v1/eitypes/type5/eijobs $(($NUM_JOBS/5))
 else
     ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type1 $(($NUM_JOBS/5))
-    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type1 $(($NUM_JOBS/5))
-    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type1 $(($NUM_JOBS/5))
-    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type1 $(($NUM_JOBS/5))
-    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type1 $(($NUM_JOBS/5))
+    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type2 $(($NUM_JOBS/5))
+    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type3 $(($NUM_JOBS/5))
+    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type4 $(($NUM_JOBS/5))
+    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type5 $(($NUM_JOBS/5))
+fi
+if [ $use_info_jobs ]; then
+    ecs_equal json:data-consumer/v1/info-jobs?infoTypeId=type101 $(($NUM_JOBS/5))
+    ecs_equal json:data-consumer/v1/info-jobs?infoTypeId=type102 $(($NUM_JOBS/5))
+    ecs_equal json:data-consumer/v1/info-jobs?infoTypeId=type103 $(($NUM_JOBS/5))
+    ecs_equal json:data-consumer/v1/info-jobs?infoTypeId=type104 $(($NUM_JOBS/5))
+    ecs_equal json:data-consumer/v1/info-jobs?infoTypeId=type105 $(($NUM_JOBS/5))
+fi
+
+if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
+    cr_equal 0 received_callbacks 20 30
+
+else
+    cr_equal 0 received_callbacks 0 30
+
+fi
+
+
+if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
+
+    ecs_equal json:/data-consumer/v1/info-type-subscription 2 200
+
+    ecs_api_idc_get_subscription_ids 200 owner1 subscription-id-1
+    ecs_api_idc_get_subscription_ids 200 owner2 subscription-id-2
+
+    if [ $use_info_jobs ]; then
+        ecs_equal json:data-producer/v1/info-types 10 1000
+    else
+        ecs_equal json:ei-producer/v1/eitypes 5 1000
+    fi
+
 fi
 
-restart_ecs
+stop_ecs
+
+cr_api_reset 0
+
+start_stopped_ecs
 
 set_ecs_trace
 
+if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
+
+    ecs_equal json:/data-consumer/v1/info-type-subscription 2 200
+
+    ecs_api_idc_get_subscription_ids 200 owner1 subscription-id-1
+    ecs_api_idc_get_subscription_ids 200 owner2 subscription-id-2
+
+    if [ $use_info_jobs ]; then
+        ecs_equal json:data-producer/v1/info-types 10 1000
+    else
+        ecs_equal json:ei-producer/v1/eitypes 5 1000
+    fi
+fi
+
+cr_equal 0 received_callbacks 0
+
 for ((i=1; i<=$NUM_JOBS; i++))
 do
     if [ $(($i%5)) -eq 0 ]; then
         prodstub_delete_jobdata 204 prod-a job$i
         prodstub_delete_jobdata 204 prod-b job$i
         prodstub_delete_jobdata 204 prod-c job$i
+        if [ $use_info_jobs ]; then
+            prodstub_delete_jobdata 204 prod-a job$(($i+$NUM_JOBS))
+            prodstub_delete_jobdata 204 prod-b job$(($i+$NUM_JOBS))
+            prodstub_delete_jobdata 204 prod-c job$(($i+$NUM_JOBS))
+        fi
     fi
     if [ $(($i%5)) -eq 1 ]; then
         prodstub_delete_jobdata 204 prod-b job$i
         prodstub_delete_jobdata 204 prod-c job$i
+        if [ $use_info_jobs ]; then
+            prodstub_delete_jobdata 204 prod-b job$(($i+$NUM_JOBS))
+            prodstub_delete_jobdata 204 prod-c job$(($i+$NUM_JOBS))
+        fi
     fi
     if [ $(($i%5)) -eq 2 ]; then
         prodstub_delete_jobdata 204 prod-c job$i
+        if [ $use_info_jobs ]; then
+            prodstub_delete_jobdata 204 prod-c job$(($i+$NUM_JOBS))
+        fi
     fi
     if [ $(($i%5)) -eq 3 ]; then
         prodstub_delete_jobdata 204 prod-d job$i
+        if [ $use_info_jobs ]; then
+            prodstub_delete_jobdata 204 prod-d job$(($i+$NUM_JOBS))
+        fi
     fi
     if [ $(($i%5)) -eq 4 ]; then
         prodstub_delete_jobdata 204 prod-d job$i
+        if [ $use_info_jobs ]; then
+            prodstub_delete_jobdata 204 prod-d job$(($i+$NUM_JOBS))
+        fi
     fi
 done
 
@@ -206,49 +447,90 @@ do
         if [  -z "$FLAT_A1_EI" ]; then
             ecs_api_a1_get_job_status 200 type1 job$i DISABLED
         else
-            ecs_api_a1_get_job_status 200 job$i DISABLED
+            ecs_api_a1_get_job_status 200 job$i DISABLED 120
+        fi
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) DISABLED EMPTYPROD 120
         fi
     fi
     if [ $(($i%5)) -eq 1 ]; then
         if [  -z "$FLAT_A1_EI" ]; then
             ecs_api_a1_get_job_status 200 type2 job$i DISABLED
         else
-            ecs_api_a1_get_job_status 200 job$i DISABLED
+            ecs_api_a1_get_job_status 200 job$i DISABLED 120
+        fi
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) DISABLED EMPTYPROD 120
         fi
     fi
     if [ $(($i%5)) -eq 2 ]; then
         if [  -z "$FLAT_A1_EI" ]; then
             ecs_api_a1_get_job_status 200 type3 job$i DISABLED
         else
-            ecs_api_a1_get_job_status 200 job$i DISABLED
+            ecs_api_a1_get_job_status 200 job$i DISABLED 120
+        fi
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) DISABLED EMPTYPROD 120
         fi
     fi
     if [ $(($i%5)) -eq 3 ]; then
         if [  -z "$FLAT_A1_EI" ]; then
             ecs_api_a1_get_job_status 200 type4 job$i DISABLED
         else
-            ecs_api_a1_get_job_status 200 job$i DISABLED
+            ecs_api_a1_get_job_status 200 job$i DISABLED 120
+        fi
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) DISABLED EMPTYPROD 120
         fi
     fi
     if [ $(($i%5)) -eq 4 ]; then
         if [  -z "$FLAT_A1_EI" ]; then
             ecs_api_a1_get_job_status 200 type5 job$i DISABLED
         else
-            ecs_api_a1_get_job_status 200 job$i DISABLED
+            ecs_api_a1_get_job_status 200 job$i DISABLED 120
+        fi
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) DISABLED EMPTYPROD 120
         fi
     fi
 done
 
+if [ $ECS_VERSION == "V1-1" ]; then
+
+    ecs_api_edp_put_producer 201 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
+
+    ecs_api_edp_put_producer 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type1 testdata/ecs/ei-type-1.json type2 testdata/ecs/ei-type-2.json
+
+    ecs_api_edp_put_producer 201 prod-c $CB_JOB/prod-c $CB_SV/prod-c type1 testdata/ecs/ei-type-1.json type2 testdata/ecs/ei-type-2.json type3 testdata/ecs/ei-type-3.json
+
+    ecs_api_edp_put_producer 201 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4 testdata/ecs/ei-type-4.json type5 testdata/ecs/ei-type-5.json
+
+else
+    if [ $use_info_jobs ]; then
+        ecs_api_edp_put_producer_2 201 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1  type101
+
+        ecs_api_edp_put_producer_2 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type1 type2  type101 type102
 
-ecs_api_edp_put_producer 201 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 testdata/ecs/ei-type-1.json
+        ecs_api_edp_put_producer_2 201 prod-c $CB_JOB/prod-c $CB_SV/prod-c type1 type2 type3  type101 type102 type103
 
-ecs_api_edp_put_producer 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type1 testdata/ecs/ei-type-1.json type2 testdata/ecs/ei-type-2.json
+        ecs_api_edp_put_producer_2 201 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4 type5  type104 type105
+    else
+        ecs_api_edp_put_producer_2 201 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1
 
-ecs_api_edp_put_producer 201 prod-c $CB_JOB/prod-c $CB_SV/prod-c type1 testdata/ecs/ei-type-1.json type2 testdata/ecs/ei-type-2.json type3 testdata/ecs/ei-type-3.json
+        ecs_api_edp_put_producer_2 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type1 type2
 
-ecs_api_edp_put_producer 201 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4 testdata/ecs/ei-type-4.json type5 testdata/ecs/ei-type-5.json
+        ecs_api_edp_put_producer_2 201 prod-c $CB_JOB/prod-c $CB_SV/prod-c type1 type2 type3
 
-ecs_equal json:ei-producer/v1/eiproducers 4
+        ecs_api_edp_put_producer_2 201 prod-d $CB_JOB/prod-d $CB_SV/prod-d type4 type5
+    fi
+
+fi
+
+if [ $use_info_jobs ]; then
+    ecs_equal json:data-producer/v1/info-producers 4
+else
+    ecs_equal json:ei-producer/v1/eiproducers 4
+fi
 
 ecs_api_edp_get_producer_status 200 prod-a ENABLED
 ecs_api_edp_get_producer_status 200 prod-b ENABLED
@@ -261,35 +543,50 @@ do
         if [  -z "$FLAT_A1_EI" ]; then
             ecs_api_a1_get_job_status 200 type1 job$i ENABLED
         else
-            ecs_api_a1_get_job_status 200 job$i ENABLED
+            ecs_api_a1_get_job_status 200 job$i ENABLED 120
+        fi
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) ENABLED 3 prod-a prod-b prod-c 120
         fi
     fi
     if [ $(($i%5)) -eq 1 ]; then
         if [  -z "$FLAT_A1_EI" ]; then
             ecs_api_a1_get_job_status 200 type2 job$i ENABLED
         else
-            ecs_api_a1_get_job_status 200 job$i ENABLED
+            ecs_api_a1_get_job_status 200 job$i ENABLED 120
+        fi
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) ENABLED 2 prod-b prod-c 120
         fi
     fi
     if [ $(($i%5)) -eq 2 ]; then
         if [  -z "$FLAT_A1_EI" ]; then
             ecs_api_a1_get_job_status 200 type3 job$i ENABLED
         else
-            ecs_api_a1_get_job_status 200 job$i ENABLED
+            ecs_api_a1_get_job_status 200 job$i ENABLED 120
+        fi
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) ENABLED 1 prod-c 120
         fi
     fi
     if [ $(($i%5)) -eq 3 ]; then
         if [  -z "$FLAT_A1_EI" ]; then
             ecs_api_a1_get_job_status 200 type4 job$i ENABLED
         else
-            ecs_api_a1_get_job_status 200 job$i ENABLED
+            ecs_api_a1_get_job_status 200 job$i ENABLED 120
+        fi
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) ENABLED 1 prod-d 120
         fi
     fi
     if [ $(($i%5)) -eq 4 ]; then
         if [  -z "$FLAT_A1_EI" ]; then
             ecs_api_a1_get_job_status 200 type5 job$i ENABLED
         else
-            ecs_api_a1_get_job_status 200 job$i ENABLED
+            ecs_api_a1_get_job_status 200 job$i ENABLED 120
+        fi
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) ENABLED 1 prod-d 120
         fi
     fi
 done
@@ -303,31 +600,104 @@ if [  -z "$FLAT_A1_EI" ]; then
     ecs_equal json:A1-EI/v1/eitypes/type5/eijobs $(($NUM_JOBS/5))
 else
     ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type1 $(($NUM_JOBS/5))
-    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type1 $(($NUM_JOBS/5))
-    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type1 $(($NUM_JOBS/5))
-    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type1 $(($NUM_JOBS/5))
-    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type1 $(($NUM_JOBS/5))
+    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type2 $(($NUM_JOBS/5))
+    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type3 $(($NUM_JOBS/5))
+    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type4 $(($NUM_JOBS/5))
+    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type5 $(($NUM_JOBS/5))
+fi
+
+if [ $use_info_jobs ]; then
+    ecs_equal json:data-consumer/v1/info-jobs?infoTypeId=type101 $(($NUM_JOBS/5))
+    ecs_equal json:data-consumer/v1/info-jobs?infoTypeId=type102 $(($NUM_JOBS/5))
+    ecs_equal json:data-consumer/v1/info-jobs?infoTypeId=type103 $(($NUM_JOBS/5))
+    ecs_equal json:data-consumer/v1/info-jobs?infoTypeId=type104 $(($NUM_JOBS/5))
+    ecs_equal json:data-consumer/v1/info-jobs?infoTypeId=type105 $(($NUM_JOBS/5))
 fi
 
 for ((i=1; i<=$NUM_JOBS; i++))
 do
     if [ $(($i%5)) -eq 0 ]; then
-        prodstub_check_jobdata 200 prod-a job$i type1 $TARGET testdata/ecs/job-template.json
-        prodstub_check_jobdata 200 prod-b job$i type1 $TARGET testdata/ecs/job-template.json
-        prodstub_check_jobdata 200 prod-c job$i type1 $TARGET testdata/ecs/job-template.json
+        if [ $ECS_VERSION == "V1-1" ]; then
+            prodstub_check_jobdata 200 prod-a job$i type1 $TARGET ric1 testdata/ecs/job-template.json
+            prodstub_check_jobdata 200 prod-b job$i type1 $TARGET ric1 testdata/ecs/job-template.json
+            prodstub_check_jobdata 200 prod-c job$i type1 $TARGET ric1 testdata/ecs/job-template.json
+        else
+            if [ $use_info_jobs ]; then
+                prodstub_check_jobdata_3 200 prod-a job$i type1 $TARGET ric1 testdata/ecs/job-template.json
+                prodstub_check_jobdata_3 200 prod-b job$i type1 $TARGET ric1 testdata/ecs/job-template.json
+                prodstub_check_jobdata_3 200 prod-c job$i type1 $TARGET ric1 testdata/ecs/job-template.json
+            else
+                prodstub_check_jobdata_2 200 prod-a job$i type1 $TARGET ric1 testdata/ecs/job-template.json
+                prodstub_check_jobdata_2 200 prod-b job$i type1 $TARGET ric1 testdata/ecs/job-template.json
+                prodstub_check_jobdata_2 200 prod-c job$i type1 $TARGET ric1 testdata/ecs/job-template.json
+            fi
+        fi
+        if [ $use_info_jobs ]; then
+            prodstub_check_jobdata_3 200 prod-a job$(($i+$NUM_JOBS)) type101 $TARGET info-owner testdata/ecs/job-template.json
+            prodstub_check_jobdata_3 200 prod-b job$(($i+$NUM_JOBS)) type101 $TARGET info-owner testdata/ecs/job-template.json
+            prodstub_check_jobdata_3 200 prod-c job$(($i+$NUM_JOBS)) type101 $TARGET info-owner testdata/ecs/job-template.json
+        fi
+
     fi
     if [ $(($i%5)) -eq 1 ]; then
-        prodstub_check_jobdata 200 prod-b job$i type2 $TARGET testdata/ecs/job-template.json
-        prodstub_check_jobdata 200 prod-c job$i type2 $TARGET testdata/ecs/job-template.json
+        if [ $ECS_VERSION == "V1-1" ]; then
+            prodstub_check_jobdata 200 prod-b job$i type2 $TARGET ric1 testdata/ecs/job-template.json
+            prodstub_check_jobdata 200 prod-c job$i type2 $TARGET ric1 testdata/ecs/job-template.json
+        else
+            if [ $use_info_jobs ]; then
+                prodstub_check_jobdata_3 200 prod-b job$i type2 $TARGET ric1 testdata/ecs/job-template.json
+                prodstub_check_jobdata_3 200 prod-c job$i type2 $TARGET ric1 testdata/ecs/job-template.json
+            else
+                prodstub_check_jobdata_2 200 prod-b job$i type2 $TARGET ric1 testdata/ecs/job-template.json
+                prodstub_check_jobdata_2 200 prod-c job$i type2 $TARGET ric1 testdata/ecs/job-template.json
+            fi
+        fi
+        if [ $use_info_jobs ]; then
+            prodstub_check_jobdata_3 200 prod-b job$(($i+$NUM_JOBS)) type102 $TARGET info-owner testdata/ecs/job-template.json
+            prodstub_check_jobdata_3 200 prod-c job$(($i+$NUM_JOBS)) type102 $TARGET info-owner testdata/ecs/job-template.json
+        fi
     fi
     if [ $(($i%5)) -eq 2 ]; then
-        prodstub_check_jobdata 200 prod-c job$i type3 $TARGET testdata/ecs/job-template.json
+        if [ $ECS_VERSION == "V1-1" ]; then
+            prodstub_check_jobdata 200 prod-c job$i type3 $TARGET ric1 testdata/ecs/job-template.json
+        else
+            if [ $use_info_jobs ]; then
+                prodstub_check_jobdata_3 200 prod-c job$i type3 $TARGET ric1 testdata/ecs/job-template.json
+            else
+                prodstub_check_jobdata_2 200 prod-c job$i type3 $TARGET ric1 testdata/ecs/job-template.json
+            fi
+        fi
+        if [ $use_info_jobs ]; then
+            prodstub_check_jobdata_3 200 prod-c job$(($i+$NUM_JOBS)) type103 $TARGET info-owner testdata/ecs/job-template.json
+        fi
     fi
     if [ $(($i%5)) -eq 3 ]; then
-        prodstub_check_jobdata 200 prod-d job$i type4 $TARGET testdata/ecs/job-template.json
+        if [ $ECS_VERSION == "V1-1" ]; then
+            prodstub_check_jobdata 200 prod-d job$i type4 $TARGET ric1 testdata/ecs/job-template.json
+        else
+            if [ $use_info_jobs ]; then
+                prodstub_check_jobdata_3 200 prod-d job$i type4 $TARGET ric1 testdata/ecs/job-template.json
+            else
+                prodstub_check_jobdata_2 200 prod-d job$i type4 $TARGET ric1 testdata/ecs/job-template.json
+            fi
+        fi
+        if [ $use_info_jobs ]; then
+            prodstub_check_jobdata_3 200 prod-d job$(($i+$NUM_JOBS)) type104 $TARGET info-owner testdata/ecs/job-template.json
+        fi
     fi
     if [ $(($i%5)) -eq 4 ]; then
-        prodstub_check_jobdata 200 prod-d job$i type5 $TARGET testdata/ecs/job-template.json
+        if [ $ECS_VERSION == "V1-1" ]; then
+            prodstub_check_jobdata 200 prod-d job$i type5 $TARGET ric1 testdata/ecs/job-template.json
+        else
+            if [ $use_info_jobs ]; then
+                prodstub_check_jobdata_3 200 prod-d job$i type5 $TARGET ric1 testdata/ecs/job-template.json
+            else
+                prodstub_check_jobdata_2 200 prod-d job$i type5 $TARGET ric1 testdata/ecs/job-template.json
+            fi
+        fi
+        if [ $use_info_jobs ]; then
+            prodstub_check_jobdata_3 200 prod-d job$(($i+$NUM_JOBS)) type105 $TARGET info-owner testdata/ecs/job-template.json
+        fi
     fi
 done
 
@@ -336,22 +706,41 @@ for ((i=1; i<=$NUM_JOBS; i++))
 do
     if [ $(($i%5)) -eq 0 ]; then
         ecs_api_a1_delete_job 204 job$i
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_delete_job 204 job$(($i+$NUM_JOBS))
+        fi
     fi
     if [ $(($i%5)) -eq 1 ]; then
         ecs_api_a1_delete_job 204 job$i
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_delete_job 204 job$(($i+$NUM_JOBS))
+        fi
     fi
     if [ $(($i%5)) -eq 2 ]; then
         ecs_api_a1_delete_job 204 job$i
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_delete_job 204 job$(($i+$NUM_JOBS))
+        fi
     fi
     if [ $(($i%5)) -eq 3 ]; then
         ecs_api_a1_delete_job 204 job$i
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_delete_job 204 job$(($i+$NUM_JOBS))
+        fi
     fi
     if [ $(($i%5)) -eq 4 ]; then
         ecs_api_a1_delete_job 204 job$i
+        if [ $use_info_jobs ]; then
+            ecs_api_idc_delete_job 204 job$(($i+$NUM_JOBS))
+        fi
     fi
 done
 
-ecs_equal json:ei-producer/v1/eiproducers 4
+if [ $use_info_jobs ]; then
+    ecs_equal json:data-producer/v1/info-producers 4
+else
+    ecs_equal json:ei-producer/v1/eiproducers 4
+fi
 
 ecs_api_edp_get_producer_status 200 prod-a ENABLED
 ecs_api_edp_get_producer_status 200 prod-b ENABLED
@@ -366,10 +755,51 @@ if [  -z "$FLAT_A1_EI" ]; then
     ecs_equal json:A1-EI/v1/eitypes/type5/eijobs 0
 else
     ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type1 0
-    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type1 0
-    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type1 0
-    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type1 0
-    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type1 0
+    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type2 0
+    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type3 0
+    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type4 0
+    ecs_equal json:A1-EI/v1/eijobs?eiTypeId=type5 0
+fi
+
+if [ $use_info_jobs ]; then
+    ecs_equal json:data-consumer/v1/info-jobs?infoTypeId=type101 0
+    ecs_equal json:data-consumer/v1/info-jobs?infoTypeId=type102 0
+    ecs_equal json:data-consumer/v1/info-jobs?infoTypeId=type103 0
+    ecs_equal json:data-consumer/v1/info-jobs?infoTypeId=type104 0
+    ecs_equal json:data-consumer/v1/info-jobs?infoTypeId=type105 0
+fi
+
+if [ $use_info_jobs ]; then
+    if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
+        ecs_api_edp_put_type_2 200 type101 testdata/ecs/info-type-1.json
+        ecs_api_edp_put_type_2 200 type102 testdata/ecs/info-type-2.json
+        ecs_api_edp_put_type_2 200 type103 testdata/ecs/info-type-3.json
+        ecs_api_edp_put_type_2 200 type104 testdata/ecs/info-type-4.json
+        ecs_api_edp_put_type_2 200 type105 testdata/ecs/info-type-5.json
+    fi
+fi
+
+if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then
+    cr_equal 0 received_callbacks 10 30
+    cr_equal 0 received_callbacks?id=type-status1 5
+    cr_equal 0 received_callbacks?id=type-status2 5
+
+    cr_api_check_all_ecs_subscription_events 200 0 type-status1 \
+        type101 testdata/ecs/info-type-1.json REGISTERED \
+        type102 testdata/ecs/info-type-2.json REGISTERED \
+        type103 testdata/ecs/info-type-3.json REGISTERED \
+        type104 testdata/ecs/info-type-4.json REGISTERED \
+        type105 testdata/ecs/info-type-5.json REGISTERED
+
+    cr_api_check_all_ecs_subscription_events 200 0 type-status2 \
+        type101 testdata/ecs/info-type-1.json REGISTERED \
+        type102 testdata/ecs/info-type-2.json REGISTERED \
+        type103 testdata/ecs/info-type-3.json REGISTERED \
+        type104 testdata/ecs/info-type-4.json REGISTERED \
+        type105 testdata/ecs/info-type-5.json REGISTERED
+
+else
+    cr_equal 0 received_callbacks 0 30
 fi
 
 check_ecs_logs
@@ -381,4 +811,4 @@ store_logs END
 
 print_result
 
-auto_clean_containers
+auto_clean_environment
\ No newline at end of file