summaryrefslogtreecommitdiffstats
path: root/kud/tests/_functions.sh
diff options
context:
space:
mode:
authorBin Yang <bin.yang@windriver.com>2019-07-16 00:51:44 +0000
committerGerrit Code Review <gerrit@onap.org>2019-07-16 00:51:44 +0000
commit70f54e61d7081507760a8d876e13b2088f9ff58f (patch)
treec6547a91bd38421382ac038aafd7cc44481ae36a /kud/tests/_functions.sh
parent6b7b2dccf5821386a19555fb1301ffdb69954843 (diff)
parentc64b7f1c913310782f3b767fd116e506efe269d8 (diff)
Merge changes Id235f454,I0c6dd5e4
* changes: Correct plugin_edgex testcase Provide wrapper functions for issuing k8splugin API calls
Diffstat (limited to 'kud/tests/_functions.sh')
-rwxr-xr-xkud/tests/_functions.sh38
1 files changed, 38 insertions, 0 deletions
diff --git a/kud/tests/_functions.sh b/kud/tests/_functions.sh
index a885bc50..483aed5c 100755
--- a/kud/tests/_functions.sh
+++ b/kud/tests/_functions.sh
@@ -33,6 +33,44 @@ function get_ovn_central_address {
echo "$(echo ${ansible_ifconfig#*>>} | tr '\n' ':')6641"
}
+function call_api {
+ #Runs curl with passed flags and provides
+ #additional error handling and debug information
+
+ #Function outputs server response body
+ #and performs validation of http_code
+
+ local status
+ local curl_response_file="$(mktemp -p /tmp)"
+ local curl_common_flags=(-s -w "%{http_code}" -o "${curl_response_file}")
+ local command=(curl "${curl_common_flags[@]}" "$@")
+
+ echo "[INFO] Running '${command[@]}'" >&2
+ if ! status="$("${command[@]}")"; then
+ echo "[ERROR] Internal curl error! '$status'" >&2
+ cat "${curl_response_file}"
+ rm "${curl_response_file}"
+ return 2
+ else
+ echo "[INFO] Server replied with status: ${status}" >&2
+ cat "${curl_response_file}"
+ rm "${curl_response_file}"
+ if [[ "${status:0:1}" =~ [45] ]]; then
+ return 1
+ else
+ return 0
+ fi
+ fi
+}
+
+function delete_resource {
+ #Issues DELETE http call to provided endpoint
+ #and further validates by following GET request
+
+ call_api -X DELETE "$1"
+ ! call_api -X GET "$1" >/dev/null
+}
+
# init_network() - This function creates the OVN resouces required by the test
function init_network {
local fname=$1