Merge "Change to AAF-compatible default credentials"
diff --git a/plans/aaf/aafapi/setup.sh b/plans/aaf/aafapi/setup.sh
index add9ae1..dd6cb29 100644
--- a/plans/aaf/aafapi/setup.sh
+++ b/plans/aaf/aafapi/setup.sh
@@ -44,8 +44,7 @@
 for i in {1..12}; do
 
 	if [ $(docker inspect --format '{{ .State.Running }}' $aaf_service) ] && \
-		[ $(docker inspect --format '{{ .State.Running }}' $cassandra_service) ] && \
-		[ $(docker inspect --format '{{ .State.Running }}' $aaf_service) ]
+		[ $(docker inspect --format '{{ .State.Running }}' $cassandra_service) ]
 	then
 		echo "AAF Service Running"
 		break
diff --git a/plans/aaf/sms-test-plan/teardown.sh b/plans/aaf/sms-test-plan/teardown.sh
index 2c8b3e8..fa5c218 100644
--- a/plans/aaf/sms-test-plan/teardown.sh
+++ b/plans/aaf/sms-test-plan/teardown.sh
@@ -15,11 +15,5 @@
 # limitations under the License.
 #
 
-docker cp sms:/sms/sms.log .
-cat sms.log
-rm sms.log
-rm -rf config
-docker stop sms vault
-docker rm sms vault
-docker rmi nexus3.onap.org:10001/onap/aaf/sms
-docker rmi docker.io/vault:0.10.0
+kill-instance.sh sms
+kill-instance.sh vault
diff --git a/plans/dmaap-datarouter/dr-suite/setup.sh b/plans/dmaap-datarouter/dr-suite/setup.sh
index e5debfc..023e265 100755
--- a/plans/dmaap-datarouter/dr-suite/setup.sh
+++ b/plans/dmaap-datarouter/dr-suite/setup.sh
@@ -38,7 +38,6 @@
 echo DR_NODE_IP=${DR_NODE_IP}
 echo DR_GATEWAY_IP=${DR_GATEWAY_IP}
 
-docker exec -i datarouter-prov sh -c "curl -k  -X PUT https://$DR_PROV_IP:8443/internal/api/NODES?val=dmaap-dr-node\|$DR_GATEWAY_IP"
 docker exec -i datarouter-prov sh -c "curl -k  -X PUT https://$DR_PROV_IP:8443/internal/api/PROV_AUTH_ADDRESSES?val=dmaap-dr-prov\|$DR_GATEWAY_IP"
 
 #Pass any variables required by Robot test suites in ROBOT_VARIABLES
diff --git a/plans/usecases/5G-bulkpm/composefile/docker-compose-e2e.yml b/plans/usecases/5G-bulkpm/composefile/docker-compose-e2e.yml
index 16db4af..e0471e5 100644
--- a/plans/usecases/5G-bulkpm/composefile/docker-compose-e2e.yml
+++ b/plans/usecases/5G-bulkpm/composefile/docker-compose-e2e.yml
@@ -76,6 +76,6 @@
 
   ves:
     container_name: vescollector
-    image: nexus3.onap.org:10001/onap/org.onap.dcaegen2.collectors.ves.vescollector:1.3.1
+    image: nexus3.onap.org:10001/onap/org.onap.dcaegen2.collectors.ves.vescollector:latest
     environment:
        DMAAPHOST:
\ No newline at end of file
diff --git a/plans/usecases/5G-bulkpm/setup.sh b/plans/usecases/5G-bulkpm/setup.sh
index c35df72..f90e456 100644
--- a/plans/usecases/5G-bulkpm/setup.sh
+++ b/plans/usecases/5G-bulkpm/setup.sh
@@ -6,7 +6,6 @@
 mkdir -p $WORKSPACE/archives/dmaapmr
 cd $WORKSPACE/archives/dmaapmr
 git clone --depth 1 http://gerrit.onap.org/r/dmaap/messagerouter/messageservice -b master
-git pull
 cd $WORKSPACE/archives/dmaapmr/messageservice/src/main/resources/docker-compose
 cp $WORKSPACE/archives/dmaapmr/messageservice/bundleconfig-local/etc/appprops/MsgRtrApi.properties /var/tmp/
 
@@ -126,6 +125,7 @@
 sed -i 's/dmaapdrhost/'${DR_PROV_IP}'/g' /tmp/datafile_endpoints.json
 docker cp /tmp/datafile_endpoints.json dfc:/config/
 docker restart dfc
+docker exec dfc /bin/sh -c "echo '${DR_NODE_IP}' dmaap-dr-node >> /etc/hosts"
 
 # SFTP Configuration:
 # Update the File Ready Notification with actual sftp ip address and copy pm files to sftp server.
@@ -138,4 +138,6 @@
 curl -v -X POST -H "Content-Type:application/vnd.att-dr.feed" -H "X-ATT-DR-ON-BEHALF-OF:dradmin" --data-ascii @$WORKSPACE/plans/usecases/5G-bulkpm/assets/createFeed.json --post301 --location-trusted -k https://${DR_PROV_IP}:8443
 cp $WORKSPACE/plans/usecases/5G-bulkpm/assets/addSubscriber.json /tmp/addSubscriber.json
 sed -i 's/fileconsumer/'${DR_SUBSCIBER_IP}'/g' /tmp/addSubscriber.json
