summaryrefslogtreecommitdiffstats
path: root/test/csit/tests
diff options
context:
space:
mode:
Diffstat (limited to 'test/csit/tests')
-rwxr-xr-xtest/csit/tests/dmaap/mrpubsub/mrpubsub.robot73
1 files changed, 73 insertions, 0 deletions
diff --git a/test/csit/tests/dmaap/mrpubsub/mrpubsub.robot b/test/csit/tests/dmaap/mrpubsub/mrpubsub.robot
new file mode 100755
index 000000000..c711bd754
--- /dev/null
+++ b/test/csit/tests/dmaap/mrpubsub/mrpubsub.robot
@@ -0,0 +1,73 @@
+*** Settings ***
+Library OperatingSystem
+Library RequestsLibrary
+Library requests
+Library Collections
+Library String
+
+*** Variables ***
+${TARGETURL_PUBLISH} http://${DMAAP_MR_IP}:3904/events/TestTopic1
+${TARGETURL_TOPICS} http://${DMAAP_MR_IP}:3904/topics
+${TARGETURL_SUBSCR} http://${DMAAP_MR_IP}:3904/events/TestTopic1/CG1/C1?timeout=1000
+${TEST_DATA} {"topicName": "TestTopic1"}
+${TOPIC_DATA} {"topicName":"FirstTopic","topicDescription":"This is a TestTopic","partitionCount":"1","replicationCount":"3","transactionEnabled":"true"}
+
+*** Test Cases ***
+Run Topic Creation and Publish
+ [Documentation] Topic Creation
+ [Timeout] 1 minute
+ ${resp}= PostCall ${TARGETURL_PUBLISH} ${TEST_DATA}
+ log ${TARGETURL_PUBLISH}
+ log ${resp.text}
+ Should Be Equal As Strings ${resp.status_code} 200
+ ${count}= Evaluate $resp.json().get('count')
+ log 'JSON Response Code:'${resp}
+
+Run Subscribing a message status
+ [Documentation] Subscribide message status
+ [Timeout] 1 minute
+ ${resp}= GetCall ${TARGETURL_SUBSCR}
+ log ${TARGETURL_SUBSCR}
+ Should Be Equal As Strings ${resp.status_code} 200
+ log 'JSON Response Code :'${resp}
+
+Run check topics are exisiting
+ [Documentation] Get the count of the Topics
+ [Timeout] 1 minute
+ ${resp}= GetCall ${TARGETURL_TOPICS}
+ log ${TARGETURL_TOPICS}
+ Should Be Equal As Strings ${resp.status_code} 200
+ log 'JSON Response Code :'${resp}
+ ${topics}= Evaluate $resp.json().get('topics')
+ log ${topics}
+ ${ListLength}= Get Length ${topics}
+ log ${ListLength}
+ List Should Contain Value ${topics} TestTopic1
+
+Run Publich and Subscribe a message
+ [Documentation] Publish and Subscribe the message
+ [Timeout] 1 minute
+ ${resp}= PostCall ${TARGETURL_PUBLISH} ${TEST_DATA}
+ log ${TARGETURL_PUBLISH}
+ log ${resp.text}
+ Should Be Equal As Strings ${resp.status_code} 200
+ ${sub_resp}= GetCall ${TARGETURL_SUBSCR}
+ log ${TARGETURL_SUBSCR}
+ Should Be Equal As Strings ${sub_resp.status_code} 200
+ log 'JSON Response Code :'${sub_resp}
+ ${ListLength}= Get Length ${sub_resp.json()}
+ log ${ListLength}
+ List Should Contain Value ${sub_resp.json()} {"topicName":"TestTopic1"} case_insensitive=yes
+
+*** Keywords ***
+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}
+
+GetCall
+ [Arguments] ${url}
+ ${headers}= Create Dictionary Accept=application/json Content-Type=application/json
+ ${resp}= Evaluate requests.get('${url}', headers=${headers}, verify=False) requests
+ [Return] ${resp}