From c50eedec11116eacd49e41b15b58cd5615861c24 Mon Sep 17 00:00:00 2001 From: Ethan Lynn Date: Wed, 9 Aug 2017 15:39:29 +0800 Subject: Add CSIT test for MultiCloud Add sanity test for MultiCloud broker Change-Id: I635411b447158ec0e1dcf276abd09aad37d22e43 Signed-off-by: Ethan Lynn --- test/csit/plans/multivim/functionality1/setup.sh | 34 ++++++++++++++++++++++ .../csit/plans/multivim/functionality1/teardown.sh | 20 +++++++++++++ .../plans/multivim/functionality1/testplan.txt | 3 ++ .../multivim/provision/sanity_test_multivim.robot | 26 +++++++++++++++++ 4 files changed, 83 insertions(+) create mode 100755 test/csit/plans/multivim/functionality1/setup.sh create mode 100755 test/csit/plans/multivim/functionality1/teardown.sh create mode 100644 test/csit/plans/multivim/functionality1/testplan.txt create mode 100644 test/csit/tests/multivim/provision/sanity_test_multivim.robot diff --git a/test/csit/plans/multivim/functionality1/setup.sh b/test/csit/plans/multivim/functionality1/setup.sh new file mode 100755 index 000000000..df8113f34 --- /dev/null +++ b/test/csit/plans/multivim/functionality1/setup.sh @@ -0,0 +1,34 @@ +#!/bin/bash +# +# Copyright 2016-2017 Huawei Technologies Co., Ltd. +# +# 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. +# +# Place the scripts in run order: +# Start all process required for executing test case + +source ${SCRIPTS}/common_functions.sh + +# start multivim-broker +run-instance.sh openoint/multivim-broker multivim-broker " -i -t -e MSB_ADDR=${MSB_IP}:80" +extsys_ip=`get-instance-ip.sh multivim-broker` +sleep_msg="Waiting_for_multivim-broker" +curl_path='http://'${MSB_IP}':80/openoapi/multivim/v1/swagger.json' +wait_curl_driver CURL_COMMAND=$curl_path WAIT_MESSAGE='"$sleep_msg"' REPEAT_NUMBER=25 GREP_STRING="swagger" + +echo SCRIPTS +# Pass any variables required by Robot test suites in ROBOT_VARIABLES +ROBOT_VARIABLES="-v MSB_IP:${MSB_IP} -v SCRIPTS:${SCRIPTS}" + + + diff --git a/test/csit/plans/multivim/functionality1/teardown.sh b/test/csit/plans/multivim/functionality1/teardown.sh new file mode 100755 index 000000000..4ca6dbc99 --- /dev/null +++ b/test/csit/plans/multivim/functionality1/teardown.sh @@ -0,0 +1,20 @@ +#!/bin/bash +# +# Copyright 2016-2017 Huawei Technologies Co., Ltd. +# +# 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. +# + +# This script is sourced by run-csit.sh after Robot test completion. +kill-instance.sh i-msb +kill-instance.sh multivim-broker diff --git a/test/csit/plans/multivim/functionality1/testplan.txt b/test/csit/plans/multivim/functionality1/testplan.txt new file mode 100644 index 000000000..5319166de --- /dev/null +++ b/test/csit/plans/multivim/functionality1/testplan.txt @@ -0,0 +1,3 @@ +# Test suites are relative paths under [integration.git]/test/csit/tests/. +# Place the suites in run order. +multivim/provision/sanity_test_multivim.robot diff --git a/test/csit/tests/multivim/provision/sanity_test_multivim.robot b/test/csit/tests/multivim/provision/sanity_test_multivim.robot new file mode 100644 index 000000000..4d9cabfff --- /dev/null +++ b/test/csit/tests/multivim/provision/sanity_test_multivim.robot @@ -0,0 +1,26 @@ +*** settings *** +Resource ../../common.robot +Library Collections +Library RequestsLibrary +Library OperatingSystem +Library json +Library HttpLibrary.HTTP + +*** Variables *** +@{return_ok_list}= 200 201 202 +${queryswagger_broker_url} /openoapi/multivim/v1/swagger.json +${queryswagger_kilo_url} /openoapi/multivim-kilo/v1/swagger.json +${queryswagger_newton_url} /openoapi/multivim-newton/v1/swagger.json + + +*** Test Cases *** +BrokerSwaggerTest + [Documentation] query swagger info rest test + ${headers} Create Dictionary Content-Type=application/json Accept=application/json + Create Session web_session http://${MSB_IP} headers=${headers} + ${resp}= Get Request web_session ${queryswagger_broker_url} + ${responese_code}= Convert To String ${resp.status_code} + List Should Contain Value ${return_ok_list} ${responese_code} + ${response_json} json.loads ${resp.content} + ${swagger_version}= Convert To String ${response_json['swagger']} + Should Be Equal ${swagger_version} 2.0 -- cgit 1.2.3-korg