From d4c5185856445e873485c6ae0b7e660ef47ae635 Mon Sep 17 00:00:00 2001 From: Chenfei Gao Date: Wed, 6 Feb 2019 20:45:10 -0500 Subject: [PATCH] Add csit test plans for policy-api Includes: 1) Added setup, teardown scripts and test plan 2) Added test robot including test cases Issue-ID: POLICY-1270 Change-Id: Id4fe5527609d9e13906d02bccc4ae8bc7c364bd9 Signed-off-by: Chenfei Gao --- plans/policy/api/setup.sh | 31 +++++++++++++++++++++++++++++++ plans/policy/api/teardown.sh | 20 ++++++++++++++++++++ plans/policy/api/testplan.txt | 3 +++ tests/policy/api/api-test.robot | 28 ++++++++++++++++++++++++++++ 4 files changed, 82 insertions(+) create mode 100644 plans/policy/api/setup.sh create mode 100644 plans/policy/api/teardown.sh create mode 100644 plans/policy/api/testplan.txt create mode 100644 tests/policy/api/api-test.robot diff --git a/plans/policy/api/setup.sh b/plans/policy/api/setup.sh new file mode 100644 index 00000000..dcfcb9ea --- /dev/null +++ b/plans/policy/api/setup.sh @@ -0,0 +1,31 @@ +#!/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-api -p 6969:6969 -it nexus3.onap.org:10001/onap/policy-api:2.0.0-SNAPSHOT-latest + +POLICY_API_IP=`get-instance-ip.sh policy-api` +echo API IP IS ${POLICY_API_IP} +Wait for initialization +for i in {1..10}; do + curl -sS ${POLICY_API_IP}:6969 && break + echo sleep $i + sleep $i +done + +ROBOT_VARIABLES="-v POLICY_API_IP:${POLICY_API_IP}" \ No newline at end of file diff --git a/plans/policy/api/teardown.sh b/plans/policy/api/teardown.sh new file mode 100644 index 00000000..8683dedd --- /dev/null +++ b/plans/policy/api/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-api diff --git a/plans/policy/api/testplan.txt b/plans/policy/api/testplan.txt new file mode 100644 index 00000000..1bfec142 --- /dev/null +++ b/plans/policy/api/testplan.txt @@ -0,0 +1,3 @@ +# Test suites are relative paths under [integration/csit.git]/tests/. +# Place the suites in run order. +policy/api/api-test.robot diff --git a/tests/policy/api/api-test.robot b/tests/policy/api/api-test.robot new file mode 100644 index 00000000..3753b3d8 --- /dev/null +++ b/tests/policy/api/api-test.robot @@ -0,0 +1,28 @@ +*** Settings *** +Library Collections +Library RequestsLibrary +Library OperatingSystem +Library json + +*** Test Cases *** +Healthcheck + [Documentation] Runs Policy Api Health check + ${auth}= Create List healthcheck zb!XztG34 + Log Creating session http://${POLICY_API_IP}:6969 + ${session}= Create Session policy http://${POLICY_API_IP}:6969 auth=${auth} + ${headers}= Create Dictionary Accept=application/json Content-Type=application/json + ${resp}= Get Request policy /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 Api Statistics + ${auth}= Create List healthcheck zb!XztG34 + Log Creating session http://${POLICY_API_IP}:6969 + ${session}= Create Session policy http://${POLICY_API_IP}:6969 auth=${auth} + ${headers}= Create Dictionary Accept=application/json Content-Type=application/json + ${resp}= Get Request policy /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 \ No newline at end of file -- 2.16.6