| *** 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} |
| ${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} } |
| ${FEED1_DATA} { "feedName":"feed1", "feedVersion": "csit", "feedDescription":"generated for CSIT", "owner":"dgl", "asprClassification": "unclassified" } |
| ${FEED2_DATA} { "feedName":"feed2", "feedVersion": "csit", "feedDescription":"generated for CSIT", "owner":"dgl", "asprClassification": "unclassified" } |
| ${PUB2_DATA} { "dcaeLocationName": "${LOC}", "username": "pub2", "userpwd": "topSecret123", "feedId": "2" } |
| ${SUB2_DATA} { "dcaeLocationName": "${LOC}", "username": "sub2", "userpwd": "someSecret123", "deliveryURL": "https://${DMAAPBC_IP}:8443/webapi/noURI", "feedId": "2" } |
| ${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-441c1) |
| [Documentation] Create Feed w no clients POST ${DBC_URI}/feeds endpoint |
| ${resp}= PostCall ${DBC_URL}/feeds ${FEED1_DATA} |
| Should Be Equal As Integers ${resp.status_code} 200 |
| |
| (DMAAP-441c2) |
| [Documentation] Create Feed w clients POST ${DBC_URI}/feeds endpoint |
| ${resp}= PostCall ${DBC_URL}/feeds ${FEED2_DATA} |
| Should Be Equal As Integers ${resp.status_code} 200 |
| |
| (DMAAP-441c3) |
| [Documentation] Add Publisher to existing feed |
| ${resp}= PostCall ${DBC_URL}/dr_pubs ${PUB2_DATA} |
| Should Be Equal As Integers ${resp.status_code} 201 |
| ${tmp}= Get Json Value ${resp.text} /pubId |
| ${tmp}= Remove String ${tmp} \" |
| Set Suite Variable ${pubId} ${tmp} |
| |
| (DMAAP-441c4) |
| [Documentation] Add Subscriber to existing feed |
| ${resp}= PostCall ${DBC_URL}/dr_subs ${SUB2_DATA} |
| Should Be Equal As Integers ${resp.status_code} 201 |
| ${tmp}= Get Json Value ${resp.text} /subId |
| ${tmp}= Remove String ${tmp} \" |
| Set Suite Variable ${subId} ${tmp} |
| |
| (DMAAP-443) |
| [Documentation] List existing feeds |
| Create Session get ${DBC_URL} |
| ${resp}= Get Request get /feeds |
| Should Be Equal As Integers ${resp.status_code} 200 |
| |
| (DMAAP-444) |
| [Documentation] Delete existing subscriber |
| ${resp}= DelCall ${DBC_URL}/dr_subs/${subId} |
| Should Be Equal As Integers ${resp.status_code} 204 |
| |
| (DMAAP-445) |
| [Documentation] Delete existing publisher |
| ${resp}= DelCall ${DBC_URL}/dr_pubs/${pubId} |
| Should Be Equal As Integers ${resp.status_code} 204 |
| |
| #(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} |