-curl -v -X POST -H "Content-Type:application/vnd.att-dr.subscription" -H "X-ATT-DR-ON-BEHALF-OF:dradmin" --data-ascii @/tmp/addSubscriber.json --post301 --location-trusted -k https://${DR_PROV_IP}:8443/subscribe/1ii @/tmp/addSubscriber.json --post301 --location-trusted -k https://${DR_PROV_IP}:8443/subscribe/1
\ No newline at end of file
+curl -v -X POST -H "Content-Type:application/vnd.att-dr.subscription" -H "X-ATT-DR-ON-BEHALF-OF:dradmin" --data-ascii @/tmp/addSubscriber.json --post301 --location-trusted -k https://${DR_PROV_IP}:8443/subscribe/1
+sleep 10
+curl -k https://$DR_PROV_IP:8443/internal/prov
\ No newline at end of file
diff --git a/plans/usecases/5G-bulkpm/teardown.sh b/plans/usecases/5G-bulkpm/teardown.sh
index c55f439..954c5dc 100644
--- a/plans/usecases/5G-bulkpm/teardown.sh
+++ b/plans/usecases/5G-bulkpm/teardown.sh
@@ -1,5 +1,6 @@
 #!/bin/bash
 echo "Starting teardown script"
+docker exec dfc /bin/sh -c "cat /opt/log/application.log"
 kill-instance.sh $DMAAP
 kill-instance.sh $KAFKA
 kill-instance.sh $ZOOKEEPER
diff --git a/scripts/dmaap-message-router/dmaap-mr-launch.sh b/scripts/dmaap-message-router/dmaap-mr-launch.sh
index 36d3168..a4bd623 100755
--- a/scripts/dmaap-message-router/dmaap-mr-launch.sh
+++ b/scripts/dmaap-message-router/dmaap-mr-launch.sh
@@ -34,7 +34,8 @@
 		#
 		# the default prefix for docker containers is the directory name containing the docker-compose.yml file.
 		# It can be over-written by an env variable COMPOSE_PROJECT_NAME.  This env var seems to be set in the Jenkins CSIT environment
-		COMPOSE_PREFIX=${COMPOSE_PROJECT_NAME:-docker-compose}
+		COMPOSE_PREFIX=${COMPOSE_PROJECT_NAME:-dockercompose}
+		export COMPOSE_PROJECT_NAME=$COMPOSE_PREFIX
 		echo "COMPOSE_PROJECT_NAME=$COMPOSE_PROJECT_NAME"
 		echo "COMPOSE_PREFIX=$COMPOSE_PREFIX"
 
diff --git a/scripts/dmaap-message-router/dmaap-mr-teardown.sh b/scripts/dmaap-message-router/dmaap-mr-teardown.sh
index ac6d798..a8187d3 100755
--- a/scripts/dmaap-message-router/dmaap-mr-teardown.sh
+++ b/scripts/dmaap-message-router/dmaap-mr-teardown.sh
@@ -18,7 +18,14 @@
 #
 
 function dmaap_mr_teardown() {
-kill-instance.sh docker-compose_dmaap_1 
-kill-instance.sh docker-compose_kafka_1 
-kill-instance.sh docker-compose_zookeeper_1
+#
+# the default prefix for docker containers is the directory name containing the docker-compose.yml file.
+# It can be over-written by an env variable COMPOSE_PROJECT_NAME.  This env var seems to be set in the Jenkins CSIT environment
+COMPOSE_PREFIX=${COMPOSE_PROJECT_NAME:-dockercompose}
+COMPOSE_PROJECT_NAME=$COMPOSE_PREFIX
+echo "COMPOSE_PROJECT_NAME=$COMPOSE_PROJECT_NAME"
+echo "COMPOSE_PREFIX=$COMPOSE_PREFIX"
+kill-instance.sh ${COMPOSE_PREFIX}_dmaap_1 
+kill-instance.sh ${COMPOSE_PREFIX}_kafka_1 
+kill-instance.sh ${COMPOSE_PREFIX}_zookeeper_1
 }
diff --git a/tests/aaf/aaf-sms-suite/aaf-sms-test.robot b/tests/aaf/aaf-sms-suite/aaf-sms-test.robot
index 78e3522..a88b84f 100644
--- a/tests/aaf/aaf-sms-suite/aaf-sms-test.robot
+++ b/tests/aaf/aaf-sms-suite/aaf-sms-test.robot
@@ -1,15 +1,64 @@
 *** Settings ***
+Suite Setup       Run keywords      SMS Check SMS API Docker Container      Created header    Created session
 Library       OperatingSystem
 Library       RequestsLibrary
-Library       json
 
 *** Variables ***
-${MESSAGE}    {"ping": "ok"}
-
-#global variables
-
 
 *** Test Cases ***
