Gary Wu | 9abb61c | 2018-09-27 10:38:50 -0700 | [diff] [blame] | 1 | *** Settings *** |
| 2 | Documentation Testing E2E VES,Dmaap,DFC,DR with File Ready event feed from xNF |
| 3 | Library RequestsLibrary |
| 4 | Library OperatingSystem |
| 5 | Library Collections |
| 6 | Library Process |
| 7 | Resource resources/bulkpm_keywords.robot |
| 8 | |
| 9 | |
| 10 | *** Variables *** |
LiamBurke | a451619 | 2019-02-11 12:28:55 +0000 | [diff] [blame] | 11 | ${VESC_URL} http://%{VESC_IP}:%{VESC_PORT} |
Gary Wu | 9abb61c | 2018-09-27 10:38:50 -0700 | [diff] [blame] | 12 | ${GLOBAL_APPLICATION_ID} robot-ves |
| 13 | ${VES_ANY_EVENT_PATH} /eventListener/v7 |
| 14 | ${HEADER_STRING} content-type=application/json |
Gary Wu | 13111e9 | 2018-09-27 11:31:33 -0700 | [diff] [blame] | 15 | ${EVENT_DATA_FILE} %{WORKSPACE}/tests/usecases/5G-bulkpm/assets/json_events/FileExistNotificationUpdated.json |
Gary Wu | 9abb61c | 2018-09-27 10:38:50 -0700 | [diff] [blame] | 16 | |
| 17 | ${TARGETURL_TOPICS} http://${DMAAP_MR_IP}:3904/topics |
| 18 | ${TARGETURL_SUBSCR} http://${DMAAP_MR_IP}:3904/events/unauthenticated.VES_NOTIFICATION_OUTPUT/OpenDcae-c12/C12?timeout=1000 |
| 19 | ${CLI_EXEC_CLI} curl -k https://${DR_PROV_IP}:8443/internal/prov |
rajendrajaiswal | a2c1ca2 | 2018-09-30 16:42:27 +0100 | [diff] [blame] | 20 | ${CLI_EXEC_CLI_FILECONSUMER} docker exec fileconsumer-node /bin/sh -c "ls /opt/app/subscriber/delivery | grep .gz" |
LiamBurke | b087622 | 2019-02-26 17:04:48 +0000 | [diff] [blame] | 21 | ${CLI_EXEC_CLI_DFC_LOG} docker exec dfc /bin/sh -c "cat /opt/log/application.log" > /tmp/dfc_docker.log.robot |
| 22 | ${CLI_EXEC_CLI_DFC_LOG_GREP} grep "Publish to DR successful!" /tmp/dfc_docker.log.robot |
Gary Wu | 9abb61c | 2018-09-27 10:38:50 -0700 | [diff] [blame] | 23 | |
LiamBurke | 4d438ce | 2019-02-14 13:24:52 +0000 | [diff] [blame] | 24 | ${CLI_EXEC_CLI_FILECONSUMER_CP} docker cp fileconsumer-node:/opt/app/subscriber/delivery/xNF.pm.xml.gz.M %{WORKSPACE} |
| 25 | ${CLI_EXEC_RENAME_METADATA} mv %{WORKSPACE}/xNF.pm.xml.gz.M %{WORKSPACE}/metadata.json |
| 26 | ${metadataSchemaPath} %{WORKSPACE}/tests/usecases/5G-bulkpm/assets/metadata.schema.json |
| 27 | ${metadataJsonPath} %{WORKSPACE}/metadata.json |
| 28 | |
Gary Wu | 9abb61c | 2018-09-27 10:38:50 -0700 | [diff] [blame] | 29 | *** Test Cases *** |
| 30 | |
| 31 | Send VES File Ready Event to VES Collector |
| 32 | [Tags] Bulk_PM_E2E_01 |
| 33 | [Documentation] Send VES File Ready Event |
| 34 | ${evtdata}= Get Event Data From File ${EVENT_DATA_FILE} |
| 35 | ${headers}= Create Header From String ${HEADER_STRING} |
| 36 | ${resp}= Publish Event To VES Collector ${VESC_URL} ${VES_ANY_EVENT_PATH} ${headers} ${evtdata} |
rajendrajaiswal | b99eedc | 2018-10-02 09:42:23 +0100 | [diff] [blame] | 37 | Sleep 15s |
Gary Wu | 9abb61c | 2018-09-27 10:38:50 -0700 | [diff] [blame] | 38 | ${resp}= Publish Event To VES Collector ${VESC_URL} ${VES_ANY_EVENT_PATH} ${headers} ${evtdata} |
rajendrajaiswal | a2c1ca2 | 2018-09-30 16:42:27 +0100 | [diff] [blame] | 39 | Sleep 5s |
Gary Wu | 9abb61c | 2018-09-27 10:38:50 -0700 | [diff] [blame] | 40 | ${resp}= Publish Event To VES Collector ${VESC_URL} ${VES_ANY_EVENT_PATH} ${headers} ${evtdata} |
rajendrajaiswal | a2c1ca2 | 2018-09-30 16:42:27 +0100 | [diff] [blame] | 41 | Sleep 5s |
Gary Wu | 9abb61c | 2018-09-27 10:38:50 -0700 | [diff] [blame] | 42 | ${resp}= Publish Event To VES Collector ${VESC_URL} ${VES_ANY_EVENT_PATH} ${headers} ${evtdata} |
rajendrajaiswal | a2c1ca2 | 2018-09-30 16:42:27 +0100 | [diff] [blame] | 43 | Sleep 5s |
Gary Wu | 9abb61c | 2018-09-27 10:38:50 -0700 | [diff] [blame] | 44 | Log Receive HTTP Status code ${resp.status_code} |
| 45 | Should Be Equal As Strings ${resp.status_code} 202 |
| 46 | |
| 47 | Check VES Notification Topic is existing in Message Router |
| 48 | [Tags] Bulk_PM_E2E_02 |
| 49 | [Documentation] Get the VES Notification topic on message router |
| 50 | [Timeout] 1 minute |
| 51 | Sleep 10s |
| 52 | ${resp}= GetCall ${TARGETURL_TOPICS} |
| 53 | log ${TARGETURL_TOPICS} |
| 54 | log 'JSON Response Code :'${resp} |
| 55 | ${topics}= Evaluate $resp.json().get('topics') |
| 56 | log ${topics} |
| 57 | ${ListLength}= Get Length ${topics} |
| 58 | log ${ListLength} |
| 59 | List Should Contain Value ${topics} unauthenticated.VES_NOTIFICATION_OUTPUT |
| 60 | |
LiamBurke | b087622 | 2019-02-26 17:04:48 +0000 | [diff] [blame] | 61 | Verify Data File Collector successfully publishes the PM XML file to the Data Router |
rajendrajaiswal | a2c1ca2 | 2018-09-30 16:42:27 +0100 | [diff] [blame] | 62 | [Tags] Bulk_PM_E2E_03 |
LiamBurke | b087622 | 2019-02-26 17:04:48 +0000 | [diff] [blame] | 63 | [Documentation] Check that DFC publishes the PM XML to the Data Router |
| 64 | ${cli_cmd_output}= Run Process ${CLI_EXEC_CLI_DFC_LOG} shell=yes |
rajendrajaiswal | a2c1ca2 | 2018-09-30 16:42:27 +0100 | [diff] [blame] | 65 | Log ${cli_cmd_output.stdout} |
| 66 | Should Be Equal As Strings ${cli_cmd_output.rc} 0 |
LiamBurke | b087622 | 2019-02-26 17:04:48 +0000 | [diff] [blame] | 67 | ${cli_cmd_output}= Run Process ${CLI_EXEC_CLI_DFC_LOG_GREP} shell=yes |
| 68 | Log ${cli_cmd_output.stdout} |
| 69 | Should Be Equal As Strings ${cli_cmd_output.rc} 0 |
| 70 | Should Contain ${cli_cmd_output.stdout} Publish to DR successful! |
Gary Wu | 9abb61c | 2018-09-27 10:38:50 -0700 | [diff] [blame] | 71 | |
| 72 | |
| 73 | Verify Default Feed And File Consumer Subscription On Datarouter |
rajendrajaiswal | a2c1ca2 | 2018-09-30 16:42:27 +0100 | [diff] [blame] | 74 | [Tags] Bulk_PM_E2E_04 |
| 75 | [Documentation] Verify Default Feed And File Consumer Subscription On Datarouter |
| 76 | ${cli_cmd_output}= Run Process ${CLI_EXEC_CLI} shell=yes |
| 77 | Log ${cli_cmd_output.stdout} |
| 78 | Should Be Equal As Strings ${cli_cmd_output.rc} 0 |
| 79 | Should Contain ${cli_cmd_output.stdout} https://dmaap-dr-prov/publish/1 |
| 80 | Should Contain ${cli_cmd_output.stdout} http://${DR_SUBSCIBER_IP}:7070 |
| 81 | |
| 82 | |
| 83 | Verify Fileconsumer Receive PM file from Data Router |
| 84 | [Tags] Bulk_PM_E2E_05 |
| 85 | [Documentation] Check PM XML file exists on the File Consumer Simulator |
| 86 | ${cli_cmd_output}= Run Process ${CLI_EXEC_CLI_FILECONSUMER} shell=yes |
| 87 | Log ${cli_cmd_output.stdout} |
| 88 | Should Be Equal As Strings ${cli_cmd_output.rc} 0 |
| 89 | Should Contain ${cli_cmd_output.stdout} xNF.pm.xml.gz |
LiamBurke | 4d438ce | 2019-02-14 13:24:52 +0000 | [diff] [blame] | 90 | |
| 91 | Verify File Consumer Receive valid metadata from Data Router |
| 92 | [Tags] Bulk_PM_E2E_06 |
| 93 | [Documentation] Check PM XML file is delivered to the FileConsumer Simulator with valid metadata |
| 94 | ${cli_cmd_output}= Run Process ${CLI_EXEC_CLI_FILECONSUMER} shell=yes |
| 95 | Log ${cli_cmd_output.stdout} |
| 96 | Should Be Equal As Strings ${cli_cmd_output.rc} 0 |
| 97 | Should Contain ${cli_cmd_output.stdout} xNF.pm.xml.gz.M |
| 98 | ${cli_cmd_output}= Run Process ${CLI_EXEC_CLI_FILECONSUMER_CP} shell=yes |
| 99 | ${cli_cmd_output}= Run Process ${CLI_EXEC_RENAME_METADATA} shell=yes |
| 100 | ${validation_result}= Validate ${metadataSchemaPath} ${metadataJsonPath} |
LiamBurke | b087622 | 2019-02-26 17:04:48 +0000 | [diff] [blame] | 101 | Should Be Equal As Strings ${validation_result} 0 |