aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorLasse Kaihlavirta <l.kaihlavirt@partner.samsung.com>2021-03-31 14:21:59 +0000
committerGerrit Code Review <gerrit@onap.org>2021-03-31 14:21:59 +0000
commit7b4a3af0a9e4a0046b303e532640bc3e4a3420e5 (patch)
tree6dcb9a3be830abb6af8b847b83b29602327a49b4 /tests
parentddd487752cf6eddd891d7b8fe5062316a932414d (diff)
parent3d202b5a5f14587852e8519def7a07c4ca477686 (diff)
Merge "[DMAAP] Refactoring dmaap suites"
Diffstat (limited to 'tests')
-rw-r--r--tests/dmaap-buscontroller/single-mr-suite/__init__.robot3
-rw-r--r--tests/dmaap-buscontroller/ssl_suite/__init__.robot3
-rw-r--r--tests/dmaap-buscontroller/ssl_suite/test1.robot77
-rw-r--r--tests/dmaap-buscontroller/suite1/__init__.robot3
-rw-r--r--tests/dmaap-buscontroller/suite1/test1.robot42
-rw-r--r--tests/dmaap-buscontroller/with_dr/__init__.robot2
-rwxr-xr-xtests/dmaap-buscontroller/with_dr/orig116
-rw-r--r--tests/dmaap-buscontroller/with_dr/test1.robot111
-rw-r--r--tests/dmaap-buscontroller/with_mr/__init__.robot3
-rw-r--r--tests/dmaap-buscontroller/with_mr/test1.robot (renamed from tests/dmaap-buscontroller/single-mr-suite/test1.robot)37
-rw-r--r--tests/usecases-5G-bulkpm/5G-bulkpm/BulkpmE2E.robot125
-rw-r--r--tests/usecases-5G-bulkpm/5G-bulkpm/__init__.robot2
-rw-r--r--tests/usecases-5G-bulkpm/5G-bulkpm/assets/json_events/FileExistNotification.json33
-rw-r--r--tests/usecases-5G-bulkpm/5G-bulkpm/assets/metadata.schema.json74
-rw-r--r--tests/usecases-5G-bulkpm/5G-bulkpm/resources/JsonValidatorLibrary.py40
-rw-r--r--tests/usecases-5G-bulkpm/5G-bulkpm/resources/bulkpm_keywords.robot39
-rw-r--r--tests/usecases-5G-bulkpm/5G-bulkpm/resources/xNFLibrary.py30
17 files changed, 37 insertions, 703 deletions
diff --git a/tests/dmaap-buscontroller/single-mr-suite/__init__.robot b/tests/dmaap-buscontroller/single-mr-suite/__init__.robot
deleted file mode 100644
index 41c7a003..00000000
--- a/tests/dmaap-buscontroller/single-mr-suite/__init__.robot
+++ /dev/null
@@ -1,3 +0,0 @@
-*** Settings ***
-Documentation dmaap-buscontroller - Suite 1
-
diff --git a/tests/dmaap-buscontroller/ssl_suite/__init__.robot b/tests/dmaap-buscontroller/ssl_suite/__init__.robot
deleted file mode 100644
index 41c7a003..00000000
--- a/tests/dmaap-buscontroller/ssl_suite/__init__.robot
+++ /dev/null
@@ -1,3 +0,0 @@
-*** Settings ***
-Documentation dmaap-buscontroller - Suite 1
-
diff --git a/tests/dmaap-buscontroller/ssl_suite/test1.robot b/tests/dmaap-buscontroller/ssl_suite/test1.robot
deleted file mode 100644
index b5723377..00000000
--- a/tests/dmaap-buscontroller/ssl_suite/test1.robot
+++ /dev/null
@@ -1,77 +0,0 @@
-*** Settings ***
-Library OperatingSystem
-Library RequestsLibrary
-Library HttpLibrary.HTTP
-Library Collections
-Library String
-
-*** Variables ***
-${MESSAGE} Hello, world!
-${DBC_URI} /webapi
-
-*** Test Cases ***
-String Equality Test
- Should Be Equal ${MESSAGE} Hello, world!
-
-Dir Test
- [Documentation] Check if /tmp exists
- Log ${MESSAGE}
- CheckDir /tmp
-
-Url Test
- [Documentation] Check if www.onap.org can be reached
- Create Session openo http://www.onap.org disable_warnings=True
- CheckUrl openo / 200
-
-HTTPS Heartbeat Test
- [Documentation] Check ${DBC_URI}/info SSL endpoint
- Create Session heartbeat https://${DMAAPBC_IP}:8443 disable_warnings=True
- CheckUrl heartbeat ${DBC_URI}/info 204
-
-HTTPS Dmaap Init Test
- [Documentation] Check ${DBC_URI}/dmaap SSL endpoint
- Create Session heartbeat https://${DMAAPBC_IP}:8443 disable_warnings=True
- CheckStatus heartbeat ${DBC_URI}/dmaap "VALID"
-
-HTTPS Dmaap dcaeLocations Test
- [Documentation] Check ${DBC_URI}/dcaeLocations SSL endpoint
- Create Session heartbeat https://${DMAAPBC_IP}:8443 disable_warnings=True
- CheckStatus0 heartbeat ${DBC_URI}/dcaeLocations "VALID"
-
-HTTPS Dmaap mr_clusters Test
- [Documentation] Check ${DBC_URI}/mr_clusters SSL endpoint
- Create Session heartbeat https://${DMAAPBC_IP}:8443 disable_warnings=True
- CheckStatus0 heartbeat ${DBC_URI}/mr_clusters "VALID"
-
-
-*** Keywords ***
-CheckDir
- [Arguments] ${path}
- Directory Should Exist ${path}
-
-CheckUrl
- [Arguments] ${session} ${path} ${expect}
- ${resp}= RequestsLibrary.Get On Session ${session} ${path}
- Should Be Equal As Integers ${resp.status_code} ${expect}
-
-CheckStatus
- [Arguments] ${session} ${path} ${expect}
- ${resp}= RequestsLibrary.Get On Session ${session} ${path}
- log ${resp.content}
- ${val}= Get Json value ${resp.content} /status
- log ${val}
- should be equal as strings ${val} ${expect}
-
-CheckStatus0
- [Arguments] ${session} ${path} ${expect}
- ${resp}= RequestsLibrary.Get On Session ${session} ${path}
- log ${resp.json()}
- log ${resp.content}
-# silliness to strip off the brackets returned for a List to get a Dict
- ${t1}= Remove String ${resp.content} [
- ${dict}= Remove String ${t1} ]
- log ${dict}
- ${val}= Get Json value ${dict} /status
- log ${val}
- should be equal as strings ${val} ${expect}
-
diff --git a/tests/dmaap-buscontroller/suite1/__init__.robot b/tests/dmaap-buscontroller/suite1/__init__.robot
deleted file mode 100644
index 41c7a003..00000000
--- a/tests/dmaap-buscontroller/suite1/__init__.robot
+++ /dev/null
@@ -1,3 +0,0 @@
-*** Settings ***
-Documentation dmaap-buscontroller - Suite 1
-
diff --git a/tests/dmaap-buscontroller/suite1/test1.robot b/tests/dmaap-buscontroller/suite1/test1.robot
deleted file mode 100644
index be4e8cc6..00000000
--- a/tests/dmaap-buscontroller/suite1/test1.robot
+++ /dev/null
@@ -1,42 +0,0 @@
-*** Settings ***
-Library OperatingSystem
-Library RequestsLibrary
-
-*** Variables ***
-${MESSAGE} Hello, world!
-${DBC_URI} /webapi
-
-*** Test Cases ***
-String Equality Test
- Should Be Equal ${MESSAGE} Hello, world!
-
-Dir Test
- [Documentation] Check if /tmp exists
- Log ${MESSAGE}
- CheckDir /tmp
-
-Url Test
- [Documentation] Check if www.onap.org can be reached
- Create Session openo http://www.onap.org
- CheckUrl openo / 200
-
-Mock Hello Server Test
- [Documentation] Check /hello endpoint
- Create Session hello http://${AAF_IP}:1080
- CheckUrl hello /hello 200
-
-Heartbeat Test
- [Documentation] Check ${DBC_URI}/info endpoint
- Create Session heartbeat http://${DMAAPBC_IP}:8080
- CheckUrl heartbeat ${DBC_URI}/info 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}
-
diff --git a/tests/dmaap-buscontroller/with_dr/__init__.robot b/tests/dmaap-buscontroller/with_dr/__init__.robot
new file mode 100644
index 00000000..2d404124
--- /dev/null
+++ b/tests/dmaap-buscontroller/with_dr/__init__.robot
@@ -0,0 +1,2 @@
+*** Settings ***
+Documentation dmaap-buscontroller - dr
diff --git a/tests/dmaap-buscontroller/with_dr/orig b/tests/dmaap-buscontroller/with_dr/orig
deleted file mode 100755
index fcac2026..00000000
--- a/tests/dmaap-buscontroller/with_dr/orig
+++ /dev/null
@@ -1,116 +0,0 @@
-*** Settings ***
-Library OperatingSystem
-Library RequestsLibrary
-Library requests
-Library Collections
-Library String
-
-*** Variables ***
-${TARGET_URL} https://${DR_PROV_IP}:8443
-${TARGET_URL_FEED} https://${DR_PROV_IP}:8443/feed/1
-${TARGET_URL_SUBSCRIBE} https://${DR_PROV_IP}:8443/subscribe/1
-${TARGET_URL_SUBSCRIPTION} https://${DR_PROV_IP}:8443/subs/1
-${TARGET_URL_PUBLISH} https://${DR_NODE_IP}:8443/publish/1/csit_test
-${CREATE_FEED_DATA} {"name": "CSIT_Test", "version": "m1.0", "description": "CSIT_Test", "business_description": "CSIT_Test", "suspend": false, "deleted": false, "changeowner": true, "authorization": {"classification": "unclassified", "endpoint_addrs": [], "endpoint_ids": [{"password": "rs873m", "id": "rs873m"}]}}
-${UPDATE_FEED_DATA} {"name": "CSIT_Test", "version": "m1.0", "description": "UPDATED-CSIT_Test", "business_description": "CSIT_Test", "suspend": true, "deleted": false, "changeowner": true, "authorization": {"classification": "unclassified", "endpoint_addrs": [], "endpoint_ids": [{"password": "rs873m", "id": "rs873m"}]}}
-${SUBSCRIBE_DATA} {"delivery":{ "url":"https://${DR_PROV_IP}:8080/", "user":"rs873m", "password":"rs873m", "use100":true}, "metadataOnly":false, "suspend":false, "groupid":29, "subscriber":"sg481n"}
-${UPDATE_SUBSCRIPTION_DATA} {"delivery":{ "url":"https://${DR_PROV_IP}:8080/", "user":"sg481n", "password":"sg481n", "use100":true}, "metadataOnly":false, "suspend":true, "groupid":29, "subscriber":"sg481n"}
-${FEED_CONTENT_TYPE} application/vnd.att-dr.feed
-${SUBSCRIBE_CONTENT_TYPE} application/vnd.att-dr.subscription
-${PUBLISH_FEED_CONTENT_TYPE} application/octet-stream
-
-*** Test Cases ***
-Run Feed Creation
- [Documentation] Feed Creation
- [Timeout] 1 minute
- ${resp}= PostCall ${TARGET_URL} ${CREATE_FEED_DATA} ${FEED_CONTENT_TYPE} rs873m
- log ${TARGET_URL}
- log ${resp.text}
- Should Be Equal As Strings ${resp.status_code} 201
- log 'JSON Response Code:'${resp}
-
-Run Subscribe to Feed
- [Documentation] Subscribe to Feed
- [Timeout] 1 minute
- ${resp}= PostCall ${TARGET_URL_SUBSCRIBE} ${SUBSCRIBE_DATA} ${SUBSCRIBE_CONTENT_TYPE} sg481n
- log ${TARGET_URL_SUBSCRIBE}
- log ${resp.text}
- Should Be Equal As Strings ${resp.status_code} 201
- log 'JSON Response Code:'${resp}
-
-Run Publish Feed
- [Documentation] Publish to Feed
- [Timeout] 1 minute
- Sleep 10s Behaviour was noticed where feed was not created in time for publish to be sent
- ${resp}= PutCall ${TARGET_URL_PUBLISH} ${CREATE_FEED_DATA} ${PUBLISH_FEED_CONTENT_TYPE} rs873m
- log ${TARGET_URL_PUBLISH}
- log ${resp.text}
- Should Be Equal As Strings ${resp.status_code} 204
- log 'JSON Response Code:'${resp}
-
-Run Update Subscription
- [Documentation] Update Subscription to suspend and change delivery credentials
- [Timeout] 1 minute
- ${resp}= PutCall ${TARGET_URL_SUBSCRIPTION} ${UPDATE_SUBSCRIPTION_DATA} ${SUBSCRIBE_CONTENT_TYPE} sg481n
- log ${TARGET_URL_SUBSCRIPTION}
- log ${resp.text}
- Should Be Equal As Strings ${resp.status_code} 200
- log 'JSON Response Code:'${resp}
- ${resp}= GetCall ${TARGET_URL_SUBSCRIPTION} ${SUBSCRIBE_CONTENT_TYPE} sg481n
- log ${resp.text}
- Should Contain ${resp.text} "password":"sg481n","user":"sg481n"
- log 'JSON Response Code:'${resp}
-
-Run Update Feed
- [Documentation] Update Feed description and suspend
- [Timeout] 1 minute
- ${resp}= PutCall ${TARGET_URL_FEED} ${UPDATE_FEED_DATA} ${FEED_CONTENT_TYPE} rs873m
- log ${TARGET_URL_FEED}
- log ${resp.text}
- Should Be Equal As Strings ${resp.status_code} 200
- log 'JSON Response Code:'${resp}
- ${resp}= GetCall ${TARGET_URL_FEED} ${FEED_CONTENT_TYPE} rs873m
- log ${resp.text}
- Should Contain ${resp.text} "UPDATED-CSIT_Test"
- log 'JSON Response Code:'${resp}
-
-Run Delete Subscription
- [Documentation] Delete Subscription
- [Timeout] 1 minute
- ${resp}= DeleteCall ${TARGET_URL_SUBSCRIPTION} sg481n
- log ${resp.text}
- Should Be Equal As Strings ${resp.status_code} 204
- log 'JSON Response Code:'${resp}
-
-Run Delete Feed
- [Documentation] Delete Feed
- [Timeout] 1 minute
- ${resp}= DeleteCall ${TARGET_URL_FEED} rs873m
- log ${resp.text}
- Should Be Equal As Strings ${resp.status_code} 204
- log 'JSON Response Code:'${resp}
-
-*** Keywords ***
-PostCall
- [Arguments] ${url} ${data} ${content_type} ${user}
- ${headers}= Create Dictionary X-ATT-DR-ON-BEHALF-OF=${user} Content-Type=${content_type}
- ${resp}= Evaluate requests.post('${url}',data='${data}', headers=${headers},verify=False) requests
- [Return] ${resp}
-
-PutCall
- [Arguments] ${url} ${data} ${content_type} ${user}
- ${headers}= Create Dictionary X-ATT-DR-ON-BEHALF-OF=${user} Content-Type=${content_type} Authorization=Basic cnM4NzNtOnJzODczbQ==
- ${resp}= Evaluate requests.put('${url}',data='${data}', headers=${headers},verify=False) requests
- [Return] ${resp}
-
-GetCall
- [Arguments] ${url} ${content_type} ${user}
- ${headers}= Create Dictionary X-ATT-DR-ON-BEHALF-OF=${user} Content-Type=${content_type}
- ${resp}= Evaluate requests.get('${url}', headers=${headers},verify=False) requests
- [Return] ${resp}
-
-DeleteCall
- [Arguments] ${url} ${user}
- ${headers}= Create Dictionary X-ATT-DR-ON-BEHALF-OF=${user}
- ${resp}= Evaluate requests.delete('${url}', headers=${headers},verify=False) requests
- [Return] ${resp}
diff --git a/tests/dmaap-buscontroller/with_dr/test1.robot b/tests/dmaap-buscontroller/with_dr/test1.robot
index a3aef42b..671e89b7 100644
--- a/tests/dmaap-buscontroller/with_dr/test1.robot
+++ b/tests/dmaap-buscontroller/with_dr/test1.robot
@@ -9,127 +9,60 @@ Library String
*** Variables ***
-${MESSAGE} Hello, world!
-${DBC_URI} webapi
-${DBC_URL} http://${DMAAPBC_IP}:8080/${DBC_URI}
+${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
+ ${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
+ ${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}
+ ${resp}= PostCall ${DBC_URL}/dr_pubs ${PUB2_DATA}
+ Should Be Equal As Integers ${resp.status_code} 201
+ ${JSON}= Evaluate json.loads(r"""${resp.content}""", strict=False)
+ ${result}= Set Variable ${JSON['pubId']}
+ Set Suite Variable ${pubId} ${result}
(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}
+ ${resp}= PostCall ${DBC_URL}/dr_subs ${SUB2_DATA}
+ Should Be Equal As Integers ${resp.status_code} 201
+ ${JSON}= Evaluate json.loads(r"""${resp.content}""", strict=False)
+ ${result}= Set Variable ${JSON['subId']}
+ Set Suite Variable ${subId} ${result}
(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
+ ${resp}= GET On Session 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
+ ${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
+ ${resp}= DelCall ${DBC_URL}/dr_pubs/${pubId}
+ 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
diff --git a/tests/dmaap-buscontroller/with_mr/__init__.robot b/tests/dmaap-buscontroller/with_mr/__init__.robot
new file mode 100644
index 00000000..ffcec41b
--- /dev/null
+++ b/tests/dmaap-buscontroller/with_mr/__init__.robot
@@ -0,0 +1,3 @@
+*** Settings ***
+Documentation dmaap-buscontroller - mr
+
diff --git a/tests/dmaap-buscontroller/single-mr-suite/test1.robot b/tests/dmaap-buscontroller/with_mr/test1.robot
index d68b9ed1..37d3e158 100644
--- a/tests/dmaap-buscontroller/single-mr-suite/test1.robot
+++ b/tests/dmaap-buscontroller/with_mr/test1.robot
@@ -9,9 +9,8 @@ Library String
*** Variables ***
-${MESSAGE} Hello, world!
-${DBC_URI} webapi
-${DBC_URL} http://${DMAAPBC_IP}:8080/${DBC_URI}
+${DBC_URI} webapi
+${DBC_URL} http://${DMAAP_BC_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" ]
@@ -25,14 +24,7 @@ ${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}
@@ -55,42 +47,33 @@ Url Test
(DMAAP-297)
[Documentation] Query for all topics and specific topic
Create Session get ${DBC_URL}
- ${resp}= Get Request get /topics
+ ${resp}= GET On Session get /topics
Should Be Equal As Integers ${resp.status_code} 200
- ${resp}= Get Request get /topics/${TOPIC_NS}.singleMRtopic3
+ ${resp}= GET On Session 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
+ ${resp}= GET On Session 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} \"
+ ${JSON}= Evaluate json.loads(r"""${resp.content}""", strict=False)
+ ${clientId}= Set Variable ${JSON['clients'][1]['mrClientId']}
${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
+ ${resp}= GET On Session 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} \"
+ ${JSON}= Evaluate json.loads(r"""${resp.content}""", strict=False)
+ ${clientId}= Set Variable ${JSON['clients'][0]['mrClientId']}
${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
diff --git a/tests/usecases-5G-bulkpm/5G-bulkpm/BulkpmE2E.robot b/tests/usecases-5G-bulkpm/5G-bulkpm/BulkpmE2E.robot
deleted file mode 100644
index 660c5f64..00000000
--- a/tests/usecases-5G-bulkpm/5G-bulkpm/BulkpmE2E.robot
+++ /dev/null
@@ -1,125 +0,0 @@
-*** Settings ***
-Documentation Testing E2E VES,Dmaap,DFC,DR with File Ready event feed from xNF
-Library RequestsLibrary
-Library OperatingSystem
-Library Collections
-Library Process
-Resource resources/bulkpm_keywords.robot
-Library resources/JsonValidatorLibrary.py
-Library resources/xNFLibrary.py
-
-
-*** Variables ***
-${VESC_URL} http://%{VESC_IP}:%{VESC_PORT}
-${GLOBAL_APPLICATION_ID} robot-ves
-${VES_ANY_EVENT_PATH} /eventListener/v7
-${HEADER_STRING} content-type=application/json
-${EVENT_DATA_FILE} %{WORKSPACE}/tests/usecases-5G-bulkpm/5G-bulkpm/assets/json_events/FileExistNotification.json
-
-${TARGETURL_TOPICS} http://${DMAAP_MR_IP}:3904/topics
-${TARGETURL_SUBSCR} http://${DMAAP_MR_IP}:3904/events/unauthenticated.VES_NOTIFICATION_OUTPUT/OpenDcae-c12/C12?timeout=1000
-${CLI_EXEC_CLI} curl -k https://${DR_PROV_IP}:8443/internal/prov
-${CLI_EXEC_CLI_FILECONSUMER} docker exec fileconsumer-node /bin/sh -c "ls /opt/app/subscriber/delivery | grep .xml"
-${CLI_EXEC_CLI_DFC_LOG} docker exec dcaegen2-datafile-collector /bin/sh -c "cat /var/log/ONAP/application.log" > %{WORKSPACE}/archives/dfc_docker.log
-${CLI_EXEC_CLI_DFC_LOG_GREP} grep "Datafile file published" %{WORKSPACE}/archives/dfc_docker.log
-${CLI_EXEC_CLI_FILECONSUMER_CP} docker cp fileconsumer-node:/opt/app/subscriber/delivery/A20181002.0000-1000-0015-1000_5G.xml.M %{WORKSPACE}
-${CLI_EXEC_RENAME_METADATA} mv %{WORKSPACE}/A20181002.0000-1000-0015-1000_5G.xml.M %{WORKSPACE}/archives/metadata.json
-${CLI_EXEC_CLI_PMMAPPER_LOG} docker exec dcaegen2-pm-mapper /bin/sh -c "cat /var/log/ONAP/dcaegen2/services/pm-mapper/pm-mapper_output.log" > %{WORKSPACE}/archives/pmmapper_docker.log
-${CLI_EXEC_CLI_PMMAPPER_LOG_GREP} grep "XML validation successful" %{WORKSPACE}/archives/pmmapper_docker.log
-${CLI_EXEC_CLI_PMMAPPER_LOG_GREP_VES} grep "Successfully published VES events to messagerouter" %{WORKSPACE}/archives/pmmapper_docker.log
-${metadataSchemaPath} %{WORKSPACE}/tests/usecases-5G-bulkpm/5G-bulkpm/assets/metadata.schema.json
-${metadataJsonPath} %{WORKSPACE}/archives/metadata.json
-
-*** Test Cases ***
-
-Send VES File Ready Event to VES Collector
- [Tags] Bulk_PM_E2E_01
- [Documentation] Send VES File Ready Event
- ${evtdata}= Get Event Data From File ${EVENT_DATA_FILE}
- ${headers}= Create Header From String ${HEADER_STRING}
- ${resp}= Publish Event To VES Collector ${VESC_URL} ${VES_ANY_EVENT_PATH} ${headers} ${evtdata}
- Sleep 15s
- ${resp}= Publish Event To VES Collector ${VESC_URL} ${VES_ANY_EVENT_PATH} ${headers} ${evtdata}
- Sleep 5s
- ${resp}= Publish Event To VES Collector ${VESC_URL} ${VES_ANY_EVENT_PATH} ${headers} ${evtdata}
- Sleep 5s
- ${resp}= Publish Event To VES Collector ${VESC_URL} ${VES_ANY_EVENT_PATH} ${headers} ${evtdata}
- Sleep 5s
- Log Receive HTTP Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 202
-
-Check VES Notification Topic is existing in Message Router
- [Tags] Bulk_PM_E2E_02
- [Documentation] Get the VES Notification topic on message router
- [Timeout] 1 minute
- Sleep 10s
- ${resp}= GetCall ${TARGETURL_TOPICS}
- log ${TARGETURL_TOPICS}
- log 'JSON Response Code :'${resp}
- ${topics}= Evaluate $resp.json().get('topics')
- log ${topics}
- ${ListLength}= Get Length ${topics}
- log ${ListLength}
- List Should Contain Value ${topics} unauthenticated.VES_NOTIFICATION_OUTPUT
-
-Verify Data File Collector successfully publishes the PM XML file to the Data Router
- [Tags] Bulk_PM_E2E_03
- [Documentation] Check that DFC publishes the PM XML to the Data Router
- ${cli_cmd_output}= Run Process ${CLI_EXEC_CLI_DFC_LOG} shell=yes
- Log ${cli_cmd_output.stdout}
- Should Be Equal As Strings ${cli_cmd_output.rc} 0
- ${cli_cmd_output}= Run Process ${CLI_EXEC_CLI_DFC_LOG_GREP} shell=yes
- Log ${cli_cmd_output.stdout}
- Should Be Equal As Strings ${cli_cmd_output.rc} 0
- Should Contain ${cli_cmd_output.stdout} Datafile file published
-
-
-Verify Default Feed And File Consumer Subscription On Datarouter
- [Tags] Bulk_PM_E2E_04
- [Documentation] Verify Default Feed And File Consumer Subscription On Datarouter
- ${cli_cmd_output}= Run Process ${CLI_EXEC_CLI} shell=yes
- Log ${cli_cmd_output.stdout}
- Should Be Equal As Strings ${cli_cmd_output.rc} 0
- Should Contain ${cli_cmd_output.stdout} https://dmaap-dr-prov/publish/1
- Should Contain ${cli_cmd_output.stdout} http://datarouter-subscriber:7070
-
-
-Verify Fileconsumer Receive PM file from Data Router
- [Tags] Bulk_PM_E2E_05
- [Documentation] Check PM XML file exists on the File Consumer Simulator
- ${cli_cmd_output}= Run Process ${CLI_EXEC_CLI_FILECONSUMER} shell=yes
- Log ${cli_cmd_output.stdout}
- Should Be Equal As Strings ${cli_cmd_output.rc} 0
- Should Contain ${cli_cmd_output.stdout} A20181002.0000-1000-0015-1000_5G.xml
-
-Verify File Consumer Receive valid metadata from Data Router
- [Tags] Bulk_PM_E2E_06
- [Documentation] Check PM XML file is delivered to the FileConsumer Simulator with valid metadata
- ${cli_cmd_output}= Run Process ${CLI_EXEC_CLI_FILECONSUMER} shell=yes
- Log ${cli_cmd_output.stdout}
- Should Be Equal As Strings ${cli_cmd_output.rc} 0
- Should Contain ${cli_cmd_output.stdout} A20181002.0000-1000-0015-1000_5G.xml.M
- ${cli_cmd_output}= Run Process ${CLI_EXEC_CLI_FILECONSUMER_CP} shell=yes
- ${cli_cmd_output}= Run Process ${CLI_EXEC_RENAME_METADATA} shell=yes
- ${validation_result}= Validate ${metadataSchemaPath} ${metadataJsonPath}
- Should Be Equal As Strings ${validation_result} 0
-
-Verify PM-Mapper successfully receives uncompressed the PM XML file
- [Tags] Bulk_PM_E2E_07
- [Documentation] Check that PM-Mapper receives the uncompressed PM XML file
- ${cli_cmd_output}= Run Process ${CLI_EXEC_CLI_PMMAPPER_LOG} shell=yes
- Log ${cli_cmd_output.stdout}
- Should Be Equal As Strings ${cli_cmd_output.rc} 0
- ${cli_cmd_output}= Run Process ${CLI_EXEC_CLI_PMMAPPER_LOG_GREP} shell=yes
- Log ${cli_cmd_output.stdout}
- Should Be Equal As Strings ${cli_cmd_output.rc} 0
- Should Contain ${cli_cmd_output.stdout} XML validation successful
-
-Verify PM-Mapper successfully publishes VES event the Message Router
- [Tags] Bulk_PM_E2E_08
- [Documentation] Check that PM-Mapper publishes VES onto the Message Router
- ${cli_cmd_output}= Run Process ${CLI_EXEC_CLI_PMMAPPER_LOG} shell=yes
- Log ${cli_cmd_output.stdout}
- Should Be Equal As Strings ${cli_cmd_output.rc} 0
- ${cli_cmd_output}= Run Process ${CLI_EXEC_CLI_PMMAPPER_LOG_GREP_VES} shell=yes
- Should Contain ${cli_cmd_output.stdout} Successfully published VES events to messagerouter \ No newline at end of file
diff --git a/tests/usecases-5G-bulkpm/5G-bulkpm/__init__.robot b/tests/usecases-5G-bulkpm/5G-bulkpm/__init__.robot
deleted file mode 100644
index 7114fd44..00000000
--- a/tests/usecases-5G-bulkpm/5G-bulkpm/__init__.robot
+++ /dev/null
@@ -1,2 +0,0 @@
-*** Settings ***
-Documentation 5G Bulk PM E2E Testcases
diff --git a/tests/usecases-5G-bulkpm/5G-bulkpm/assets/json_events/FileExistNotification.json b/tests/usecases-5G-bulkpm/5G-bulkpm/assets/json_events/FileExistNotification.json
deleted file mode 100644
index 02f092df..00000000
--- a/tests/usecases-5G-bulkpm/5G-bulkpm/assets/json_events/FileExistNotification.json
+++ /dev/null
@@ -1,33 +0,0 @@
-{
- "event": {
- "commonEventHeader": {
- "version": "4.0.1",
- "vesEventListenerVersion": "7.0.1",
- "domain": "notification",
- "eventName": "Noti_RnNode-Ericsson_FileReady",
- "eventId": "FileReady_1797490e-10ae-4d48-9ea7-3d7d790b25e1",
- "lastEpochMicrosec": 8745745764578,
- "priority": "Normal",
- "reportingEntityName": "otenb5309",
- "sequence": 0,
- "sourceName": "oteNB5309",
- "startEpochMicrosec": 8745745764578,
- "timeZoneOffset": "UTC+05.30"
- },
- "notificationFields": {
- "changeIdentifier": "PM_MEAS_FILES",
- "changeType": "FileReady",
- "notificationFieldsVersion": "2.0",
- "arrayOfNamedHashMap": [
- { "name": "A20181002.0000-1000-0015-1000_5G.xml.gz",
- "hashMap":{
- "location": "sftp://admin:admin@sftp:22/A20181002.0000-1000-0015-1000_5G.xml.gz",
- "compression": "gzip",
- "fileFormatType": "org.3GPP.32.435#measCollec",
- "fileFormatVersion": "V10"
- }
- }
- ]
- }
-}
-} \ No newline at end of file
diff --git a/tests/usecases-5G-bulkpm/5G-bulkpm/assets/metadata.schema.json b/tests/usecases-5G-bulkpm/5G-bulkpm/assets/metadata.schema.json
deleted file mode 100644
index a41b3544..00000000
--- a/tests/usecases-5G-bulkpm/5G-bulkpm/assets/metadata.schema.json
+++ /dev/null
@@ -1,74 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema",
- "$id": "metadata.schema.json",
- "title": "DataRouter PM File Metadata",
- "description": "Metadata for 3GPP PM files that are placed on the DMaaP Data Router by the Data File Collector (VES 7.1)",
- "type": "object",
-
- "properties": {
- "productName": {
- "description": "from the FileReady event eventName",
- "type": "string"
- },
-
- "vendorName": {
- "description": "from the FileReady event eventName",
- "type": "string"
- },
-
- "lastEpochMicrosec": {
- "description": "the latest unix epoch time associated with the FileReady event",
- "type": "string"
- },
-
- "sourceName": {
- "description": "the name of the entity experiencing the event",
- "type": "string"
- },
-
- "startEpochMicrosec": {
- "description": "the earliest unix epoch time associated with the FileReady event",
- "type": "string"
- },
-
- "timeZoneOffset": {
- "description": "the timezone offset from UTC",
- "type": "string",
- "pattern": "^(?:(?:[a-zA-Z]{3})[+-](?:[01][0-9]|2[0-3]).[0-5][0-9])$"
- },
-
- "location": {
- "description": "follows the format <protocol>://<ip address>:<port>/<path>/<filename>, the IP address is the node ip address, the port of the protocol server",
- "type": "string"
- },
-
- "compression": {
- "description": "specifies if the file is compressed",
- "type": "string",
- "enum": [ "gzip" ]
- },
-
- "fileFormatType": {
- "description": "the file format",
- "type": "string"
- },
-
- "fileFormatVersion": {
- "description": "the version of the file format",
- "type": "string"
- }
- },
-
- "required": [
- "productName",
- "vendorName",
- "lastEpochMicrosec",
- "sourceName",
- "startEpochMicrosec",
- "timeZoneOffset",
- "location",
- "compression",
- "fileFormatType",
- "fileFormatVersion"
- ]
-}
diff --git a/tests/usecases-5G-bulkpm/5G-bulkpm/resources/JsonValidatorLibrary.py b/tests/usecases-5G-bulkpm/5G-bulkpm/resources/JsonValidatorLibrary.py
deleted file mode 100644
index ed376ff2..00000000
--- a/tests/usecases-5G-bulkpm/5G-bulkpm/resources/JsonValidatorLibrary.py
+++ /dev/null
@@ -1,40 +0,0 @@
-# -*- coding: utf-8 -*-
-
-import logging
-
-from jsonschema import validate, ValidationError, SchemaError
-from simplejson import load
-
-
-class JsonValidatorLibrary(object):
-
- def __init__(self):
- pass
-
- @staticmethod
- def validate(schema_path, json_path):
- logging.info("Schema path: " + schema_path)
- logging.info("JSON path: " + json_path)
- schema = None
- data = None
- try:
- schema = load(open(schema_path, 'r'))
- data = load(open(json_path, 'r'))
- except (IOError, ValueError, OSError) as e:
- logging.error(e.message)
- return 1
-
- try:
- validate(data, schema)
- except (ValidationError, SchemaError) as e:
- logging.error(e.message)
- return 1
-
- # logger.log("JSON validation successful")
- print("JSON validation successful")
- return 0
-
-
-if __name__ == '__main__':
- lib = JsonValidatorLibrary()
-# sys.exit(JsonValidatorLibrary().validate(sys.argv[1], sys.argv[2]))
diff --git a/tests/usecases-5G-bulkpm/5G-bulkpm/resources/bulkpm_keywords.robot b/tests/usecases-5G-bulkpm/5G-bulkpm/resources/bulkpm_keywords.robot
deleted file mode 100644
index 9ef56c83..00000000
--- a/tests/usecases-5G-bulkpm/5G-bulkpm/resources/bulkpm_keywords.robot
+++ /dev/null
@@ -1,39 +0,0 @@
- *** Settings ***
-Documentation The main interface for interacting with VES. It handles low level stuff like managing the http request library and VES required fields
-Library RequestsLibrary
-Library ../resources/xNFLibrary.py
-Library ../resources/JsonValidatorLibrary.py
-Library OperatingSystem
-Library Collections
-Library requests
-Library Collections
-Library String
-
-*** Variables ***
-
-*** Keywords ***
-
-Get Event Data From File
- [Arguments] ${jsonfile}
- ${data}= OperatingSystem.Get File ${jsonfile}
- #Should Not Be_Equal ${data} None
- [return] ${data}
-
-Publish Event To VES Collector
- [Documentation] Send an event to VES Collector
- [Arguments] ${url} ${evtpath} ${httpheaders} ${evtdata}
- Log Creating session ${url}
- ${session}= Create Session dcaegen2-d1 ${url}
- ${resp}= Post Request dcaegen2-d1 ${evtpath} data=${evtdata} headers=${httpheaders}
- #Log Received response from dcae ${resp.json()}
- [return] ${resp}
-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}
- ${resp}= Evaluate requests.get('${url}') requests
- [Return] ${resp}
diff --git a/tests/usecases-5G-bulkpm/5G-bulkpm/resources/xNFLibrary.py b/tests/usecases-5G-bulkpm/5G-bulkpm/resources/xNFLibrary.py
deleted file mode 100644
index b70d8095..00000000
--- a/tests/usecases-5G-bulkpm/5G-bulkpm/resources/xNFLibrary.py
+++ /dev/null
@@ -1,30 +0,0 @@
-'''
-Created on Aug 18, 2017
-
-@author: sw6830
-'''
-import time
-import uuid
-
-from robot.api import logger
-
-
-class xNFLibrary(object):
-
- def __init__(self):
- pass
-
- @staticmethod
- def create_header_from_string(dict_str):
- logger.info("Enter create_header_from_string: dictStr")
- return dict(u.split("=") for u in dict_str.split(","))
-
- @staticmethod
- def Generate_UUID(self):
- """generate a uuid"""
- return uuid.uuid4()
-
-
-if __name__ == '__main__':
- lib = xNFLibrary()
- time.sleep(100000)