+Create Domain
+    [Template]      Post template
+    /v1/sms/domain      create_domain.json
+    /v1/sms/domain/curltestdomain/secret        create_secret.json
+
+Get information from Domain
+    [Template]  Get template
+    /v1/sms/quorum/status
+    /v1/sms/domain/curltestdomain/secret
+    /v1/sms/domain/curltestdomain/secret/curltestsecret1
+
+Delete from Domain
+    [Template]  Delete template
+    /v1/sms/domain/curltestdomain/secret/curltestsecret1
+    /v1/sms/domain/curltestdomain
+
+*** Keywords ***
+Created session
+    Create Session      aaf_sms_session     ${SMS_HOSTNAME}:${SMS_PORT}
+    Set Suite Variable    ${suite_aaf_sms_session}    aaf_sms_session
+
+Created header
+    ${headers}=  Create Dictionary   Content-Type=application/json    Accept=application/json
+    Set Suite Variable    ${suite_headers}    ${headers}
+
+Delete template
+    [Documentation]    Deletes from Domain
+    [Arguments]    ${topic}
+    ${resp}=         Delete Request        ${suite_aaf_sms_session}   ${topic}   headers=${suite_headers}
+    Log To Console              *********************
+    Log To Console              response = ${resp}
+    Log To Console              body = ${resp.text}
+    Should Be Equal As Integers    ${resp.status_code}    204
+
+Post template
+    [Documentation]    Create A Domain/Secret Names
+    [Arguments]    ${topic}     ${file}
+    ${data}          Get Binary File    ${CURDIR}${/}data${/}${file}
+    ${resp}=         Post Request       ${suite_aaf_sms_session}   ${topic}   data=${data}  headers=${suite_headers}
+    Log To Console              *********************
+    Log To Console              response = ${resp}
+    Log To Console              body = ${resp.text}
+    Should Be Equal As Integers    ${resp.status_code}    201
+
+Get template
+    [Documentation]    Gets from Domain
+    [Arguments]    ${topic}
+    ${resp}=         Get Request        ${suite_aaf_sms_session}   ${topic}   headers=${suite_headers}
+    Log To Console              *********************
+    Log To Console              response = ${resp}
+    Log To Console              body = ${resp.text}
+    Should Be Equal As Integers    ${resp.status_code}    200
+
 SMS Check SMS API Docker Container
     [Documentation]    Checks if SMS docker container is running
     ${rc}    ${output}=    Run and Return RC and Output    docker ps
@@ -18,77 +67,3 @@
     Log To Console              output = ${output}
     Should Be Equal As Integers    ${rc}    0
     Should Contain    ${output}    nexus3.onap.org:10001/onap/aaf/sms
-
-SMS GetStatus
-    [Documentation]    Gets Backend Status
-    Create Session   SMS            ${SMS_HOSTNAME}:${SMS_PORT}
-    &{headers}=      Create Dictionary  Content-Type=application/json  Accept=application/json
-    ${resp}=         Get Request        SMS   /v1/sms/quorum/status   headers=${headers}
-    Log To Console              *********************
-    Log To Console              response = ${resp}
-    Log To Console              body = ${resp.text}
-    Should Be Equal As Integers    ${resp.status_code}    200
-
-SMS CreateDomain
-    [Documentation]    Creates a Secret Domain to hold Secrets
-    Create Session   SMS            ${SMS_HOSTNAME}:${SMS_PORT}
-    ${data}          Get Binary File    ${CURDIR}${/}data${/}create_domain.json
-    &{headers}=      Create Dictionary  Content-Type=application/json  Accept=application/json
-    ${resp}=         Post Request        SMS   /v1/sms/domain   data=${data} headers=${headers}
-    Log To Console              *********************
-    Log To Console              response = ${resp}
-    Log To Console              body = ${resp.text}
-    Should Be Equal As Integers    ${resp.status_code}    201
-
-SMS CreateSecret
-    [Documentation]  Create A Secret within the Domain
-    Create Session   SMS            ${SMS_HOSTNAME}:${SMS_PORT}
-    ${data}          Get Binary File    ${CURDIR}${/}data${/}create_secret.json
-    &{headers}=      Create Dictionary  Content-Type=application/json  Accept=application/json
-    ${resp}=         Post Request       SMS   /v1/sms/domain/curltestdomain/secret   data=${data}  headers=${headers}
-    Log To Console              *********************
-    Log To Console              response = ${resp}
-    Log To Console              body = ${resp.text}
-    Should Be Equal As Integers    ${resp.status_code}    201
-
-SMS ListSecret
-    [Documentation]    Lists all Secret Names within Domain
-    Create Session   SMS            ${SMS_HOSTNAME}:${SMS_PORT}
-    &{headers}=      Create Dictionary  Content-Type=application/json  Accept=application/json
-    ${resp}=         Get Request        SMS   /v1/sms/domain/curltestdomain/secret   headers=${headers}
-    Log To Console              *********************
-    Log To Console              response = ${resp}
-    Log To Console              body = ${resp.text}
-    Should Be Equal As Integers    ${resp.status_code}    200
-
-SMS GetSecret
-    [Documentation]    Gets a single Secret with Values from Domain
-    Create Session   SMS            ${SMS_HOSTNAME}:${SMS_PORT}
-    &{headers}=      Create Dictionary  Content-Type=application/json  Accept=application/json
-    ${resp}=         Get Request        SMS   /v1/sms/domain/curltestdomain/secret/curltestsecret1   headers=${headers}
-    Log To Console              *********************
-    Log To Console              response = ${resp}
-    Log To Console              body = ${resp.text}
-    Should Be Equal As Integers    ${resp.status_code}    200
-
-SMS DeleteSecret
-    [Documentation]    Deletes a Secret referenced by Name from Domain
-    Create Session   SMS            ${SMS_HOSTNAME}:${SMS_PORT}
-    &{headers}=      Create Dictionary  Content-Type=application/json  Accept=application/json
-    ${resp}=         Delete Request        SMS   /v1/sms/domain/curltestdomain/secret/curltestsecret1   headers=${headers}
-    Log To Console              *********************
-    Log To Console              response = ${resp}
-    Log To Console              body = ${resp.text}
-    Should Be Equal As Integers    ${resp.status_code}    204
-
-SMS DeleteDomain
-    [Documentation]    Deletes a Domain referenced by Name
-    Create Session   SMS            ${SMS_HOSTNAME}:${SMS_PORT}
-    &{headers}=      Create Dictionary  Content-Type=application/json  Accept=application/json
-    ${resp}=         Delete Request        SMS   /v1/sms/domain/curltestdomain   headers=${headers}
-    Log To Console              *********************
-    Log To Console              response = ${resp}
-    Log To Console              body = ${resp.text}
-    Should Be Equal As Integers    ${resp.status_code}    204
-
-*** Keywords ***
diff --git a/tests/aaf/aafapi/aafapi.robot b/tests/aaf/aafapi/aafapi.robot
index b1f8e74..0f2267b 100644
--- a/tests/aaf/aafapi/aafapi.robot
+++ b/tests/aaf/aafapi/aafapi.robot
@@ -1,63 +1,45 @@
 *** Settings ***
