From 88f4d47cb52fdf3896241bd6e0eead105b24efea Mon Sep 17 00:00:00 2001 From: Michael Mokry Date: Mon, 4 Mar 2019 12:00:05 -0600 Subject: [PATCH] CSIT tests for PDPX Healthcheck/Statisitcs - Added csit setup and teardown scripts - Added test plan - Added xacml pdp test robot script - Modified api test with correct path Change-Id: I8844f8c75f5c39877410d406b064df7ba6049e1a Issue-ID: POLICY-1436 Signed-off-by: Michael Mokry --- plans/policy/xacml-pdp/setup.sh | 32 +++++++++++++++++++++++++++++ plans/policy/xacml-pdp/teardown.sh | 20 ++++++++++++++++++ plans/policy/xacml-pdp/testplan.txt | 3 +++ tests/policy/api/api-test.robot | 4 ++-- tests/policy/xacml-pdp/xacml-pdp-test.robot | 28 +++++++++++++++++++++++++ 5 files changed, 85 insertions(+), 2 deletions(-) create mode 100644 plans/policy/xacml-pdp/setup.sh create mode 100644 plans/policy/xacml-pdp/teardown.sh create mode 100644 plans/policy/xacml-pdp/testplan.txt create mode 100644 tests/policy/xacml-pdp/xacml-pdp-test.robot diff --git a/plans/policy/xacml-pdp/setup.sh b/plans/policy/xacml-pdp/setup.sh new file mode 100644 index 00000000..e7882822 --- /dev/null +++ b/plans/policy/xacml-pdp/setup.sh @@ -0,0 +1,32 @@ +#!/bin/bash +# ============LICENSE_START======================================================= +# Copyright (C) 2019 AT&T Intellectual Property. All rights reserved. +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# ============LICENSE_END========================================================= + +docker run -d --name policy-xacml-pdp -p 6969:6969 -it nexus3.onap.org:10001/onap/policy-xacml-pdp:2.0.0-SNAPSHOT-latest +docker ps -a +sleep 5 +POLICY_PDPX_IP=`get-instance-ip.sh policy-xacml-pdp` +echo PDP-X IP IS ${POLICY_PDPX_IP} +# Wait for initialization +for i in {1..10}; do + curl -sS ${POLICY_PDPX_IP}:6969 && break + echo sleep $i + sleep $i +done + +ROBOT_VARIABLES="-v POLICY_PDPX_IP:${POLICY_PDPX_IP}" diff --git a/plans/policy/xacml-pdp/teardown.sh b/plans/policy/xacml-pdp/teardown.sh new file mode 100644 index 00000000..a81ee6b1 --- /dev/null +++ b/plans/policy/xacml-pdp/teardown.sh @@ -0,0 +1,20 @@ +#!/bin/bash +# ============LICENSE_START======================================================= +# Copyright (C) 2019 AT&T Intellectual Property. All rights reserved. +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# ============LICENSE_END========================================================= + +kill-instance.sh policy-xacml-pdp diff --git a/plans/policy/xacml-pdp/testplan.txt b/plans/policy/xacml-pdp/testplan.txt new file mode 100644 index 00000000..2b641dfd --- /dev/null +++ b/plans/policy/xacml-pdp/testplan.txt @@ -0,0 +1,3 @@ +# Test suites are relative paths under [integration/csit.git]/tests/. +# Place the suites in run order. +policy/xacml-pdp/xacml-pdp-test.robot diff --git a/tests/policy/api/api-test.robot b/tests/policy/api/api-test.robot index 7ea24738..bf2c12b7 100644 --- a/tests/policy/api/api-test.robot +++ b/tests/policy/api/api-test.robot @@ -11,7 +11,7 @@ Healthcheck 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}= Get Request policy /healthcheck headers=${headers} + ${resp}= Get Request policy /policy/api/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 @@ -22,7 +22,7 @@ Statistics 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}= Get Request policy /statistics headers=${headers} + ${resp}= Get Request policy /policy/api/v1/statistics 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 diff --git a/tests/policy/xacml-pdp/xacml-pdp-test.robot b/tests/policy/xacml-pdp/xacml-pdp-test.robot new file mode 100644 index 00000000..075e545d --- /dev/null +++ b/tests/policy/xacml-pdp/xacml-pdp-test.robot @@ -0,0 +1,28 @@ +*** Settings *** +Library Collections +Library RequestsLibrary +Library OperatingSystem +Library json + +*** Test Cases *** +Healthcheck + [Documentation] Runs Policy Xacml PDP Health check + ${auth}= Create List healthcheck zb!XztG34 + Log Creating session http://${POLICY_PDPX_IP}:6969 + ${session}= Create Session policy http://${POLICY_PDPX_IP}:6969 auth=${auth} + ${headers}= Create Dictionary Accept=application/json Content-Type=application/json + ${resp}= Get Request policy /policy/pdpx/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 + +Statistics + [Documentation] Runs Policy Xacml PDP Statistics + ${auth}= Create List healthcheck zb!XztG34 + Log Creating session http://${POLICY_PDPX_IP}:6969 + ${session}= Create Session policy http://${POLICY_PDPX_IP}:6969 auth=${auth} + ${headers}= Create Dictionary Accept=application/json Content-Type=application/json + ${resp}= Get Request policy /policy/pdpx/v1/statistics 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 -- 2.16.6