diff options
Diffstat (limited to 'tests/dmaap-buscontroller/single-mr-suite/test1.robot')
-rw-r--r-- | tests/dmaap-buscontroller/single-mr-suite/test1.robot | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/tests/dmaap-buscontroller/single-mr-suite/test1.robot b/tests/dmaap-buscontroller/single-mr-suite/test1.robot new file mode 100644 index 00000000..d68b9ed1 --- /dev/null +++ b/tests/dmaap-buscontroller/single-mr-suite/test1.robot @@ -0,0 +1,104 @@ +*** Settings *** +Resource ../../common.robot +Library Collections +Library json +Library OperatingSystem +Library RequestsLibrary +Library HttpLibrary.HTTP +Library String + + +*** Variables *** +${MESSAGE} Hello, world! +${DBC_URI} webapi +${DBC_URL} http://${DMAAPBC_IP}:8080/${DBC_URI} +${TOPIC_NS} org.onap.dmaap.onapCSIT +${LOC} csit-sanfrancisco +${PUB_CORE} "dcaeLocationName": "${LOC}", "clientRole": "org.onap.dmaap.client.pub", "action": [ "pub", "view" ] +${SUB_CORE} "dcaeLocationName": "${LOC}", "clientRole": "org.onap.dmaap.client.sub", "action": [ "sub", "view" ] +${PUB} { ${PUB_CORE} } +${SUB} { ${SUB_CORE} } +${TOPIC1_DATA} { "topicName":"singleMRtopic1", "topicDescription":"generated for CSIT", "owner":"dgl"} +${TOPIC2_DATA} { "topicName":"singleMRtopic2", "topicDescription":"generated for CSIT", "owner":"dgl", "clients": [ ${PUB}, ${SUB}] } +${TOPIC3_DATA} { "topicName":"singleMRtopic3", "topicDescription":"generated for CSIT", "owner":"dgl"} +${PUB3_DATA} { "fqtn": "${TOPIC_NS}.singleMRtopic3", ${PUB_CORE} } +${SUB3_DATA} { "fqtn": "${TOPIC_NS}.singleMRtopic3", ${SUB_CORE} } + + + +*** Test Cases *** +Url Test + [Documentation] Check if www.onap.org can be reached + Create Session sanity http://onap.readthedocs.io + ${resp}= Get Request sanity / + Should Be Equal As Integers ${resp.status_code} 200 + +(DMAAP-293) + [Documentation] Create Topic w no clients POST ${DBC_URI}/topics endpoint + ${resp}= PostCall ${DBC_URL}/topics ${TOPIC1_DATA} + Should Be Equal As Integers ${resp.status_code} 201 + +(DMAAP-294) + [Documentation] Create Topic w pub and sub clients POST ${DBC_URI}/topics endpoint + ${resp}= PostCall ${DBC_URL}/topics ${TOPIC2_DATA} + Should Be Equal As Integers ${resp.status_code} 201 + +(DMAAP-295) + [Documentation] Create Topic w no clients and then add a client POST ${DBC_URI}/mr_clients endpoint + ${resp}= PostCall ${DBC_URL}/topics ${TOPIC3_DATA} + Should Be Equal As Integers ${resp.status_code} 201 + ${resp}= PostCall ${DBC_URL}/mr_clients ${PUB3_DATA} + Should Be Equal As Integers ${resp.status_code} 200 + ${resp}= PostCall ${DBC_URL}/mr_clients ${SUB3_DATA} + Should Be Equal As Integers ${resp.status_code} 200 + +(DMAAP-297) + [Documentation] Query for all topics and specific topic + Create Session get ${DBC_URL} + ${resp}= Get Request get /topics + Should Be Equal As Integers ${resp.status_code} 200 + ${resp}= Get Request get /topics/${TOPIC_NS}.singleMRtopic3 + Should Be Equal As Integers ${resp.status_code} 200 + +(DMAAP-301) + [Documentation] Delete a subscriber + Create Session get ${DBC_URL} + ${resp}= Get Request get /topics/${TOPIC_NS}.singleMRtopic3 + Should Be Equal As Integers ${resp.status_code} 200 + ${tmp}= Get Json Value ${resp.text} /clients/1/mrClientId + ${clientId}= Remove String ${tmp} \" + ${resp}= DelCall ${DBC_URL}/mr_clients/${clientId} + Should Be Equal As Integers ${resp.status_code} 204 + +(DMAAP-302) + [Documentation] Delete a publisher + Create Session get ${DBC_URL} + ${resp}= Get Request get /topics/${TOPIC_NS}.singleMRtopic3 + Should Be Equal As Integers ${resp.status_code} 200 + ${tmp}= Get Json Value ${resp.text} /clients/0/mrClientId + ${clientId}= Remove String ${tmp} \" + ${resp}= DelCall ${DBC_URL}/mr_clients/${clientId} + Should Be Equal As Integers ${resp.status_code} 204 + + +*** Keywords *** +CheckDir + [Arguments] ${path} + Directory Should Exist ${path} + +CheckUrl + [Arguments] ${session} ${path} ${expect} + ${resp}= Get Request ${session} ${path} + Should Be Equal As Integers ${resp.status_code} ${expect} + +PostCall + [Arguments] ${url} ${data} + ${headers}= Create Dictionary Accept=application/json Content-Type=application/json + ${resp}= Evaluate requests.post('${url}',data='${data}', headers=${headers},verify=False) requests + [Return] ${resp} + +DelCall + [Arguments] ${url} + ${headers}= Create Dictionary Accept=application/json Content-Type=application/json + ${resp}= Evaluate requests.delete('${url}', headers=${headers},verify=False) requests + [Return] ${resp} |