-Library           OperatingSystem
+Suite Setup       Run keywords    Created header    Created session
 Library           RequestsLibrary
-Library           requests
 Library           Collections
-Library           String
 
 *** Variables ***
-${TARGETURL_NAMESPACE}     http://${AAF_IP}:8101/authz/nss/org.openecomp
-${TARGETURL_PERMS}         http://${AAF_IP}:8101/authz/perms/user/dgl@openecomp.org
-${TARGETURL_ROLES}         http://${AAF_IP}:8101/authz/roles/user/dgl@openecomp.org
-${username}               dgl@openecomp.org 
-${password}               ecomp_admin
-
 
 *** Test Cases ***
-View Namesapce
-    [Tags]    get
-    CreateSession    aaf    http://${AAF_IP}:8101
-    &{headers}=  Create Dictionary    Authorization=Basic ZGdsQG9wZW5lY29tcC5vcmc6ZWNvbXBfYWRtaW4=    Content-Type=application/json    Accept=application/json
-    ${resp}=    Get Request    aaf    /authz/nss/org.openecomp    headers=&{headers}
-    Should Be Equal As Strings    ${resp.status_code}    200
-    log    		                  	'JSON Response Code :'${resp.text}	
-	
-View by User Permission 
-    [Tags]    get
-    CreateSession    aaf    http://${AAF_IP}:8101
-    &{headers}=  Create Dictionary    Authorization=Basic ZGdsQG9wZW5lY29tcC5vcmc6ZWNvbXBfYWRtaW4=    Content-Type=application/json    Accept=application/json
-    ${resp}=    Get Request    aaf    authz/perms/user/dgl@openecomp.org    headers=&{headers}
-    Should Be Equal As Strings    ${resp.status_code}    200
-    log    		                  	'JSON Response Code :'${resp.text}	
-	
-View by User Role 
-    [Tags]    get
-    CreateSession    aaf    http://${AAF_IP}:8101
-    &{headers}=  Create Dictionary    Authorization=Basic ZGdsQG9wZW5lY29tcC5vcmc6ZWNvbXBfYWRtaW4=    Content-Type=application/json    Accept=application/json
-    ${resp}=    Get Request    aaf    authz/roles/user/dgl@openecomp.org    headers=&{headers}
-    Should Be Equal As Strings    ${resp.status_code}    200
-    log    		                  	'JSON Response Code :'${resp.text}	
+View information from app
+    [Template]  Get template
+    /authz/nss/org.openecomp
+    authz/perms/user/dgl@openecomp.org
+    authz/roles/user/dgl@openecomp.org
 
-Cleanup Namespace ( 424 Response - Delete dependencies and try again) 
+Cleanup Namespace ( 424 Response - Delete dependencies and try again )
     [Tags]    delete
-    CreateSession    aaf    http://${AAF_IP}:8101
-    &{headers}=  Create Dictionary    Authorization=Basic ZGdsQG9wZW5lY29tcC5vcmc6ZWNvbXBfYWRtaW4=    Content-Type=application/json    Accept=application/json
-    ${resp}=    Delete Request    aaf    authz/ns/org.openecomp.dmaapBC   headers=&{headers}
+    ${resp}=    Delete Request    ${suite_aaf_session}    authz/ns/org.openecomp.dmaapBC   headers=${suite_headers}
     Should Be Equal As Strings    ${resp.status_code}    424
     log    		                  	'JSON Response Code :'${resp.text}	
