diff options
Diffstat (limited to 'csit/resources/tests/distribution-test.robot')
-rw-r--r-- | csit/resources/tests/distribution-test.robot | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/csit/resources/tests/distribution-test.robot b/csit/resources/tests/distribution-test.robot new file mode 100644 index 00000000..b79b362b --- /dev/null +++ b/csit/resources/tests/distribution-test.robot @@ -0,0 +1,58 @@ +*** Settings *** +Library Collections +Library RequestsLibrary +Library OperatingSystem +Library json +Resource ${CURDIR}/common-library.robot + +*** Test Cases *** + +Healthcheck + [Documentation] Verify policy distribution health check + ${hcauth}= HealthCheckAuth + ${resp}= PerformGetRequest ${DISTRIBUTION_IP} /healthcheck 200 null ${hcauth} + Should Be Equal As Strings ${resp.json()['code']} 200 + +Statistics + [Documentation] Verify policy distribution statistics + ${hcauth}= HealthCheckAuth + ${resp}= PerformGetRequest ${DISTRIBUTION_IP} /statistics 200 null ${hcauth} + Should Be Equal As Strings ${resp.json()['code']} 200 + +Metrics + [Documentation] Verify policy-distribution is exporting prometheus metrics + ${hcauth}= HealthCheckAuth + ${resp}= PerformGetRequest ${DISTRIBUTION_IP} /metrics 200 null ${hcauth} + Should Contain ${resp.text} total_distribution_received_count_total 0.0 + Should Contain ${resp.text} distribution_success_count_total 0.0 + Should Contain ${resp.text} distribution_failure_count_total 0.0 + Should Contain ${resp.text} total_download_received_count_total 0.0 + Should Contain ${resp.text} download_success_count_total 0.0 + Should Contain ${resp.text} download_failure_count_total 0.0 + +InvokeDistributionAndRunEventOnEngine + Wait Until Keyword Succeeds 5 min 30 sec InvokeDistributionUsingFile And RunEventOnApexEngine + +MetricsAfterExecution + [Documentation] Verify policy-distribution is exporting prometheus metrics after execution + ${hcauth}= HealthCheckAuth + ${resp}= PerformGetRequest ${DISTRIBUTION_IP} /metrics 200 null ${hcauth} + Should Contain ${resp.text} total_distribution_received_count_total 1.0 + Should Contain ${resp.text} distribution_success_count_total 1.0 + Should Contain ${resp.text} distribution_failure_count_total 0.0 + Should Contain ${resp.text} total_download_received_count_total 1.0 + Should Contain ${resp.text} download_success_count_total 1.0 + Should Contain ${resp.text} download_failure_count_total 0.0 + +*** Keywords *** + +InvokeDistributionUsingFile And RunEventOnApexEngine + Copy File ${CURDIR}/data/csar/csar_temp.csar ${CURDIR}/data/csar/temp.csar + Move File ${CURDIR}/data/csar/temp.csar ${TEMP_FOLDER}/sample_csar_with_apex_policy.csar + Sleep 20 seconds "Waiting for the Policy Distribution to call Policy API and PAP" + Create Session apexSession http://${APEX_EVENTS_IP} max_retries=1 + ${data}= Get Binary File ${CURDIR}/data/event.json + &{headers}= Create Dictionary Content-Type=application/json Accept=application/json + ${resp}= PUT On Session apexSession /apex/FirstConsumer/EventIn data=${data} headers=${headers} expected_status=200 + Remove Files ${CURDIR}/data/temp/sample_csar_with_apex_policy.csar + Remove Files ${CURDIR}/data/csar/csar_temp.csar |