Add scripts for CSIT NBI 69/43269/1
authorEric Debeau <eric.debeau@orange.com>
Tue, 17 Apr 2018 07:11:57 +0000 (07:11 +0000)
committerEric Debeau <eric.debeau@orange.com>
Tue, 17 Apr 2018 07:15:28 +0000 (07:15 +0000)
Create directory test/csit/tests/externalapi-nbi
Create setup.sh, teardown.sh scripts
Create testplan.txt
Create directory test/csit/plans/externalapi-nbi
Create heathcheck.robot

Change-Id: I485e739bca48aecb62ed9b1b1e5fd910775735a8
Issue-ID: EXTAPI-76
Signed-off-by: Eric Debeau <eric.debeau@orange.com>
test/csit/plans/externalapi-nbi/healthcheck/setup.sh [new file with mode: 0644]
test/csit/plans/externalapi-nbi/healthcheck/teardown.sh [new file with mode: 0644]
test/csit/plans/externalapi-nbi/healthcheck/testplan.txt [new file with mode: 0644]
test/csit/tests/externalapi-nbi/healthcheck/__init__.robot [new file with mode: 0644]
test/csit/tests/externalapi-nbi/healthcheck/healthcheck.robot [new file with mode: 0644]

diff --git a/test/csit/plans/externalapi-nbi/healthcheck/setup.sh b/test/csit/plans/externalapi-nbi/healthcheck/setup.sh
new file mode 100644 (file)
index 0000000..50da7ad
--- /dev/null
@@ -0,0 +1,17 @@
+#!/bin/bash
+# ========================================================================
+# Copyright (c) 2018 Orange
+# 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.
+# ========================================================================
+
+source ${WORKSPACE}/test/csit/scripts/externalapi-nbi/start_nbi_containers.sh
diff --git a/test/csit/plans/externalapi-nbi/healthcheck/teardown.sh b/test/csit/plans/externalapi-nbi/healthcheck/teardown.sh
new file mode 100644 (file)
index 0000000..8392972
--- /dev/null
@@ -0,0 +1,17 @@
+#!/bin/bash
+# ========================================================================
+# Copyright (c) 2018 Orange
+# 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.
+# ========================================================================
+
+source ${WORKSPACE}/test/csit/scripts/externalapi-nbi/delete_nbi_containers.sh
\ No newline at end of file
diff --git a/test/csit/plans/externalapi-nbi/healthcheck/testplan.txt b/test/csit/plans/externalapi-nbi/healthcheck/testplan.txt
new file mode 100644 (file)
index 0000000..06622ae
--- /dev/null
@@ -0,0 +1,3 @@
+# Test suites are relative paths under [integration.git]/test/csit/tests/.
+# Place the suites in run order.
+externalapi-nbi/healthcheck
diff --git a/test/csit/tests/externalapi-nbi/healthcheck/__init__.robot b/test/csit/tests/externalapi-nbi/healthcheck/__init__.robot
new file mode 100644 (file)
index 0000000..8263507
--- /dev/null
@@ -0,0 +1,2 @@
+*** Settings ***
+Documentation    ExternalAPI-NBI - healthcheck
diff --git a/test/csit/tests/externalapi-nbi/healthcheck/healthcheck.robot b/test/csit/tests/externalapi-nbi/healthcheck/healthcheck.robot
new file mode 100644 (file)
index 0000000..eb5a5bb
--- /dev/null
@@ -0,0 +1,29 @@
+*** Settings ***
+Documentation     The main interface for interacting with External API/NBI
+Library           RequestsLibrary
+
+*** Variables ***
+${GLOBAL_NBI_SERVER_PROTOCOL}   http
+${GLOBAL_INJECTED_NBI_IP_ADDR}  localhost
+${GLOBAL_NBI_SERVER_PORT}       8080
+${NBI_HEALTH_CHECK_PATH}        /nbi/api/v1/status
+${NBI_ENDPOINT}                 ${GLOBAL_NBI_SERVER_PROTOCOL}://${GLOBAL_INJECTED_NBI_IP_ADDR}:${GLOBAL_NBI_SERVER_PORT}
+
+
+*** Keywords ***
+Run NBI Health Check
+     [Documentation]    Runs NBI Health check
+     ${resp}=    Run NBI Get Request    ${NBI_HEALTH_CHECK_PATH}
+     Should Be Equal As Integers   ${resp.status_code}   200
+
+Run NBI Get Request
+     [Documentation]    Runs NBI Get request
+     [Arguments]    ${data_path}
+     ${session}=    Create Session   session   ${NBI_ENDPOINT}
+     ${resp}=   Get Request   session   ${data_path}
+     Should Be Equal As Integers   ${resp.status_code}   200
+     Log    Received response from NBI ${resp.text}
+     ${json}=    Set Variable    ${resp.json()}
+     ${status}=    Get From Dictionary    ${json}   status
+     Should Be Equal  ${status}    ok
+     [Return]    ${resp}
\ No newline at end of file