-	
-Add Data ( Add Admin to Namespace Explicit ) 
-    [Tags]    post
-    CreateSession    aaf    http://${AAF_IP}:8101
-    &{headers}=  Create Dictionary    Authorization=Basic ZGdsQG9wZW5lY29tcC5vcmc6ZWNvbXBfYWRtaW4=    Content-Type=application/json    Accept=application/json
-    ${resp}=    Post Request    aaf    authz/ns/org.openecomp.dmaapBC/admin/alexD@openecomp.org   headers=&{headers}
-    Should Be Equal As Strings    ${resp.status_code}    403
-    log    		                  	'JSON Response Code :'${resp.text}	
-	
-View Explicit Permission 
-    [Tags]    post
-    CreateSession    aaf    http://${AAF_IP}:8101
-    &{headers}=  Create Dictionary    Authorization=Basic ZGdsQG9wZW5lY29tcC5vcmc6ZWNvbXBfYWRtaW4=    Content-Type=application/json    Accept=application/json
-    ${resp}=    Post Request    aaf    authz/perms/user/m99751@dmaapBC.openecomp.org   headers=&{headers}
-    Should Be Equal As Strings    ${resp.status_code}    406
-    log    		                  	'JSON Response Code :'${resp.text}	
\ No newline at end of file
+
+Add information to app
+    [Template]  Post template
+    authz/ns/org.openecomp.dmaapBC/admin/alexD@openecomp.org    403
+    authz/perms/user/m99751@dmaapBC.openecomp.org       406
+
+*** Keywords ***
+Created session
+    Create Session      aaf_session     http://${AAF_IP}:8101
+    Set Suite Variable    ${suite_aaf_session}    aaf_session
+
+Created header
+    ${headers}=  Create Dictionary    Authorization=Basic ZGdsQG9wZW5lY29tcC5vcmc6ZWNvbXBfYWRtaW4=    Content-Type=application/json    Accept=application/json
+    Set Suite Variable    ${suite_headers}    ${headers}
+
+Get template
+    [Arguments]  ${topic}
+    ${resp}=    Get Request    ${suite_aaf_session}    ${topic}    headers=${suite_headers}
+    Should Be Equal As Strings    ${resp.status_code}    200
+    log    		                  	'JSON Response Code :'${resp.text}
+
+Post template
+    [Arguments]  ${topic}   ${response_status_code}
+    ${resp}=    Post Request    ${suite_aaf_session}    ${topic}   headers=${suite_headers}
+    Should Be Equal As Strings    ${resp.status_code}    ${response_status_code}
+    log    		                  	'JSON Response Code :'${resp.text}
diff --git a/tests/dcaegen2-collectors-hv-ves/testcases/__init__.robot b/tests/dcaegen2-collectors-hv-ves/testcases/__init__.robot
index 7b99fb0..6058008 100644
--- a/tests/dcaegen2-collectors-hv-ves/testcases/__init__.robot
+++ b/tests/dcaegen2-collectors-hv-ves/testcases/__init__.robot
@@ -50,7 +50,7 @@
 ${DCAE_APP_API_MESSAGES_COUNT_PATH}            ${DCAE_APP_API_MESSAGES_PATH}/count
 ${DCAE_APP_API_MESSAGES_VALIDATION_PATH}       ${DCAE_APP_API_MESSAGES_PATH}/validate
 
-${ROUTED_MESSAGES_TOPIC}                       test-hv-ran-meas
+${ROUTED_MESSAGES_TOPIC}                       TEST_HV_VES_PERF3GPP
 
 ${VES_HV_RESOURCES}                            %{WORKSPACE}/tests/dcaegen2-collectors-hv-ves/testcases/resources
 ${VES_HV_CONFIGURATION_JSON_FILEPATH}          ${VES_HV_RESOURCES}/ves-hv-configuration.json
