aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRam Krishna Verma <ram_krishna.verma@bell.ca>2021-05-04 16:30:16 -0400
committerRam Krishna Verma <ram_krishna.verma@bell.ca>2021-05-10 19:32:52 +0000
commit0559e85794edc2fc77b35561737ff4640c8895c8 (patch)
treef229122a0bf9bdd103047090c632e12a58f5da30
parent44061ae9201cdff70e753f42f497dff12a45e4b6 (diff)
Add testcases for policy status and pdp statistics
Adding testcases to validate policy status and pdp statistics api's. Issue-ID: POLICY-3257 Change-Id: I730451c4abb19bab6ddf10cba58f63ab5ca3a11a Signed-off-by: Ram Krishna Verma <ram_krishna.verma@bell.ca> (cherry picked from commit 27d086bfa7a72f761204ad7a76068687f6f36f89)
-rw-r--r--csit/tests/apex-pdp-test.robot61
1 files changed, 51 insertions, 10 deletions
diff --git a/csit/tests/apex-pdp-test.robot b/csit/tests/apex-pdp-test.robot
index 54838a399..e538e6faa 100644
--- a/csit/tests/apex-pdp-test.robot
+++ b/csit/tests/apex-pdp-test.robot
@@ -12,15 +12,19 @@ Healthcheck
Log Creating session https://${APEX_IP}:6969
${session}= Create Session policy https://${APEX_IP}:6969 auth=${auth}
${headers}= Create Dictionary Accept=application/json Content-Type=application/json
- ${resp}= Get Request policy /policy/apex-pdp/v1/healthcheck headers=${headers}
- Log Received response from policy1 ${resp.text}
+ ${resp}= GET On Session policy /policy/apex-pdp/v1/healthcheck headers=${headers}
+ Log Received response from policy ${resp.text}
Should Be Equal As Strings ${resp.status_code} 200
Should Be Equal As Strings ${resp.json()['code']} 200
ExecuteApexPolicy
Wait Until Keyword Succeeds 2 min 5 sec CreatePolicy
+ Wait Until Keyword Succeeds 3 min 5 sec VerifyPdpStatistics 0 0 0 0
Wait Until Keyword Succeeds 2 min 5 sec DeployPolicy
+ Wait Until Keyword Succeeds 2 min 5 sec VerifyPolicyStatus
+ Wait Until Keyword Succeeds 3 min 5 sec VerifyPdpStatistics 1 1 0 0
Wait Until Keyword Succeeds 4 min 10 sec RunEventOnApexEngine
+ Wait Until Keyword Succeeds 3 min 5 sec VerifyPdpStatistics 1 1 1 1
*** Keywords ***
@@ -31,12 +35,10 @@ CreatePolicy
Log Creating session https://${POLICY_API_IP}:6969
${session}= Create Session policy https://${POLICY_API_IP}:6969 auth=${auth}
${headers}= Create Dictionary Accept=application/json Content-Type=application/json
- ${resp}= Post Request policy /policy/api/v1/policytypes/onap.policies.native.Apex/versions/1.0.0/policies data=${postjson} headers=${headers}
- Log Received response from policy4 ${resp.text}
- ${postjsonobject} To Json ${postjson}
+ ${resp}= POST On Session policy /policy/api/v1/policytypes/onap.policies.native.Apex/versions/1.0.0/policies data=${postjson} headers=${headers}
+ Log Received response from policy ${resp.text}
Should Be Equal As Strings ${resp.status_code} 200
Dictionary Should Contain Key ${resp.json()} tosca_definitions_version
- Dictionary Should Contain Key ${postjsonobject} tosca_definitions_version
DeployPolicy
[Documentation] Deploy the policy in apex-pdp engine
@@ -45,14 +47,53 @@ DeployPolicy
Log Creating session https://${POLICY_PAP_IP}:6969
${session}= Create Session policy https://${POLICY_PAP_IP}:6969 auth=${auth}
${headers}= Create Dictionary Accept=application/json Content-Type=application/json
- ${resp}= Post Request policy /policy/pap/v1/pdps/deployments/batch data=${postjson} headers=${headers}
- Log Received response from policy5 ${resp.text}
- ${postjsonobject} To Json ${postjson}
+ ${resp}= POST On Session policy /policy/pap/v1/pdps/deployments/batch data=${postjson} headers=${headers}
+ Log Received response from policy ${resp.text}
Should Be Equal As Strings ${resp.status_code} 202
+VerifyPolicyStatus
+ [Documentation] Verify policy deployment status
+ ${auth}= Create List healthcheck zb!XztG34
+ Log Creating session https://${POLICY_PAP_IP}:6969
+ ${session}= Create Session policy https://${POLICY_PAP_IP}:6969 auth=${auth}
+ ${headers}= Create Dictionary Accept=application/json Content-Type=application/json
+ ${resp}= GET On Session policy /policy/pap/v1/policies/status headers=${headers}
+ Log Received response from policy ${resp.text}
+ Should Be Equal As Strings ${resp.status_code} 200
+ Should Be Equal As Strings ${resp.json()[0]['pdpGroup']} defaultGroup
+ Should Be Equal As Strings ${resp.json()[0]['pdpType']} apex
+ Should Be Equal As Strings ${resp.json()[0]['pdpId']} policy-apex-pdp
+ Should Be Equal As Strings ${resp.json()[0]['policy']['name']} onap.policies.native.apex.Sampledomain
+ Should Be Equal As Strings ${resp.json()[0]['policy']['version']} 1.0.0
+ Should Be Equal As Strings ${resp.json()[0]['policyType']['name']} onap.policies.native.Apex
+ Should Be Equal As Strings ${resp.json()[0]['policyType']['version']} 1.0.0
+ Should Be Equal As Strings ${resp.json()[0]['deploy']} True
+ Should Be Equal As Strings ${resp.json()[0]['state']} SUCCESS
+
RunEventOnApexEngine
+ [Documentation] Send event to verify policy execution
Create Session apexSession http://${APEX_IP}:23324 max_retries=1
${data}= Get Binary File ${CURDIR}${/}data${/}event.json
&{headers}= Create Dictionary Content-Type=application/json Accept=application/json
- ${resp}= Put Request apexSession /apex/FirstConsumer/EventIn data=${data} headers=${headers}
+ ${resp}= PUT On Session apexSession /apex/FirstConsumer/EventIn data=${data} headers=${headers}
Should Be Equal As Strings ${resp.status_code} 200
+
+VerifyPdpStatistics
+ [Documentation] Verify pdp statistics after policy execution
+ [Arguments] ${deployCount} ${deploySuccessCount} ${executedCount} ${executedSuccessCount}
+ ${auth}= Create List healthcheck zb!XztG34
+ Log Creating session https://${POLICY_PAP_IP}:6969
+ ${session}= Create Session policy https://${POLICY_PAP_IP}:6969 auth=${auth}
+ ${headers}= Create Dictionary Accept=application/json Content-Type=application/json
+ ${resp}= GET On Session policy /policy/pap/v1/pdps/statistics/defaultGroup/apex/policy-apex-pdp params=recordCount=1 headers=${headers}
+ Log Received response from policy ${resp.text}
+ Should Be Equal As Strings ${resp.status_code} 200
+ Should Be Equal As Strings ${resp.json()['defaultGroup']['apex'][0]['pdpInstanceId']} policy-apex-pdp
+ Should Be Equal As Strings ${resp.json()['defaultGroup']['apex'][0]['pdpGroupName']} defaultGroup
+ Should Be Equal As Strings ${resp.json()['defaultGroup']['apex'][0]['pdpSubGroupName']} apex
+ Should Be Equal As Strings ${resp.json()['defaultGroup']['apex'][0]['policyDeployCount']} ${deployCount}
+ Should Be Equal As Strings ${resp.json()['defaultGroup']['apex'][0]['policyDeploySuccessCount']} ${deploySuccessCount}
+ Should Be Equal As Strings ${resp.json()['defaultGroup']['apex'][0]['policyDeployFailCount']} 0
+ Should Be Equal As Strings ${resp.json()['defaultGroup']['apex'][0]['policyExecutedCount']} ${executedCount}
+ Should Be Equal As Strings ${resp.json()['defaultGroup']['apex'][0]['policyExecutedSuccessCount']} ${executedSuccessCount}
+ Should Be Equal As Strings ${resp.json()['defaultGroup']['apex'][0]['policyExecutedFailCount']} 0