diff options
author | Brian Freeman <bf1936@att.com> | 2018-11-30 13:03:52 -0500 |
---|---|---|
committer | Brian Freeman <bf1936@att.com> | 2018-11-30 13:04:02 -0500 |
commit | 19a4d2dad02aae14636654402df10b185803be58 (patch) | |
tree | 911617d81595fe8f42c1fb4b3c3363da42cdd2ce | |
parent | c007acb2d7094977bd071f0b3e570556951c9a67 (diff) |
Add DMaaP PubSub HealthCheck
Issue-ID: INT-752
Change-Id: I35c6eec7cd37b0f76b6fd9ec7bf67633c47ae36b
Signed-off-by: Brian Freeman <bf1936@att.com>
-rw-r--r-- | robot/assets/templates/mr_publish.template | 5 | ||||
-rw-r--r-- | robot/resources/mr_interface.robot | 42 | ||||
-rw-r--r-- | robot/testsuites/health-check.robot | 5 |
3 files changed, 45 insertions, 7 deletions
diff --git a/robot/assets/templates/mr_publish.template b/robot/assets/templates/mr_publish.template new file mode 100644 index 00000000..acb10328 --- /dev/null +++ b/robot/assets/templates/mr_publish.template @@ -0,0 +1,5 @@ +{ + "test": "success", + "timestamp": "${timestamp}" +} + diff --git a/robot/resources/mr_interface.robot b/robot/resources/mr_interface.robot index 1a858f24..625198dc 100644 --- a/robot/resources/mr_interface.robot +++ b/robot/resources/mr_interface.robot @@ -1,30 +1,58 @@ *** Settings *** -Documentation The main interface for interacting with Message router. It handles low level stuff like managing the http request library and message router required fields -Library RequestsClientCert -Library RequestsLibrary -Library UUID +Documentation The main interface for interacting with Message router. It handles low level stuff like managing the http request library and message router required fields +Library RequestsClientCert +Library RequestsLibrary +Library UUID Resource global_properties.robot *** Variables *** ${MR_HEALTH_CHECK_PATH} /topics +${MR_PUB_HEALTH_CHECK_PATH} /events/TEST_TOPIC +${MR_SUB_HEALTH_CHECK_PATH} /events/TEST_TOPIC/g1/c4?timeout=5000 ${MR_ENDPOINT} ${GLOBAL_MR_SERVER_PROTOCOL}://${GLOBAL_INJECTED_MR_IP_ADDR}:${GLOBAL_MR_SERVER_PORT} +${MR_PUBLISH_TEMPLATE} robot/assets/templates/mr_publish.template *** Keywords *** Run MR Health Check [Documentation] Runs MR Health check ${resp}= Run MR Get Request ${MR_HEALTH_CHECK_PATH} - Should Be Equal As Strings ${resp.status_code} 200 + Should Be Equal As Strings ${resp.status_code} 200 Should Contain ${resp.json()} topics +Run MR PubSub Health Check + [Documentation] Runs MR PubSub Health check + ${resp}= Run MR Get Request ${MR_SUB_HEALTH_CHECK_PATH} + # topic may not be created which is a 400 error + ${resp}= Run MR Post Request ${MR_PUB_HEALTH_CHECK_PATH} + Should Be Equal As Strings ${resp.status_code} 200 + Should Contain ${resp.json()} serverTimeMs Failed to Write Data + ${resp}= Run MR Get Request ${MR_SUB_HEALTH_CHECK_PATH} + # ${resp} is an array + Should Be Equal As Strings ${resp.status_code} 200 + Should Contain ${resp.json()[0]} timestamp Failed to Read Data + Run MR Get Request [Documentation] Runs MR Get request [Arguments] ${data_path} - ${session}= Create Session mr ${MR_ENDPOINT} + ${session}= Create Session mr ${MR_ENDPOINT} + ${uuid}= Generate UUID + ${headers}= Create Dictionary Accept=application/json Content-Type=application/json X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID} + ${resp}= Get Request mr ${data_path} headers=${headers} + Log Received response from message router ${resp.text} + [Return] ${resp} + +Run MR Post Request + [Documentation] Runs MR Post request + [Arguments] ${data_path} + ${session}= Create Session mr ${MR_ENDPOINT} + ${timestamp}= Get Current Date + ${dict}= Create Dictionary timestamp=${timestamp} + ${data}= Fill JSON Template File ${MR_PUBLISH_TEMPLATE} ${dict} ${uuid}= Generate UUID ${headers}= Create Dictionary Accept=application/json Content-Type=application/json X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID} - ${resp}= Get Request mr ${data_path} headers=${headers} + ${resp}= Post Request mr ${data_path} data=${data} headers=${headers} Log Received response from message router ${resp.text} [Return] ${resp} diff --git a/robot/testsuites/health-check.robot b/robot/testsuites/health-check.robot index 0464b00b..7807ca10 100644 --- a/robot/testsuites/health-check.robot +++ b/robot/testsuites/health-check.robot @@ -66,6 +66,11 @@ Basic DMAAP Message Router Health Check [Tags] health core Run MR Health Check +Basic DMAAP Message Router PubSub Health Check + [Tags] healthmr + [Timeout] 30 + Run MR PubSub Health Check + Basic External API NBI Health Check [Tags] health externalapi api small Run NBI Health Check |