This version of script was tested on POD1 manualy 20/620/3
authorPeter Bandzi <pbandzi@cisco.com>
Thu, 21 May 2015 08:17:16 +0000 (10:17 +0200)
committerPeter Bandzi <pbandzi@cisco.com>
Thu, 21 May 2015 08:36:45 +0000 (10:36 +0200)
added execute permission to scripts + other fixes
need to be tested via jenkins also

JIRA: FUNCTEST-5

Change-Id: I7c6fc23c3610b7a5e2b22ca30f8ffebdd319983c
Signed-off-by: Peter Bandzi <pbandzi@cisco.com>
testcases/Controllers/ODL/CI/create_venv.sh [changed mode: 0644->0755]
testcases/Controllers/ODL/CI/custom_tests/neutron/040__delete_ports.txt [new file with mode: 0644]
testcases/Controllers/ODL/CI/custom_tests/neutron/050__delete_subnets.txt [new file with mode: 0644]
testcases/Controllers/ODL/CI/custom_tests/neutron/060__delete_networks.txt [new file with mode: 0644]
testcases/Controllers/ODL/CI/start_tests.sh [changed mode: 0644->0755]

old mode 100644 (file)
new mode 100755 (executable)
index 5d0733a..19d9b49
@@ -13,7 +13,7 @@ function venv_install() {
     elif command -v virtualenv; then
         virtualenv $1
     else
-        echo Please make sure virtualenv package is installed.
+        echo Cannot find virtualenv command.
         return 1
     fi
 }
diff --git a/testcases/Controllers/ODL/CI/custom_tests/neutron/040__delete_ports.txt b/testcases/Controllers/ODL/CI/custom_tests/neutron/040__delete_ports.txt
new file mode 100644 (file)
index 0000000..ec9d8c4
--- /dev/null
@@ -0,0 +1,37 @@
+*** Settings ***
+Documentation     Checking Port deleted in OpenStack are deleted also in OpenDaylight
+Suite Setup      Create Session    OSSession     http://${OPENSTACK}:9696    headers=${X-AUTH}
+Suite Teardown    Delete All Sessions
+Library           SSHLibrary
+Library           Collections
+Library           OperatingSystem
+Library           ../integration/test/csit/libraries/RequestsLibrary.py
+Library           ../integration/test/csit/libraries/Common.py
+Variables         ../integration/test/csit/variables/Variables.py
+
+*** Variables ***
+${ODLREST}       /controller/nb/v2/neutron/ports
+${OSREST}        /v2.0/ports/${PORTID}
+${data}       {"port":{"network_id":"${NETID}","admin_state_up": true}}
+
+*** Test Cases ***
+Delete New Port
+       [Documentation]    Delete previously created port in OpenStack
+       [Tags]             Delete port OpenStack Neutron
+        Log    ${data}
+        ${resp}                delete  OSSession       ${OSREST}
+        Should be Equal As Strings     ${resp.status_code}     204
+        Log    ${resp.content}
+        sleep    2
+
+Check Port Deleted
+       [Documentation]   Check port deleted in OpenDaylight
+       [Tags]          Check port deleted OpenDaylight
+        Create Session ODLSession      http://${CONTROLLER}:${PORT}     headers=${HEADERS}  auth=${AUTH}
+        ${resp}        get     ODLSession      ${ODLREST}
+       Should be Equal As Strings      ${resp.status_code}     200
+        ${ODLResult}   To Json         ${resp.content}
+        Set Suite Variable     ${ODLResult}
+        Log    ${ODLResult}
+       ${resp}         get     ODLSession      ${ODLREST}/${PORTID}
+        Should be Equal As Strings     ${resp.status_code}     404
diff --git a/testcases/Controllers/ODL/CI/custom_tests/neutron/050__delete_subnets.txt b/testcases/Controllers/ODL/CI/custom_tests/neutron/050__delete_subnets.txt
new file mode 100644 (file)
index 0000000..943fe31
--- /dev/null
@@ -0,0 +1,37 @@
+*** Settings ***
+Documentation     Checking Subnets deleted in OpenStack are deleted also in OpenDaylight
+Suite Setup      Create Session    OSSession     http://${OPENSTACK}:9696    headers=${X-AUTH}
+Suite Teardown    Delete All Sessions
+Library           SSHLibrary
+Library           Collections
+Library           OperatingSystem
+Library           ../integration/test/csit/libraries/RequestsLibrary.py
+Library           ../integration/test/csit/libraries/Common.py
+Variables         ../integration/test/csit/variables/Variables.py
+
+*** Variables ***
+${ODLREST}       /controller/nb/v2/neutron/subnets
+${OSREST}        /v2.0/subnets/${SUBNETID}
+${data}       {"subnet":{"network_id":"${NETID}","ip_version":4,"cidr":"172.16.64.0/24","allocation_pools":[{"start":"172.16.64.20","end":"172.16.64.120"}]}}
+
+*** Test Cases ***
+Delete New subnet
+       [Documentation]    Delete previously created subnet in OpenStack
+       [Tags]             Delete Subnet OpenStack Neutron
+        Log    ${data}
+        ${resp}                delete  OSSession       ${OSREST}
+        Should be Equal As Strings     ${resp.status_code}     204
+        Log    ${resp.content}
+        sleep    2
+
+Check New subnet deleted
+       [Documentation]   Check subnet deleted in OpenDaylight
+       [Tags]          Check subnet deleted OpenDaylight
+        Create Session ODLSession      http://${CONTROLLER}:${PORT}     headers=${HEADERS}  auth=${AUTH}
+        ${resp}        get     ODLSession      ${ODLREST}
+       Should be Equal As Strings      ${resp.status_code}     200
+        ${ODLResult}   To Json         ${resp.content}
+        Set Suite Variable     ${ODLResult}
+        Log    ${ODLResult}
+       ${resp}         get     ODLSession      ${ODLREST}/${SUBNETID}
+        Should be Equal As Strings     ${resp.status_code}     404
diff --git a/testcases/Controllers/ODL/CI/custom_tests/neutron/060__delete_networks.txt b/testcases/Controllers/ODL/CI/custom_tests/neutron/060__delete_networks.txt
new file mode 100644 (file)
index 0000000..f486af1
--- /dev/null
@@ -0,0 +1,37 @@
+*** Settings ***
+Documentation     Checking Network deleted in OpenStack are deleted also in OpenDaylight
+Suite Setup      Create Session    OSSession     http://${OPENSTACK}:9696    headers=${X-AUTH}
+Suite Teardown    Delete All Sessions
+Library           SSHLibrary
+Library           Collections
+Library           OperatingSystem
+Library           ../integration/test/csit/libraries/RequestsLibrary.py
+Library           ../integration/test/csit/libraries/Common.py
+Variables         ../integration/test/csit/variables/Variables.py
+
+*** Variables ***
+${ODLREST}       /controller/nb/v2/neutron/networks
+${OSREST}        /v2.0/networks/${NETID}
+${postNet}     {"network":{"name":"odl_network","admin_state_up":true}}
+
+*** Test Cases ***
+Delete Network
+       [Documentation]    Delete network in OpenStack
+       [Tags]             Delete Network OpenStack Neutron
+        Log    ${postNet}
+        ${resp}                delete  OSSession       ${OSREST}
+        Should be Equal As Strings     ${resp.status_code}     204
+        Log    ${resp.content}
+        sleep    2
+
+Check Network deleted
+       [Documentation]   Check Network deleted in OpenDaylight
+       [Tags]          Check  Network OpenDaylight
+        Create Session ODLSession      http://${CONTROLLER}:${PORT}     headers=${HEADERS}  auth=${AUTH}
+        ${resp}        get     ODLSession      ${ODLREST}
+       Should be Equal As Strings      ${resp.status_code}     200
+        ${ODLResult}   To Json         ${resp.content}
+        Set Suite Variable     ${ODLResult}
+        Log    ${ODLResult}
+       ${resp}         get     ODLSession      ${ODLREST}/${NetID}
+        Should be Equal As Strings     ${resp.status_code}     404
old mode 100644 (file)
new mode 100755 (executable)
index 367a075..c2e2c32
@@ -17,7 +17,7 @@ usage:
 
 where:
     -h     show this help text