diff --git a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/authorization/xnf-valid-messages-request.json b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/authorization/xnf-valid-messages-request.json
index 9aca401..25e7272 100644
--- a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/authorization/xnf-valid-messages-request.json
+++ b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/authorization/xnf-valid-messages-request.json
@@ -2,7 +2,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
diff --git a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/fixed-payload/dcae-fixed-payload-request.json b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/fixed-payload/dcae-fixed-payload-request.json
index 642c7d5..92b0dec 100644
--- a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/fixed-payload/dcae-fixed-payload-request.json
+++ b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/fixed-payload/dcae-fixed-payload-request.json
@@ -2,7 +2,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
diff --git a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/fixed-payload/xnf-fixed-payload-request.json b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/fixed-payload/xnf-fixed-payload-request.json
index 642c7d5..92b0dec 100644
--- a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/fixed-payload/xnf-fixed-payload-request.json
+++ b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/fixed-payload/xnf-fixed-payload-request.json
@@ -2,7 +2,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
diff --git a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/invalid-gpb-data/dcae-invalid-gpb-data-request.json b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/invalid-gpb-data/dcae-invalid-gpb-data-request.json
index f38e9aa..3b57160 100644
--- a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/invalid-gpb-data/dcae-invalid-gpb-data-request.json
+++ b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/invalid-gpb-data/dcae-invalid-gpb-data-request.json
@@ -2,7 +2,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
diff --git a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/invalid-gpb-data/xnf-invalid-gpb-data-request.json b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/invalid-gpb-data/xnf-invalid-gpb-data-request.json
index 22d48c5..612bfed 100644
--- a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/invalid-gpb-data/xnf-invalid-gpb-data-request.json
+++ b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/invalid-gpb-data/xnf-invalid-gpb-data-request.json
@@ -2,7 +2,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
@@ -24,7 +24,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
@@ -46,7 +46,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
diff --git a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/invalid-wire-frame/dcae-invalid-wire-frame-request.json b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/invalid-wire-frame/dcae-invalid-wire-frame-request.json
index f38e9aa..3b57160 100644
--- a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/invalid-wire-frame/dcae-invalid-wire-frame-request.json
+++ b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/invalid-wire-frame/dcae-invalid-wire-frame-request.json
@@ -2,7 +2,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
diff --git a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/invalid-wire-frame/xnf-invalid-wire-frame-request.json b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/invalid-wire-frame/xnf-invalid-wire-frame-request.json
index a7d2219..6d63acc 100644
--- a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/invalid-wire-frame/xnf-invalid-wire-frame-request.json
+++ b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/invalid-wire-frame/xnf-invalid-wire-frame-request.json
@@ -2,7 +2,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
@@ -24,7 +24,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
@@ -46,7 +46,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
diff --git a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/multiple-simulators-payload/dcae-smaller-valid-request.json b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/multiple-simulators-payload/dcae-smaller-valid-request.json
index 89f3e06..dc160e5 100644
--- a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/multiple-simulators-payload/dcae-smaller-valid-request.json
+++ b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/multiple-simulators-payload/dcae-smaller-valid-request.json
@@ -2,7 +2,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
diff --git a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/multiple-simulators-payload/xnf-simulator-smaller-valid-request.json b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/multiple-simulators-payload/xnf-simulator-smaller-valid-request.json
index 60c81a8..49d9bd9 100644
--- a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/multiple-simulators-payload/xnf-simulator-smaller-valid-request.json
+++ b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/multiple-simulators-payload/xnf-simulator-smaller-valid-request.json
@@ -2,7 +2,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
diff --git a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/too-big-payload/xnf-too-big-payload-request.json b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/too-big-payload/xnf-too-big-payload-request.json
index 54836bf..4296d48 100644
--- a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/too-big-payload/xnf-too-big-payload-request.json
+++ b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/too-big-payload/xnf-too-big-payload-request.json
@@ -2,7 +2,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
@@ -24,7 +24,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
@@ -46,7 +46,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
diff --git a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/unsupported-domain/dcae-unsupported-domain-request.json b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/unsupported-domain/dcae-unsupported-domain-request.json
index f38e9aa..3b57160 100644
--- a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/unsupported-domain/dcae-unsupported-domain-request.json
+++ b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/unsupported-domain/dcae-unsupported-domain-request.json
@@ -2,7 +2,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
diff --git a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/unsupported-domain/xnf-unsupported-domain-request.json b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/unsupported-domain/xnf-unsupported-domain-request.json
index b3aada5..43e9087 100644
--- a/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/unsupported-domain/xnf-unsupported-domain-request.json
+++ b/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios/unsupported-domain/xnf-unsupported-domain-request.json
@@ -2,7 +2,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
@@ -24,7 +24,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "FAULT",
+      "domain": "fault",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
@@ -46,7 +46,7 @@
   {
     "commonEventHeader": {
       "version": "sample-version",
-      "domain": "HVMEAS",
+      "domain": "perf3gpp",
       "sequence": 1,
       "priority": 1,
       "eventId": "sample-event-id",
diff --git a/tests/dcaegen2-collectors-hv-ves/testcases/resources/ves-hv-configuration.json b/tests/dcaegen2-collectors-hv-ves/testcases/resources/ves-hv-configuration.json
index b9e1a4b..9ef7249 100644
--- a/tests/dcaegen2-collectors-hv-ves/testcases/resources/ves-hv-configuration.json
+++ b/tests/dcaegen2-collectors-hv-ves/testcases/resources/ves-hv-configuration.json
@@ -2,8 +2,8 @@
   "dmaap.kafkaBootstrapServers": "kafka:9092",
   "collector.routing": [
     {
-      "fromDomain": "HVMEAS",
-      "toTopic": "test-hv-ran-meas"
+      "fromDomain": "perf3gpp",
+      "toTopic": "TEST_HV_VES_PERF3GPP"
     }
   ]
 }
\ No newline at end of file
diff --git a/tests/dmaap-datarouter/dr-suite/dr-suite.robot b/tests/dmaap-datarouter/dr-suite/dr-suite.robot
index fcac202..d00bddc 100755
--- a/tests/dmaap-datarouter/dr-suite/dr-suite.robot
+++ b/tests/dmaap-datarouter/dr-suite/dr-suite.robot
@@ -10,7 +10,8 @@
 ${TARGET_URL_FEED}              https://${DR_PROV_IP}:8443/feed/1
 ${TARGET_URL_SUBSCRIBE}         https://${DR_PROV_IP}:8443/subscribe/1
 ${TARGET_URL_SUBSCRIPTION}      https://${DR_PROV_IP}:8443/subs/1
-${TARGET_URL_PUBLISH}           https://${DR_NODE_IP}:8443/publish/1/csit_test
+${TARGET_URL_PUBLISH_PROV}      https://${DR_PROV_IP}:8443/publish/1/csit_test
+${TARGET_URL_PUBLISH_NODE}      https://${DR_NODE_IP}:8443/publish/1/csit_test
 ${CREATE_FEED_DATA}             {"name": "CSIT_Test", "version": "m1.0", "description": "CSIT_Test", "business_description": "CSIT_Test", "suspend": false, "deleted": false, "changeowner": true, "authorization": {"classification": "unclassified", "endpoint_addrs": [],  "endpoint_ids": [{"password": "rs873m", "id": "rs873m"}]}}
 ${UPDATE_FEED_DATA}             {"name": "CSIT_Test", "version": "m1.0", "description": "UPDATED-CSIT_Test", "business_description": "CSIT_Test", "suspend": true, "deleted": false, "changeowner": true, "authorization": {"classification": "unclassified", "endpoint_addrs": [],  "endpoint_ids": [{"password": "rs873m", "id": "rs873m"}]}}
 ${SUBSCRIBE_DATA}               {"delivery":{ "url":"https://${DR_PROV_IP}:8080/",  "user":"rs873m", "password":"rs873m", "use100":true}, "metadataOnly":false, "suspend":false, "groupid":29, "subscriber":"sg481n"}
@@ -42,9 +43,10 @@
     [Documentation]                 Publish to Feed
     [Timeout]                       1 minute
     Sleep                           10s                              Behaviour was noticed where feed was not created in time for publish to be sent
-    ${resp}=                        PutCall                          ${TARGET_URL_PUBLISH}    ${CREATE_FEED_DATA}      ${PUBLISH_FEED_CONTENT_TYPE}    rs873m
-    log                             ${TARGET_URL_PUBLISH}
-    log                             ${resp.text}
+    ${resp}=                        PutCall                          ${TARGET_URL_PUBLISH_PROV}    ${CREATE_FEED_DATA}      ${PUBLISH_FEED_CONTENT_TYPE}    rs873m
+    log                             ${TARGET_URL_PUBLISH_PROV}
+    Should Contain                  ${resp.headers['Location']}      https://dmaap-dr-node:8443/publish/1/csit_test
+    ${resp}=                        PutCall                          ${TARGET_URL_PUBLISH_NODE}    ${CREATE_FEED_DATA}      ${PUBLISH_FEED_CONTENT_TYPE}    rs873m
     Should Be Equal As Strings      ${resp.status_code}              204
     log                             'JSON Response Code:'${resp}
 
@@ -94,23 +96,23 @@
 PostCall
     [Arguments]      ${url}              ${data}            ${content_type}        ${user}
     ${headers}=      Create Dictionary   X-ATT-DR-ON-BEHALF-OF=${user}    Content-Type=${content_type}
-    ${resp}=         Evaluate            requests.post('${url}',data='${data}', headers=${headers},verify=False)    requests
+    ${resp}=         Evaluate            requests.post('${url}', data='${data}', headers=${headers}, verify=False)    requests
     [Return]         ${resp}
 
 PutCall
     [Arguments]      ${url}              ${data}            ${content_type}        ${user}
     ${headers}=      Create Dictionary   X-ATT-DR-ON-BEHALF-OF=${user}    Content-Type=${content_type}    Authorization=Basic cnM4NzNtOnJzODczbQ==
-    ${resp}=         Evaluate            requests.put('${url}',data='${data}', headers=${headers},verify=False)    requests
+    ${resp}=         Evaluate            requests.put('${url}', data='${data}', headers=${headers}, verify=False, allow_redirects=False)    requests
     [Return]         ${resp}
 
 GetCall
     [Arguments]      ${url}              ${content_type}        ${user}
     ${headers}=      Create Dictionary   X-ATT-DR-ON-BEHALF-OF=${user}    Content-Type=${content_type}
-    ${resp}=         Evaluate            requests.get('${url}', headers=${headers},verify=False)    requests
+    ${resp}=         Evaluate            requests.get('${url}', headers=${headers}, verify=False)    requests
     [Return]         ${resp}
 
 DeleteCall
     [Arguments]      ${url}              ${user}
     ${headers}=      Create Dictionary   X-ATT-DR-ON-BEHALF-OF=${user}
-    ${resp}=         Evaluate            requests.delete('${url}', headers=${headers},verify=False)    requests
+    ${resp}=         Evaluate            requests.delete('${url}', headers=${headers}, verify=False)    requests
     [Return]         ${resp}
diff --git a/tests/usecases/5G-bulkpm/BulkpmE2E.robot b/tests/usecases/5G-bulkpm/BulkpmE2E.robot
index 154b513..fcc1cc7 100644
--- a/tests/usecases/5G-bulkpm/BulkpmE2E.robot
+++ b/tests/usecases/5G-bulkpm/BulkpmE2E.robot
@@ -18,6 +18,7 @@
 ${TARGETURL_SUBSCR}                      http://${DMAAP_MR_IP}:3904/events/unauthenticated.VES_NOTIFICATION_OUTPUT/OpenDcae-c12/C12?timeout=1000
 ${CLI_EXEC_CLI}                          curl -k https://${DR_PROV_IP}:8443/internal/prov
 ${CLI_EXEC_CLI_DFC}                      docker exec dfc /bin/sh -c "ls /target | grep .gz"
+${CLI_EXEC_CLI_FILECONSUMER}             docker exec fileconsumer-node /bin/sh -c "ls /opt/app/subscriber/delivery | grep .gz"
 
 *** Test Cases ***
 
@@ -27,12 +28,13 @@
     ${evtdata}=   Get Event Data From File   ${EVENT_DATA_FILE}
     ${headers}=   Create Header From String    ${HEADER_STRING}
     ${resp}=  Publish Event To VES Collector    ${VESC_URL}  ${VES_ANY_EVENT_PATH}  ${headers}  ${evtdata}
-    Sleep     2s
+    Sleep     15s
     ${resp}=  Publish Event To VES Collector    ${VESC_URL}  ${VES_ANY_EVENT_PATH}  ${headers}  ${evtdata}
-    Sleep     2s
+    Sleep     5s
     ${resp}=  Publish Event To VES Collector    ${VESC_URL}  ${VES_ANY_EVENT_PATH}  ${headers}  ${evtdata}
-    Sleep     2s
+    Sleep     5s
     ${resp}=  Publish Event To VES Collector    ${VESC_URL}  ${VES_ANY_EVENT_PATH}  ${headers}  ${evtdata}
+    Sleep     5s
     Log    Receive HTTP Status code ${resp.status_code}
     Should Be Equal As Strings 	${resp.status_code} 	202
 
@@ -51,19 +53,28 @@
     List Should Contain Value       ${topics}                       unauthenticated.VES_NOTIFICATION_OUTPUT
 
 Verify Downloaded PM file from xNF exist on Data File Collector
-    [Tags]              Bulk_PM_E2E_03
-    [Documentation]     Check the PM XML file exists on the File Consumer Simulator
-    ${cli_cmd_output}=    Run Process   ${CLI_EXEC_CLI_DFC}    shell=yes
-    Log    ${cli_cmd_output.stdout}
-    Should Be Equal As Strings    ${cli_cmd_output.rc}    0
-    Should Contain    ${cli_cmd_output.stdout}    xNF.pm.xml.gz
+    [Tags]                          Bulk_PM_E2E_03
+    [Documentation]                 Check the PM XML file exists on the data file collector
+    ${cli_cmd_output}=              Run Process                     ${CLI_EXEC_CLI_DFC}                 shell=yes
+    Log                             ${cli_cmd_output.stdout}
+    Should Be Equal As Strings      ${cli_cmd_output.rc}            0
+    Should Contain                  ${cli_cmd_output.stdout}        xNF.pm.xml.gz
 
 
 Verify Default Feed And File Consumer Subscription On Datarouter
-    [Tags]              Bulk_PM_E2E_04
-    [Documentation]     Verify Default Feed And File Consumer Subscription On Datarouter
-    ${cli_cmd_output}=    Run Process   ${CLI_EXEC_CLI}    shell=yes
-    Log    ${cli_cmd_output.stdout}
-    Should Be Equal As Strings    ${cli_cmd_output.rc}    0
-    Should Contain    ${cli_cmd_output.stdout}    https://dmaap-dr-prov/publish/1
-    Should Contain    ${cli_cmd_output.stdout}    http://${DR_SUBSCIBER_IP}:7070
\ No newline at end of file
+    [Tags]                          Bulk_PM_E2E_04
+    [Documentation]                 Verify Default Feed And File Consumer Subscription On Datarouter
+    ${cli_cmd_output}=              Run Process                     ${CLI_EXEC_CLI}                     shell=yes
+    Log                             ${cli_cmd_output.stdout}
+    Should Be Equal As Strings      ${cli_cmd_output.rc}            0
+    Should Contain                  ${cli_cmd_output.stdout}        https://dmaap-dr-prov/publish/1
+    Should Contain                  ${cli_cmd_output.stdout}        http://${DR_SUBSCIBER_IP}:7070
+
+
+Verify Fileconsumer Receive PM file from Data Router
+    [Tags]                          Bulk_PM_E2E_05
+    [Documentation]                 Check  PM XML file exists on the File Consumer Simulator
+    ${cli_cmd_output}=              Run Process                     ${CLI_EXEC_CLI_FILECONSUMER}        shell=yes
+    Log                             ${cli_cmd_output.stdout}
+    Should Be Equal As Strings      ${cli_cmd_output.rc}            0
+    Should Contain                  ${cli_cmd_output.stdout}        xNF.pm.xml.gz