blob: f92526b811dc6aca96ba10616f5b2ff220b206ee [file] [log] [blame]
Documentation The main interface for interacting with VES Collector
Library RequestsLibrary
Library OperatingSystem
Library String
*** Variables ***
${INVENTORY_SERVER} ${GLOBAL_INVENTORY_SERVER_PROTOCOL}://${GLOBAL_INVENTORY_SERVER_NAME}:${GLOBAL_INVENTORY_SERVER_PORT}
${DEPLOYMENT_SERVER} ${GLOBAL_DEPLOYMENT_HANDLER_SERVER_PROTOCOL}://${GLOBAL_DEPLOYMENT_HANDLER_SERVER_NAME}:${GLOBAL_DEPLOYMENT_HANDLER_SERVER_PORT}
${DR_ENDPOINT} ${GLOBAL_DMAAP_DR_PROV_SERVER_PROTOCOL}://${GLOBAL_INJECTED_DMAAP_DR_PROV_IP_ADDR}:${GLOBAL_DMAAP_DR_PROV_SERVER_PORT}
${DMAAP_BC_SERVER} ${GLOBAL_BC_SERVER_PROTOCOL}://${GLOBAL_INJECTED_BC_IP_ADDR}:${GLOBAL_BC_HTTPS_SERVER_PORT}
${VES_HEALTH_CHECK_PATH} ${GLOBAL_DCAE_VES_HTTPS_PROTOCOL}://${GLOBAL_INJECTED_DCAE_VES_HOST}:${GLOBAL_DCAE_VES_HTTPS_SERVER_PORT}
${MR_PUBLISH_TEMPLATE} mr/mr_publish.jinja
${ves7_valid_json} ${EXECDIR}/robot/assets/dcae/ves7_valid.json
${FaultSupervision_json} ${EXECDIR}/robot/assets/dcae/ves_stdnDefined_3GPP-FaultSupervision.json
${Heartbeat_json} ${EXECDIR}/robot/assets/dcae/ves_stdnDefined_3GPP-Heartbeat.json
${PerformanceAssurance_json} ${EXECDIR}/robot/assets/dcae/ves_stdnDefined_3GPP-PerformanceAssurance.json
${Provisioning_json} ${EXECDIR}/robot/assets/dcae/ves_stdnDefined_3GPP-Provisioning.json
*** Keywords ***
Send Event to VES Collector
[Documentation] keyword wich is used to send events through VES Collector Event Listener path
[Arguments] ${event}
${headers}= Create Dictionary content-type=application/json
${event_from_file}= OperatingSystem.Get File ${event}
${auth}= Create List ${GLOBAL_DCAE_VES_USERNAME} ${GLOBAL_DCAE_VES_PASSWORD}
${session}= Create Session ves ${VES_HEALTH_CHECK_PATH} auth=${auth}
${resp}= Post Request ves ${VES_LISTENER_PATH} data=${event_from_file} headers=${headers}
Should Be Equal As Strings ${resp.status_code} 202
Topic Validate
[Documentation] Keyword checks content of DMAAP topic and evaluate it's content with desired value
[Arguments] ${topic_name} ${expected_text}
${timestamp}= Get Current Date
${dict}= Create Dictionary timestamp=${timestamp}
Templating.Create Environment mr ${GLOBAL_TEMPLATE_FOLDER}
${data}= Templating.Apply Template mr ${MR_PUBLISH_TEMPLATE} ${dict}
${resp}= Run MR Auth Get Request ${topic_name} ${GLOBAL_DCAE_USERNAME} ${GLOBAL_DCAE_PASSWORD}
Should Contain ${resp.text} ${expected_text}
Send Event to VES & Validate Topic
[Documentation] Keyword is a test template which alows to send event through VES Collector and check if ivent is routed to proper DMAAP topic
[Arguments] ${event} ${topic_name} ${expected_text}
Send Event to VES Collector ${event}
Wait Until Keyword Succeeds 10x 5s Topic Validate ${topic_name} ${expected_text}
Activate DMAAP Topics
[Documentation] Currently first event routed to empty DMAAP topic is gone, so there is need to "activate" topics for testing pourposes
Send Event to VES Collector ${ves7_valid_json}
Send Event to VES Collector ${FaultSupervision_json}
Send Event to VES Collector ${Heartbeat_json}
Send Event to VES Collector ${PerformanceAssurance_json}
Send Event to VES Collector ${Provisioning_json}
Sleep 30s