-    var    one of the following: OSTACK_IP, ODL_PORT, USR_NAME, USR_PASSWORD
+    var    one of the following: ODL_IP, ODL_PORT, USR_NAME, PASS, NEUTRON_IP
     value  new value for var
 
 example:
@@ -38,10 +38,11 @@ done
 echo -e "${green}Current environment parameters for ODL suite.${nc}"
 # Following vars might be also specified as CLI params
 set -x
-OSTACK_IP=${OSTACK_IP:-'oscontrol'}
+ODL_IP=${ODL_IP:-'192.168.1.5'}
 ODL_PORT=${ODL_PORT:-8081}
-USR_NAME=${USR_NAME:-'admin'}
-USR_PASSWORD=${USR_PASSWORD:-'octopus'}
+USR_NAME=${USR_NAME:-'neutron'}
+PASS=${PASS:-'octopus'}
+NEUTRON_IP=${NEUTRON_IP:-192.168.0.68}
 set +x
 
 echo -e "${green}Cloning ODL integration git repo.${nc}"
@@ -55,7 +56,7 @@ else
 fi
 
 # Change openstack password for admin tenant in neutron suite
-sed -i "s/\"password\": \"admin\"/\"password\": \"${USR_PASSWORD}\"/" integration/test/csit/suites/openstack/neutron/__init__.robot
+sed -i "s/\"password\": \"admin\"/\"password\": \"${PASS}\"/" integration/test/csit/suites/openstack/neutron/__init__.robot
 
 if source $BASEDIR/venv/bin/activate; then
     echo -e "${green}Python virtualenv activated.${nc}"
@@ -64,6 +65,10 @@ else
     exit 1
 fi
 
+# add custom tests to suite, if there are more custom tests needed this will be reworked
+echo -e "${green}Copy custom tests to suite.${nc}"
+cp -vf $BASEDIR/custom_tests/neutron/* $BASEDIR/integration/test/csit/suites/openstack/neutron/
+
 # List of tests are specified in test_list.txt
 # those are relative paths to test directories from integartion suite
 echo -e "${green}Executing chosen tests.${nc}"
@@ -76,7 +81,7 @@ do
     [[ -z "${line}" ]] && continue
 
     echo -e "${light_green}Starting test: $line ${nc}"
-    pybot -v OPENSTACK:${OSTACK_IP} -v PORT:${ODL_PORT} -v CONTROLLER:${OSTACK_IP} $line
+    pybot -v OPENSTACK:${NEUTRON_IP} -v PORT:${ODL_PORT} -v CONTROLLER:${ODL_IP} $line
     mkdir -p $BASEDIR/logs/${test_num}
     mv log.html $BASEDIR/logs/${test_num}/
     mv report.html $BASEDIR/logs/${test_num}/