From aa5b805bd7483d143046c516422a8b41c5f7a162 Mon Sep 17 00:00:00 2001 From: rajendrajaiswal Date: Mon, 24 Sep 2018 17:18:19 +0100 Subject: Updated Setup and added testcase Issue-ID: INT-649 Change-Id: I46e3acc7397e2f5945a043c98cfb03d4204ed4df Signed-off-by: Rajendra Jaiswal --- .../bulkpm-suite/assets/addSubscriber.json | 18 ++++++++++++++++++ .../bulkpm-suite/assets/createFeed.json | 18 ++++++++++++++++++ test/csit/plans/dcae-bulkpm/bulkpm-suite/setup.sh | 22 +++++++++++++--------- .../plans/dcae-bulkpm/bulkpm-suite/teardown.sh | 22 ++++++++++------------ .../assets/json_events/FileExistNotification.json | 21 ++++++++++++--------- test/csit/tests/dcae-bulkpm/testcases/e2e.robot | 19 ++++++++++++++++--- 6 files changed, 87 insertions(+), 33 deletions(-) create mode 100644 test/csit/plans/dcae-bulkpm/bulkpm-suite/assets/addSubscriber.json create mode 100644 test/csit/plans/dcae-bulkpm/bulkpm-suite/assets/createFeed.json diff --git a/test/csit/plans/dcae-bulkpm/bulkpm-suite/assets/addSubscriber.json b/test/csit/plans/dcae-bulkpm/bulkpm-suite/assets/addSubscriber.json new file mode 100644 index 000000000..612c4626a --- /dev/null +++ b/test/csit/plans/dcae-bulkpm/bulkpm-suite/assets/addSubscriber.json @@ -0,0 +1,18 @@ +{ + "delivery":{ + "url":"http://fileconsumer:7070", + "user":"LOGIN", + "password":"PASSWORD", + "use100":true + }, + "follow_redirect":false, + "metadataOnly":false, + "suspend":false, + "groupid":0, + "links":{ + "self": "https://dmaap-dr-prov/subscribe/1", + "log": "https://dmaap-dr-prov/feedlog/1", + "feed": "https://dmaap-dr-prov/feed/1" + }, + "subscriber":"admin" + } \ No newline at end of file diff --git a/test/csit/plans/dcae-bulkpm/bulkpm-suite/assets/createFeed.json b/test/csit/plans/dcae-bulkpm/bulkpm-suite/assets/createFeed.json new file mode 100644 index 000000000..fdcc7eef6 --- /dev/null +++ b/test/csit/plans/dcae-bulkpm/bulkpm-suite/assets/createFeed.json @@ -0,0 +1,18 @@ +{ + "name": "DefaultFeed", + "version": "m1.0", + "description": "Default feed", + "business_description": "Default Feed", + "suspend": false, + "deleted": false, + "changeowner": true, + "authorization": { + "classification": "unclassified", + "endpoint_addrs": [], + "endpoint_ids": [ + { + "password": "dradmin", + "id": "dradmin" + }] + } + } \ No newline at end of file diff --git a/test/csit/plans/dcae-bulkpm/bulkpm-suite/setup.sh b/test/csit/plans/dcae-bulkpm/bulkpm-suite/setup.sh index c9f5318dd..24027e911 100644 --- a/test/csit/plans/dcae-bulkpm/bulkpm-suite/setup.sh +++ b/test/csit/plans/dcae-bulkpm/bulkpm-suite/setup.sh @@ -63,7 +63,8 @@ docker-compose up -d docker kill datarouter-prov docker kill datarouter-node docker kill vescollector -sed -i -e '/DMAAPHOST:/ s/:.*/: '$DMAAP_MR_IP'/' docker-compose.yml +HOST_IP=$(ip route get 8.8.8.8 | awk '/8.8.8.8/ {print $NF}') +sed -i -e '/DMAAPHOST:/ s/:.*/: '$HOST_IP'/' docker-compose.yml MARIADB=$(docker inspect '--format={{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' mariadb ) sed -i 's/172.100.0.2/'$MARIADB'/g' $WORKSPACE/archives/dmaapdr/datarouter/docker-compose/prov_data/provserver.properties docker-compose up -d @@ -90,10 +91,6 @@ DR_NODE_IP=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress} DR_SUBSCIBER_IP=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' subscriber-node) DR_GATEWAY_IP=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.Gateway}}{{end}}' datarouter-prov) -#Add the DR_NODE_IP to /etc/hosts -echo "${DR_NODE_IP} dmaap-dr-node" >> /etc/hosts -echo "${DR_PROV_IP} dmaap-dr-prov" >> /etc/hosts - echo DR_PROV_IP=${DR_PROV_IP} echo DR_NODE_IP=${DR_NODE_IP} echo DR_GATEWAY_IP=${DR_GATEWAY_IP} @@ -110,16 +107,23 @@ DMAAP_MR_IP=$(docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPA KAFKA_IP=$(docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $KAFKA) ZOOKEEPER_IP=$(docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $ZOOKEEPER) VESC_IP=$(docker inspect '--format={{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' vescollector) +SFTP_IP=$(docker inspect '--format={{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' sftp) export VESC_IP=${VESC_IP} export HOST_IP=${HOST_IP} export DMAAP_MR_IP=${DMAAP_MR_IP} -echo "${DMAAP_MR_IP} dmaap-mr" >> /etc/hosts - #Pass any variables required by Robot test suites in ROBOT_VARIABLES -ROBOT_VARIABLES="-v DR_PROV_IP:${DR_PROV_IP} -v DR_NODE_IP:${DR_NODE_IP} -v DMAAP_MR_IP:${DMAAP_MR_IP} -v VESC_IP:${VESC_IP}" +ROBOT_VARIABLES="-v DR_PROV_IP:${DR_PROV_IP} -v DR_NODE_IP:${DR_NODE_IP} -v DMAAP_MR_IP:${DMAAP_MR_IP} -v VESC_IP:${VESC_IP} -v DR_SUBSCIBER_IP:${DR_SUBSCIBER_IP}" pip install jsonschema uuid # Wait container ready -sleep 2 \ No newline at end of file +sleep 2 +# Update the File Ready Notification with actual sftp ip address +sed -i 's/sftpserver/'${SFTP_IP}'/g' $WORKSPACE/test/csit/tests/dcae-bulkpm/testcases/assets/json_events/FileExistNotification.json +#Create default feed in data router. +curl -v -X POST -H "Content-Type:application/vnd.att-dr.feed" -H "X-ATT-DR-ON-BEHALF-OF:dradmin" --data-ascii @$WORKSPACE/test/csit/plans/dcae-bulkpm/bulkpm-suite/assets/createFeed.json --post301 --location-trusted -k https://${DR_PROV_IP}:8443 +#create file consumer subscriber on data router. +cp $WORKSPACE/test/csit/plans/dcae-bulkpm/bulkpm-suite/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/1 diff --git a/test/csit/plans/dcae-bulkpm/bulkpm-suite/teardown.sh b/test/csit/plans/dcae-bulkpm/bulkpm-suite/teardown.sh index e3035f0c1..e11616ed3 100644 --- a/test/csit/plans/dcae-bulkpm/bulkpm-suite/teardown.sh +++ b/test/csit/plans/dcae-bulkpm/bulkpm-suite/teardown.sh @@ -1,14 +1,12 @@ #!/bin/bash echo "Starting teardown script" -cd $WORKSPACE/test/csit/scripts -./kill-instance.sh $DMAAP -./kill-instance.sh $KAFKA -./kill-instance.sh $ZOOKEEPER -./kill-instance.sh vescollector -./kill-instance.sh datarouter-node -./kill-instance.sh datarouter-prov -./kill-instance.sh subscriber-node -./kill-instance.sh mariadb -./kill-instance.sh dfc -./kill-instance.sh sftp -sudo sed -i '/dmaap/d' /etc/hosts \ No newline at end of file +kill-instance.sh $DMAAP +kill-instance.sh $KAFKA +kill-instance.sh $ZOOKEEPER +kill-instance.sh vescollector +kill-instance.sh datarouter-node +kill-instance.sh datarouter-prov +kill-instance.sh subscriber-node +kill-instance.sh mariadb +kill-instance.sh dfc +kill-instance.sh sftp \ No newline at end of file diff --git a/test/csit/tests/dcae-bulkpm/testcases/assets/json_events/FileExistNotification.json b/test/csit/tests/dcae-bulkpm/testcases/assets/json_events/FileExistNotification.json index 96068e39a..1cfc78a25 100644 --- a/test/csit/tests/dcae-bulkpm/testcases/assets/json_events/FileExistNotification.json +++ b/test/csit/tests/dcae-bulkpm/testcases/assets/json_events/FileExistNotification.json @@ -18,13 +18,16 @@ "changeIdentifier": "PM_MEAS_FILES", "changeType": "FileReady", "notificationFieldsVersion": "2.0", - "additionalFields": - { - "location": "ftpes://192.168.0.101:22/ftp/rop/A20161224.1030-1045.bin.gz", - "compression": "gzip", - "fileformatType": "org.3GPP.32.435#measCollec", - "fileFormatVersion": "V10" - } - } + "arrayOfNamedHashMap": [ + { "name": "pm.xml.gz", + "hashMap":{ + "location": "sftp://admin:admin@sftpserver:22/pm.xml.gz", + "compression": "gzip", + "fileFormatType": "org.3GPP.32.435#measCollec", + "fileFormatVersion": "V10" + } + } + ] } - } \ No newline at end of file +} +} \ No newline at end of file diff --git a/test/csit/tests/dcae-bulkpm/testcases/e2e.robot b/test/csit/tests/dcae-bulkpm/testcases/e2e.robot index 69c795341..210012cb6 100644 --- a/test/csit/tests/dcae-bulkpm/testcases/e2e.robot +++ b/test/csit/tests/dcae-bulkpm/testcases/e2e.robot @@ -3,6 +3,7 @@ Documentation Testing E2E VES,Dmaap,DFC,DR with File Ready event feed from xNF Library RequestsLibrary Library OperatingSystem Library Collections +Library Process Resource resources/ves_keywords.robot @@ -15,11 +16,13 @@ ${EVENT_DATA_FILE} %{WORKSPACE}/test/csit/tests/dcae-bulkp ${TARGETURL_TOPICS} http://${DMAAP_MR_IP}:3904/topics ${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 + *** Test Cases *** Send VES File Ready Event to VES Collector - [Tags] DCAE-VESC-R1 - [Documentation] Post single event and expect 200 Response + [Tags] Bulk_PM_E2E_01 + [Documentation] Send VES File Ready Event ${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} @@ -27,7 +30,8 @@ Send VES File Ready Event to VES Collector Should Be Equal As Strings ${resp.status_code} 202 Check VES Notification Topic is existing in Message Router - [Documentation] Get the count of the Topics + [Tags] Bulk_PM_E2E_02 + [Documentation] Get the VES Notification topic on message router [Timeout] 1 minute Sleep 10s ${resp}= GetCall ${TARGETURL_TOPICS} @@ -38,3 +42,12 @@ Check VES Notification Topic is existing in Message Router ${ListLength}= Get Length ${topics} log ${ListLength} List Should Contain Value ${topics} unauthenticated.VES_NOTIFICATION_OUTPUT + +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 -- cgit 1.2.3-korg