From 7d80c38635b4cf7ec0d517a95c63772c4c9aface Mon Sep 17 00:00:00 2001 From: "a.sreekumar" Date: Tue, 7 May 2019 13:36:39 +0000 Subject: Adding end to end CSIT test cases for PDP-A 1) Adding test case to do health check of PDP-A. 2) Adding test case for end to end testing - create policy type and policy using Policy API, deploy policy using PAP API and then execute policy in APEX engine. Change-Id: I97b208f4d7c319f993515719795d022ddfc429fa Issue-ID: POLICY-1739 Signed-off-by: a.sreekumar --- tests/policy/apex-pdp/apex-pdp-test.robot | 63 ++++++++++++++++++++++++++++++- 1 file changed, 61 insertions(+), 2 deletions(-) (limited to 'tests/policy/apex-pdp/apex-pdp-test.robot') diff --git a/tests/policy/apex-pdp/apex-pdp-test.robot b/tests/policy/apex-pdp/apex-pdp-test.robot index f1dea17d..dcdf2d80 100644 --- a/tests/policy/apex-pdp/apex-pdp-test.robot +++ b/tests/policy/apex-pdp/apex-pdp-test.robot @@ -6,8 +6,67 @@ Library json *** Test Cases *** -Call Apex Policy - Create Session apexSession http://${APEX_IP}:23324 max_retries=3 +Healthcheck + [Documentation] Runs Apex PDP Health check + ${auth}= Create List healthcheck zb!XztG34 + 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} + 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 CreateOperationalPolicyType + Wait Until Keyword Succeeds 2 min 5 sec CreateNewOperationalPolicy + Wait Until Keyword Succeeds 2 min 5 sec DeployOperationalPolicy + Wait Until Keyword Succeeds 4 min 10 sec RunEventOnApexEngine + +*** Keywords *** + +CreateOperationalPolicyType + [Documentation] Create Operational Policy Type + ${auth}= Create List healthcheck zb!XztG34 + ${postjson}= Get file ${CURDIR}/data/onap.policies.controlloop.operational.Apex.json + 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 data=${postjson} headers=${headers} + Log Received response from policy2 ${resp.text} + Should Be Equal As Strings ${resp.status_code} 200 + ${postjsonobject} To Json ${postjson} + Dictionary Should Contain Key ${resp.json()} tosca_definitions_version + Dictionary Should Contain Key ${postjsonobject} tosca_definitions_version + +CreateNewOperationalPolicy + [Documentation] Create a new Operational Apex policy + ${auth}= Create List healthcheck zb!XztG34 + ${postjson}= Get file ${CURDIR}/data/onap.policies.controlloop.operational.Apex.tosca.json + 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.controlloop.operational.Apex/versions/1.0.0/policies data=${postjson} headers=${headers} + Log Received response from policy4 ${resp.text} + ${postjsonobject} To Json ${postjson} + 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 + +DeployOperationalPolicy + [Documentation] Make the PAP to initiate a PDP_UPDATE with policies + ${auth}= Create List healthcheck zb!XztG34 + ${postjson}= Get file ${CURDIR}/data/pdp_update.json + 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 data=${postjson} headers=${headers} + Log Received response from policy5 ${resp.text} + ${postjsonobject} To Json ${postjson} + Should Be Equal As Strings ${resp.status_code} 200 + +RunEventOnApexEngine + 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} -- cgit 1.2.3-korg