diff options
Diffstat (limited to 'test')
33 files changed, 899 insertions, 387 deletions
diff --git a/test/csit/plans/policy/health/setup.sh b/test/csit/plans/policy/health/setup.sh index bfea1ac1c..21f58eb66 100755 --- a/test/csit/plans/policy/health/setup.sh +++ b/test/csit/plans/policy/health/setup.sh @@ -34,8 +34,6 @@ ${WORKSPACE}/test/csit/scripts/policy/mock-hello.sh ${MOCK_IP} source ${WORKSPACE}/test/csit/scripts/policy/script1.sh -sleep 3m - # Pass any variables required by Robot test suites in ROBOT_VARIABLES ROBOT_VARIABLES="-v MOCK_IP:${MOCK_IP} -v IP:${IP} -v POLICY_IP:${POLICY_IP} -v PDP_IP:${PDP_IP} -v DOCKER_IP:${DOCKER_IP}" export PDP_IP=${PDP_IP} @@ -44,4 +42,4 @@ export DOCKER_IP=${DOCKER_IP} #Get current IP of VM HOST_IP=$(ip route get 8.8.8.8 | awk '/8.8.8.8/ {print $NF}') -export HOST_IP=${HOST_IP}
\ No newline at end of file +export HOST_IP=${HOST_IP} diff --git a/test/csit/plans/policy/health/teardown.sh b/test/csit/plans/policy/health/teardown.sh index f79e75d89..f1f0b21ce 100755 --- a/test/csit/plans/policy/health/teardown.sh +++ b/test/csit/plans/policy/health/teardown.sh @@ -34,4 +34,3 @@ kill_instance mariadb rm -fr "${WORK_DIR}" - diff --git a/test/csit/plans/portal-sdk/testsuite/.env b/test/csit/plans/portal-sdk/testsuite/.env index 1e882a0b3..0b7de9560 100644 --- a/test/csit/plans/portal-sdk/testsuite/.env +++ b/test/csit/plans/portal-sdk/testsuite/.env @@ -20,3 +20,14 @@ PORTAL_TAG=1.3.0 DOCKER_IMAGE_VERSION=1.3-STAGING-latest CLI_DOCKER_VERSION=1.1-STAGING-latest NEXUS_DOCKER_REPO=nexus3.onap.org:10003 + + +# Optional settings with no defaults. +EXTRA_HOST_IP="" +EXTRA_HOST_NAME="" +# Export shell environment variables on hosts with no DNS; +# a line is added to docker container's /etc/hosts. +# For example: +#EXTRA_HOST_IP="-i ${HOST_IP}" +#EXTRA_HOST_NAME="-n portal.api.simpledemo.openecomp.org" + diff --git a/test/csit/plans/portal-sdk/testsuite/docker-compose.yml b/test/csit/plans/portal-sdk/testsuite/docker-compose.yml index b92766f5b..7a9fb8caa 100644 --- a/test/csit/plans/portal-sdk/testsuite/docker-compose.yml +++ b/test/csit/plans/portal-sdk/testsuite/docker-compose.yml @@ -91,5 +91,8 @@ services: - portal-db:3306 - -- - /start-apps-cmd.sh + # see comments in .env file + - $EXTRA_HOST_IP + - $EXTRA_HOST_NAME logging: driver: json-file diff --git a/test/csit/plans/portal-sdk/testsuite/setup.sh b/test/csit/plans/portal-sdk/testsuite/setup.sh index 71d110521..2091d14e0 100644 --- a/test/csit/plans/portal-sdk/testsuite/setup.sh +++ b/test/csit/plans/portal-sdk/testsuite/setup.sh @@ -14,6 +14,8 @@ XVFBPID=$! HOST_IP=$(ip route get 8.8.8.8 | awk '/8.8.8.8/ {print $NF}') export HOST_IP=${HOST_IP} + + if ! ifconfig docker0; then if ! ifconfig ens3; then echo "Could not determine IP address" @@ -33,6 +35,8 @@ ROBOT_VARIABLES="-v MOCK_IP:${MOCK_IP} -v IP:${IP} -v DOCKER_IP:${DOCKER_IP}" export DOCKER_IP=${DOCKER_IP} + + # be verbose set -x @@ -54,16 +58,22 @@ rm .env rm docker-compose.yml cp $CURR/.env . cp $CURR/docker-compose.yml . -#cd properties_rackspace/ECOMPPORTALAPP +#cd properties_simpledemo/ECOMPPORTALAPP #rm system.properties #cp $CURR/system.properties . #cd ../.. # Get image names used below from docker-compose environment file source $CURR/.env +#source .env + +# Make inter-app communication work in CSIT +export EXTRA_HOST_IP="-i ${HOST_IP}" +export EXTRA_HOST_NAME="-n portal.api.simpledemo.openecomp.org" + # Copy property files to new directory mkdir -p $PROPS_DIR -cp -r properties_rackspace/* $PROPS_DIR +cp -r properties_simpledemo/* $PROPS_DIR # Also create logs directory mkdir -p $LOGS_DIR @@ -118,6 +128,8 @@ echo "Adding new hosts entry." echo "$host_entry" | sudo tee -a /etc/hosts > /dev/null fi + + sleep 3m # WAIT 5 minutes maximum and test every 5 seconds if Portal up using HealthCheck API @@ -157,7 +169,7 @@ fi HOST_IP=$(ip route get 8.8.8.8 | awk '/8.8.8.8/ {print $NF}') export HOST_IP=${HOST_IP} -docker logs deliveries_portal-db_1 +#docker logs deliveries_portal-db_1 docker logs deliveries_portal-apps_1 docker logs deliveries_portal-wms_1 diff --git a/test/csit/plans/portal/testsuite/.env b/test/csit/plans/portal/testsuite/.env index 1e882a0b3..0b7de9560 100644 --- a/test/csit/plans/portal/testsuite/.env +++ b/test/csit/plans/portal/testsuite/.env @@ -20,3 +20,14 @@ PORTAL_TAG=1.3.0 DOCKER_IMAGE_VERSION=1.3-STAGING-latest CLI_DOCKER_VERSION=1.1-STAGING-latest NEXUS_DOCKER_REPO=nexus3.onap.org:10003 + + +# Optional settings with no defaults. +EXTRA_HOST_IP="" +EXTRA_HOST_NAME="" +# Export shell environment variables on hosts with no DNS; +# a line is added to docker container's /etc/hosts. +# For example: +#EXTRA_HOST_IP="-i ${HOST_IP}" +#EXTRA_HOST_NAME="-n portal.api.simpledemo.openecomp.org" + diff --git a/test/csit/plans/portal/testsuite/docker-compose.yml b/test/csit/plans/portal/testsuite/docker-compose.yml index f40a106e9..7a9fb8caa 100644 --- a/test/csit/plans/portal/testsuite/docker-compose.yml +++ b/test/csit/plans/portal/testsuite/docker-compose.yml @@ -13,10 +13,9 @@ services: image: ${CLI_IMG_NAME}:${PORTAL_TAG} environment: CLI_MODE: 'daemon' - expose: - - 80 ports: - 8080:80 + - 9090:8080 logging: driver: json-file @@ -48,7 +47,7 @@ services: command: - /wait-for.sh - -t - - "300" + - "420" - portal-db:3306 - -- - /start-wms-cmd.sh @@ -88,9 +87,12 @@ services: command: - /wait-for.sh - -t - - "300" + - "420" - portal-db:3306 - -- - /start-apps-cmd.sh + # see comments in .env file + - $EXTRA_HOST_IP + - $EXTRA_HOST_NAME logging: driver: json-file diff --git a/test/csit/plans/portal/testsuite/setup.sh b/test/csit/plans/portal/testsuite/setup.sh index 71d110521..ff21142af 100644 --- a/test/csit/plans/portal/testsuite/setup.sh +++ b/test/csit/plans/portal/testsuite/setup.sh @@ -14,6 +14,8 @@ XVFBPID=$! HOST_IP=$(ip route get 8.8.8.8 | awk '/8.8.8.8/ {print $NF}') export HOST_IP=${HOST_IP} + + if ! ifconfig docker0; then if ! ifconfig ens3; then echo "Could not determine IP address" @@ -33,6 +35,8 @@ ROBOT_VARIABLES="-v MOCK_IP:${MOCK_IP} -v IP:${IP} -v DOCKER_IP:${DOCKER_IP}" export DOCKER_IP=${DOCKER_IP} + + # be verbose set -x @@ -51,19 +55,25 @@ cd portal git pull cd deliveries rm .env -rm docker-compose.yml +#rm docker-compose.yml cp $CURR/.env . -cp $CURR/docker-compose.yml . -#cd properties_rackspace/ECOMPPORTALAPP +#cp $CURR/docker-compose.yml . +#cd properties_simpledemo/ECOMPPORTALAPP #rm system.properties #cp $CURR/system.properties . #cd ../.. # Get image names used below from docker-compose environment file source $CURR/.env +#source .env + +# Make inter-app communication work in CSIT +export EXTRA_HOST_IP="-i ${HOST_IP}" +export EXTRA_HOST_NAME="-n portal.api.simpledemo.openecomp.org" + # Copy property files to new directory mkdir -p $PROPS_DIR -cp -r properties_rackspace/* $PROPS_DIR +cp -r properties_simpledemo/* $PROPS_DIR # Also create logs directory mkdir -p $LOGS_DIR @@ -118,6 +128,8 @@ echo "Adding new hosts entry." echo "$host_entry" | sudo tee -a /etc/hosts > /dev/null fi + + sleep 3m # WAIT 5 minutes maximum and test every 5 seconds if Portal up using HealthCheck API @@ -157,7 +169,7 @@ fi HOST_IP=$(ip route get 8.8.8.8 | awk '/8.8.8.8/ {print $NF}') export HOST_IP=${HOST_IP} -docker logs deliveries_portal-db_1 +#docker logs deliveries_portal-db_1 docker logs deliveries_portal-apps_1 docker logs deliveries_portal-wms_1 diff --git a/test/csit/plans/vfc-gvnfm-vnflcm/sanity-check/setup.sh b/test/csit/plans/vfc-gvnfm-vnflcm/sanity-check/setup.sh index c9900d246..9db194663 100755 --- a/test/csit/plans/vfc-gvnfm-vnflcm/sanity-check/setup.sh +++ b/test/csit/plans/vfc-gvnfm-vnflcm/sanity-check/setup.sh @@ -54,6 +54,9 @@ for i in {1..10}; do sleep $i done +docker cp vfc-vnflcm:/service/vfc/gvnfm/vnflcm/lcm/lcm/pub/config/config.py ./ +cat config.py + docker cp vfc-vnflcm:/service/vfc/gvnfm/vnflcm/lcm/logs/runtime_lcm.log ./ cat runtime_lcm.log diff --git a/test/csit/scripts/policy/script1.sh b/test/csit/scripts/policy/script1.sh index 473ef0dd8..30fb39586 100755 --- a/test/csit/scripts/policy/script1.sh +++ b/test/csit/scripts/policy/script1.sh @@ -94,47 +94,58 @@ export MTU=9126 docker-compose -f docker-compose-integration.yml up -d +if [ ! $? -eq 0 ]; then + echo "Docker compose failed" + exit 1 +fi + docker ps -docker inspect drools +#sleep 4m POLICY_IP=`docker inspect --format '{{ .NetworkSettings.Networks.docker_default.IPAddress}}' drools` echo ${POLICY_IP} -sleep 3m - -docker inspect pdp - PDP_IP=`docker inspect --format '{{ .NetworkSettings.Networks.docker_default.IPAddress}}' pdp` echo ${PDP_IP} -sleep 3m +PAP_IP=`docker inspect --format '{{ .NetworkSettings.Networks.docker_default.IPAddress}}' pap` +echo ${PAP_IP} + +BRMS_IP=`docker inspect --format '{{ .NetworkSettings.Networks.docker_default.IPAddress}}' brmsgw` +echo ${BRMS_IP} + +NEXUS_IP=`docker inspect --format '{{ .NetworkSettings.Networks.docker_default.IPAddress}}' nexus` +echo ${NEXUS_IP} -#for i in {1..60}; do -TIME_OUT=6000 +MARIADB_IP=`docker inspect --format '{{ .NetworkSettings.Networks.docker_default.IPAddress}}' mariadb` +echo ${MARIADB_IP} + +${DIR}/wait_for_port.sh ${MARIADB_IP} 3306 +${DIR}/wait_for_port.sh ${PAP_IP} 9091 +${DIR}/wait_for_port.sh ${PDP_IP} 8081 +${DIR}/wait_for_port.sh ${BRMS_IP} 9989 +${DIR}/wait_for_port.sh ${NEXUS_IP} 8081 +${DIR}/wait_for_port.sh ${POLICY_IP} 6969 + +TIME_OUT=600 INTERVAL=20 TIME=0 while [ "$TIME" -lt "$TIME_OUT" ]; do curl -i --user healthcheck:zb!XztG34 -H "ContentType: application/json" -H "Accept: application/json" ${POLICY_IP}:6969/healthcheck && break - echo sleep $i - sleep $i -echo Sleep: $INTERVAL seconds before testing if Policy is up. Total wait time up now is: $TIME seconds. Timeout is: $TIME_OUT seconds + echo Sleep: $INTERVAL seconds before testing if Policy is up. Total wait time up now is: $TIME seconds. Timeout is: $TIME_OUT seconds sleep $INTERVAL TIME=$(($TIME+$INTERVAL)) done -#curl -v --silent -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'ClientAuth: cHl0aG9uOnRlc3Q=' -H 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' -H 'Environment: TEST' -X POST -d '{"policyName": "*.*"}' - -TIME_OUT=6000 +TIME_OUT=600 INTERVAL=20 TIME=0 while [ "$TIME" -lt "$TIME_OUT" ]; do - curl -v --silent -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'ClientAuth: cHl0aG9uOnRlc3Q=' -H 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' -H 'Environment: TEST' -X POST -d '{"policyName": "*.*"}' http://${PDP_IP}:8081/pdp/api/getConfig && break - echo sleep $i - sleep $i + curl -i -v -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'ClientAuth: cHl0aG9uOnRlc3Q=' -H 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' -H 'Environment: TEST' -X POST -d '{"policyName": ".*"}' http://${PDP_IP}:8081/pdp/api/getConfig && break echo Sleep: $INTERVAL seconds before testing if Policy is up. Total wait time up now is: $TIME seconds. Timeout is: $TIME_OUT seconds sleep $INTERVAL @@ -142,3 +153,7 @@ echo Sleep: $INTERVAL seconds before testing if Policy is up. Total wait time up done +# +# Add more sleep for everything to settle +# +sleep 3m diff --git a/test/csit/scripts/policy/wait_for_port.sh b/test/csit/scripts/policy/wait_for_port.sh new file mode 100755 index 000000000..10f08ded1 --- /dev/null +++ b/test/csit/scripts/policy/wait_for_port.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +if [[ $# -ne 2 ]]; then + echo "Usage: wait-for-port hostname port" >&2 + exit 1 +fi + +host=$1 +port=$2 + +echo "Waiting for $host port $port open" +until telnet $host $port </dev/null 2>/dev/null | grep -q '^Connected'; do + sleep 1 +done + +echo "$host port $port is open" + +exit 0 diff --git a/test/csit/tests/appc/healthcheck/APPC_GLOBAL_VARIABLES.robot b/test/csit/tests/appc/healthcheck/APPC_GLOBAL_VARIABLES.robot new file mode 100644 index 000000000..b869434fc --- /dev/null +++ b/test/csit/tests/appc/healthcheck/APPC_GLOBAL_VARIABLES.robot @@ -0,0 +1,10 @@ +*** Settings *** +Documentation store all properties that can change or are used in multiple places here +... format is all caps with underscores between words and prepended with GLOBAL +... make sure you prepend them with GLOBAL so that other files can easily see it is from this file. + + +*** Variables *** +${GLOBAL_VNF_RESTART_REQUESTFILE} ${CURDIR}/LCM_VNF_RESTART_REQUEST.txt +${GLOBAL_VM_RESTART_REQUESTFILE} ${CURDIR}/LCM_VM_RESTART_REQUEST.txt +${GLOBAL_HEALTHCHECK_REQUESTFILE} ${CURDIR}/LCM_VM_HEALTHCHECK_REQUEST.txt
\ No newline at end of file diff --git a/test/csit/tests/appc/healthcheck/APPC_Netstat.robot b/test/csit/tests/appc/healthcheck/APPC_Netstat.robot new file mode 100644 index 000000000..285fc3727 --- /dev/null +++ b/test/csit/tests/appc/healthcheck/APPC_Netstat.robot @@ -0,0 +1,8 @@ +*** Settings *** +Library OperatingSystem + +*** Test Cases *** +APPC Netstat + [Documentation] Checking the active ports + ${output}= Run netstat -a | grep -E 8282 | grep LISTEN + Log To Console ${output} diff --git a/test/csit/tests/appc/healthcheck/LCM_HEALTHCHECK_TIMESTAMP.robot b/test/csit/tests/appc/healthcheck/LCM_HEALTHCHECK_TIMESTAMP.robot new file mode 100644 index 000000000..2259f3f69 --- /dev/null +++ b/test/csit/tests/appc/healthcheck/LCM_HEALTHCHECK_TIMESTAMP.robot @@ -0,0 +1,52 @@ +*** Settings *** +Library Selenium2Library +Library OperatingSystem +Library XvfbRobot +Resource APPC_GLOBAL_VARIABLES.robot +Resource gettime.robot + +*** Variable *** +${ResponseCode} +${var} + +*** Test Cases *** + +APPC LCM API HEALTHCHECK + [Documentation] APPC LCM API HEALTHCHECK + Start Virtual Display 1920 1080 + Open Browser http://admin:Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U@localhost:8282/apidoc/explorer/index.html chrome + Maximize Browser Window +# Click Element xpath=.//p[contains(text(),'If you have reason to expect the website is safe, select the I Accept the Risk button to continue.')]//following::img + + Reload Page + +# Wait Until Page Contains Element xpath=.//*[contains(text(),'appc-provider-lcm(2016-01-08)')] + +# Set Selenium Speed 60 +# Click Element xpath=.//*[contains(text(),'appc-provider-lcm(2016-01-08)')] + + +# wait until page contains element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:health-check')] +# Set Selenium Speed 60 +# Click link xpath=.//*[contains(text(),'appc-provider-lcm(2016-01-08)')]/following::li[5]/ul/li/div[1]/h3/span[2]/a +# Click Element xpath=//*[@id="appc-provider-lcm(2016-01-08)_health_check_post_0"]/div[1]/h3/span[2]/a + +# Get Server time ${GLOBAL_HEALTHCHECK_REQUESTFILE} +# ${file_content}= OperatingSystem.Get File ${GLOBAL_HEALTHCHECK_REQUESTFILE} + +# wait until page contains element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:health-check')]//following::table +# Set Selenium Speed 90 +# Input Text xpath=(.//*[contains(text(),'(health-check)input-TOP')])[1]/following::textarea[1] ${file_content} +# Input Text xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:health-check')]//following::table//tbody/tr/td[2]/textarea ${file_content} + +# wait until page contains element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:health-check')]//following::form/div[2]/input[1] +# Set Selenium Speed 90 +# Click Element xpath=//*[@id="appc-provider-lcm(2016-01-08)_health_check_post_0_content"]/form/div[2]/input + +## ${var}= Get Value xpath= //*[@id="appc-provider-lcm(2016-01-08)_health_check_post_0_content"]/div[2]/div[3]/pre +## Element Text Should Be xpath=//*[@id="appc-provider-lcm(2016-01-08)_health_check_post_0_content"]/div[2]/div[3]/pre[1][text()='200'] 200 expected + +Tear Down + + [Documentation] Close all browsers + Close All Browsers
\ No newline at end of file diff --git a/test/csit/tests/appc/healthcheck/LCM_VM_HEALTHCHECK_REQUEST.txt b/test/csit/tests/appc/healthcheck/LCM_VM_HEALTHCHECK_REQUEST.txt new file mode 100644 index 000000000..d258b492b --- /dev/null +++ b/test/csit/tests/appc/healthcheck/LCM_VM_HEALTHCHECK_REQUEST.txt @@ -0,0 +1,25 @@ +{ +"input" : +{ +"common-header" : +{ +"timestamp" : "2017-10-07T01:28:39.615000Z", +"api-ver" : "2.00", +"originator-id" : "SDNGP", +"request-id" : "AppCONAP-lcm-HealthCheck-PhilTest#1", +"sub-request-id" : "AppCONAP-lcm-HealthCheck-PhilTest#1", +"flags" : +{ +"mode" : "NORMAL", +"force" : "TRUE", +"ttl" : 3600 +} +}, +"action" : "HealthCheck", +"action-identifiers" : +{ +"vnf-id" : "dbax001v" +}, +"payload" : "{\"request-parameters\":{\"vnf-name\":\"dbax001v\",\"vnf-host-ip-address\":\"https://135.205.240.68:8080/Dispatch/\"},\"configuration-parameters\":{\"vnf_instance\":\"dbax001v\"}}" +} +} diff --git a/test/csit/tests/appc/healthcheck/LCM_VM_RESTART_REQUEST.txt b/test/csit/tests/appc/healthcheck/LCM_VM_RESTART_REQUEST.txt new file mode 100644 index 000000000..5e199c97e --- /dev/null +++ b/test/csit/tests/appc/healthcheck/LCM_VM_RESTART_REQUEST.txt @@ -0,0 +1,24 @@ +{ +"input" : +{ +"common-header" : +{ +"timestamp" : "2017-09-29T16:30:05.44Z", +"api-ver" : "2.01", +"originator-id" : "c09ac7d1-de62-0016-2000-e63702155Phil2", +"request-id" : "c09ac7d1-de62-0016-2000-e63702155Phil2", +"sub-request-id" : "150", +"flags" : +{ +"force" : "TRUE", +"ttl" : 60000 +} +}, +"action" : "Restart", +"action-identifiers" : +{ +"vnf-id" : "trial-vnf-004" +}, +"payload" : "{\"vm-id\":\"http://135.25.246.131:8774/v2/81fc2bc61f974de1b5a49e8c2ec090bb/servers/7c95ba81-4aad-4b13-9e94-d6af4f2b06be\",\"identity-url\":\"http://135.25.246.131:5000/v2.0\",\"tenant-id\":\"81fc2bc61f974de1b5a49e8c2ec090bb\"}" +} +}
\ No newline at end of file diff --git a/test/csit/tests/appc/healthcheck/LCM_VM_RESTART_TIMESTAMP.robot b/test/csit/tests/appc/healthcheck/LCM_VM_RESTART_TIMESTAMP.robot new file mode 100644 index 000000000..768865f92 --- /dev/null +++ b/test/csit/tests/appc/healthcheck/LCM_VM_RESTART_TIMESTAMP.robot @@ -0,0 +1,47 @@ +*** Settings *** +Library Selenium2Library +Library OperatingSystem +Library XvfbRobot +Resource APPC_GLOBAL_VARIABLES.robot +Resource gettime.robot + +*** Variable *** +${ResponseCode} +${var} + +*** Test Cases *** +APPC LCM API VM RESTART + [Documentation] APPC LCM API VM RESTART + Start Virtual Display 1920 1080 + Open Browser http://admin:Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U@localhost:8282/apidoc/explorer/index.html chrome + Maximize Browser Window +# Click Element xpath=.//p[contains(text(),'If you have reason to expect the website is safe, select the I Accept the Risk button to continue.')]//following::img + + Reload Page + +# Wait Until Page Contains Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a +# Set Selenium Speed 60 +# Click Element xpath=.//*[contains(text(),'appc-provider-lcm(2016-01-08)')] + +# Wait Until Page Contains Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:restart')] +# Set Selenium Speed 60 +# Click Element xpath=.//*[contains(text(),'appc-provider-lcm:restart')] + +# Get Server time ${GLOBAL_VM_RESTART_REQUESTFILE} + +# ${file_content}= OperatingSystem.Get File ${GLOBAL_VM_RESTART_REQUESTFILE} + +# Wait Until Page Contains Element xpath=//td[contains(text(), '(restart)input-TOP')]//following::textarea[@name='(restart)input-TOP'][3] +# Set Selenium Speed 90 +# Input Text xpath=(.//*[contains(text(),'(restart)input-TOP')])[5]/following::textarea[1] ${file_content} +# Input Text xpath= //td[contains(text(), '(restart)input-TOP')]//following::textarea[@name='(restart)input-TOP'][3] ${file_content} + +# Click Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:restart')]//following::form/div[2]/input[1] + +# ${var}= Get Value xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:restart')]//following::h4[contains(text(),'Response Code')][1]//following-sibling::div//pre +# Element Text Should Be xpath=//*[contains(text(),'/operations/appc-provider-lcm:restart')]//following::h4[text()='Response Code'][1]//following-sibling::div//pre[1][text()='200'] 200 expected + + +Tear Down + [Documentation] Close all browsers + Close All Browsers
\ No newline at end of file diff --git a/test/csit/tests/appc/healthcheck/LCM_VNF_RESTART_REQUEST.txt b/test/csit/tests/appc/healthcheck/LCM_VNF_RESTART_REQUEST.txt new file mode 100644 index 000000000..ee9b8d9ba --- /dev/null +++ b/test/csit/tests/appc/healthcheck/LCM_VNF_RESTART_REQUEST.txt @@ -0,0 +1,24 @@ +{ +"input" : +{ +"common-header" : +{ +"timestamp" : "2017-10-07T01:39:54.227000Z", +"api-ver" : "2.00", +"originator-id" : "c09ac7d1-de62-0016-2000-e63702155555", +"request-id" : "c09ac7d1-de62-0016-2000-e63701125555", +"sub-request-id" : "150", +"flags" : +{ +"force" : "TRUE", +"ttl" : 60000 +} +}, +"action" : "Restart", +"action-identifiers" : +{ +"vnf-id" : "ibcx8888v" +}, +"payload" : "{\"AICIdentity\" : \"http://135.25.246.162:5000/v2.0\", \"vnf-host-ip-address\" : \"135.21.166.46\"}" +} +} diff --git a/test/csit/tests/appc/healthcheck/LCM_VNF_RESTART_TIMESTAMP.robot b/test/csit/tests/appc/healthcheck/LCM_VNF_RESTART_TIMESTAMP.robot new file mode 100644 index 000000000..15690f023 --- /dev/null +++ b/test/csit/tests/appc/healthcheck/LCM_VNF_RESTART_TIMESTAMP.robot @@ -0,0 +1,50 @@ +*** Settings *** +Library Selenium2Library +Library OperatingSystem +Library XvfbRobot +Resource ${CURDIR}/APPC_GLOBAL_VARIABLES.robot +Resource ${CURDIR}/gettime.robot + + + +*** Variable *** +${ResponseCode} +${var} + +*** Test Cases *** + +APPC LCM API VNF RESTART + [Documentation] APPC LCM API VNF RESTART + Start Virtual Display 1920 1080 + Open Browser http://admin:Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U@localhost:8282/apidoc/explorer/index.html chrome + Maximize Browser Window +# Click Element xpath=.//p[contains(text(),'If you have reason to expect the website is safe, select the I Accept the Risk button to continue.')]//following::img + + Reload Page + +# Wait Until Page Contains Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a +# Set Selenium Speed 60 +# Click Element xpath=.//*[contains(text(),'appc-provider-lcm(2016-01-08)')] + + +# Wait Until Page Contains Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:restart')] +# Set Selenium Speed 60 +# Click Element xpath=.//*[contains(text(),'appc-provider-lcm:restart')] + +# Get Server time ${GLOBAL_VNF_RESTART_REQUESTFILE} +# ${file_content}= OperatingSystem.Get File ${GLOBAL_VNF_RESTART_REQUESTFILE} + +# Wait Until Page Contains Element xpath=//td[contains(text(), '(restart)input-TOP')]//following::textarea[@name='(restart)input-TOP'][3] +# Set Selenium Speed 90 +# Input Text xpath=(.//*[contains(text(),'(restart)input-TOP')])[5]/following::textarea[1] ${file_content} +# Click Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:restart')]//following::form/div[2]/input[1] + +# Input Text xpath= //td[contains(text(), '(restart)input-TOP')]//following::textarea[@name='(restart)input-TOP'][3] ${file_content} + +# ${var}= Get Value xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:restart')]//following::h4[contains(text(),'Response Code')][1]//following-sibling::div//pre +# Element Text Should Be xpath=//*[contains(text(),'/operations/appc-provider-lcm:restart')]//following::h4[text()='Response Code'][1]//following-sibling::div//pre[1][text()='200'] 200 expected + + +Tear Down + [Documentation] Close all browsers + Close All Browsers
\ No newline at end of file diff --git a/test/csit/tests/appc/healthcheck/gettime.robot b/test/csit/tests/appc/healthcheck/gettime.robot new file mode 100644 index 000000000..9f376f9bc --- /dev/null +++ b/test/csit/tests/appc/healthcheck/gettime.robot @@ -0,0 +1,40 @@ +*** Settings *** +Library Selenium2Library +Library OperatingSystem +Library DateTime +Library String +##Library HttpLibrary.HTTP +Library Collections + + +*** Keywords *** + +Get Server time + [Documentation] Getting server time to update the json request + [Arguments] ${RequestFile} + + ${date}= Get Current Date time_zone=local result_format=%Y-%m-%dT%H:%M:%S.%fZ exclude_millis=False + + #updating the request file with the server time + ${file_content}= OperatingSystem.Get File ${RequestFile} + @{list}= Split to lines ${file_content} + ${data}= Get from list ${list} 5 + @{splitted_string}= Split String ${data} : 1 + ${time}= Get From List ${splitted_string} 1 + Log ${time} + @{splitted_string_time}= Split String ${time} " 2 + ${times1}= Get From List ${splitted_string_time} 1 + Log ${times1} + ${replaced_string}= Replace String ${data} ${times1} ${date} + @{list1}= Split to lines ${file_content} + Remove from list ${list1} 5 + Insert into list ${list1} 5 ${replaced_string} + Remove File ${RequestFile} + :FOR ${line} IN @{list1} + \ Append to File ${RequestFile} ${line} encoding=UTF-8 + \ Append to File ${RequestFile} ${\n} encoding=UTF-8 + + + + +
\ No newline at end of file diff --git a/test/csit/tests/appc/testsuite/APPC_Netstat.robot b/test/csit/tests/appc/testsuite/APPC_Netstat.robot deleted file mode 100644 index 5544fb565..000000000 --- a/test/csit/tests/appc/testsuite/APPC_Netstat.robot +++ /dev/null @@ -1,19 +0,0 @@ -*** Settings *** -Library SSHLibrary -Library OperatingSystem -*** Variables *** -${HOST} 104.130.138.49 -${USERNAME} test -${private_key} H:\\TestSuite\\testsuite\\robot\\testsuites -*** Test Cases *** -APPC Netstat - Open Connection ${HOST} - ${password}= Get File ${private_key} - Login ${USERNAME} ${password} - log to console \nConnected Successfully - ${cmd} = set variable netstat -a | grep -E '8443 | grep LISTEN - execute command ${cmd} - -Tear Down - [Documentation] Close all connections - Close All connections
\ No newline at end of file diff --git a/test/csit/tests/appc/testsuite/LCM_HEALTHCHECK.robot b/test/csit/tests/appc/testsuite/LCM_HEALTHCHECK.robot deleted file mode 100644 index c3594ef2e..000000000 --- a/test/csit/tests/appc/testsuite/LCM_HEALTHCHECK.robot +++ /dev/null @@ -1,33 +0,0 @@ -*** Settings *** -Library Selenium2Library -Library OperatingSystem - -*** Variable *** -${ResponseCode} -${var} -${RequestJSON} C:\\RobotSampleForLearning\\LearningSamples\\Resources\\Healthchk.json - - -*** Test Cases *** - -APPC LCM Health check - [Documentation] APPC HealthCheck - Open Browser http://admin:Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U@104.130.138.49:8282/apidoc/explorer/index.html chrome - Click Element xpath=.//p[contains(text(),'If you have reason to expect the website is safe, select the I Accept the Risk button to continue.')]//following::img - - Wait Until Page Contains Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a - Click Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a - - wait until page contains element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:health-check')] - Click Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:health-check')] - - ${HealthChk}= Get File ${RequestJSON} - wait until page contains element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:health-check')]//following::table - Input Text xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:health-check')]//following::table//tbody/tr/td[2]/textarea ${HealthChk} - - wait until page contains element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:health-check')]//following::form/div[2]/input[1] - Click Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:health-check')]//following::form/div[2]/input[1] - -Tear Down - [Documentation] Close all browsers - Close All Browsers
\ No newline at end of file diff --git a/test/csit/tests/appc/testsuite/LCM_VM_RESTART.robot b/test/csit/tests/appc/testsuite/LCM_VM_RESTART.robot deleted file mode 100644 index 997ba17a0..000000000 --- a/test/csit/tests/appc/testsuite/LCM_VM_RESTART.robot +++ /dev/null @@ -1,31 +0,0 @@ -*** Settings *** -Library Selenium2Library -Library OperatingSystem - -*** Variable *** -${ResponseCode} -${var} -${RequestJSON} /LearningSamples/Resources/VMRestart.json - - -*** Test Cases *** - -APPC API VM RESTART - [Documentation] APPC VM LCM Restart - Open Browser http://admin:Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U@104.130.138.49:8282/apidoc/explorer/index.html chrome - Click Element xpath=.//p[contains(text(),'If you have reason to expect the website is safe, select the I Accept the Risk button to continue.')]//following::img - Click Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a - Click Element xpath=//*[@id="appc-provider-lcm(2016-01-08)_restart_post_23"]/div[1]/h3/span[2]/a - ${VM_LCM_RESTART} Get File ${RequestJSON} - Input Text xpath=//*[@id="appc-provider-lcm(2016-01-08)_restart_post_23_content"]/form/table/tbody/tr/td[2]/textarea ${VM_LCM_RESTART} - Click Element xpath=//*[@id="appc-provider-lcm(2016-01-08)_restart_post_23_content"]/form/div[2]/input - # Get Text locator - ${ResponseCode} Get Text xpath=//*[@id="appc-provider-lcm(2016-01-08)_restart_post_23_content"]/div[2]/h4[contains(text(),'Response Code')]//following::div//pre - ${var} Get Value xpath=//*[@id="appc-provider-lcm(2016-01-08)_restart_post_23_content"]/div[2]/h4[contains(text(),'Response Code')]//following::div//pre - Log Value--> ${ResponseCode} - Log var--> ${var} - Element Text Should Be xpath=//*[@id="appc-provider-lcm(2016-01-08)_restart_post_23_content"]/div[2]/h4[contains(text(),'Response Code')]//following::div//pre 400 expected - -Tear Down - [Documentation] Close all browsers - Close All Browsers
\ No newline at end of file diff --git a/test/csit/tests/appc/testsuite/LCM_VNF_RESTART.robot b/test/csit/tests/appc/testsuite/LCM_VNF_RESTART.robot deleted file mode 100644 index 1bb2c13eb..000000000 --- a/test/csit/tests/appc/testsuite/LCM_VNF_RESTART.robot +++ /dev/null @@ -1,45 +0,0 @@ -*** Settings *** -Library Selenium2Library -Library OperatingSystem - -*** Variable *** -${ResponseCode} -${var} -${RequestJSON} C:\\RobotSampleForLearning\\LearningSamples\\Resources\\VNFRestart.json - - -*** Test Cases *** - -APPC API VM RESTART - [Documentation] APPC VM LCM Restart - Open Browser http://admin:Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U@104.130.138.49:8282/apidoc/explorer/index.html chrome - Click Element xpath=.//p[contains(text(),'If you have reason to expect the website is safe, select the I Accept the Risk button to continue.')]//following::img - - Wait Until Page Contains Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a - Click Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a - - - Wait Until Page Contains Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:restart')] - Click Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:restart')] - - - ${VNF_LCM_RESTART}= Get File ${RequestJSON} - Wait Until Page Contains Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:restart')]//following::table - - Input Text xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:restart')]//following::table//tbody/tr/td[2]/textarea ${VNF_LCM_RESTART} - - # Wait Until Page Contains Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:restart')]/form/div[2]/input - Click Element xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:restart')]//following::form/div[2]/input[1] - - # Get Text locator - ${ResponseCode} Get Text xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:restart')]//following::h4[contains(text(),'Response Code')][1]//following-sibling::div//pre - - # //*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:restart')]//following::h4[contains(text(),'Response Code')]//following-sibling::div//pre - ${var} Get Value xpath=//*[@id="resource_appc-provider-lcm(2016-01-08)"]/div/h2/a//following::a[contains(text(),'/operations/appc-provider-lcm:restart')]//following::h4[contains(text(),'Response Code')][1]//following-sibling::div//pre - Log Value--> ${ResponseCode} - Log var--> ${var} - Element Text Should Be xpath=//*[contains(text(),'/operations/appc-provider-lcm:restart')]//following::h4[text()='Response Code'][1]//following-sibling::div//pre[1] 200 expected - -Tear Down - [Documentation] Close all browsers - Close All Browsers
\ No newline at end of file diff --git a/test/csit/tests/holmes/testcase/RuleMgt/Rule-Mgt.robot b/test/csit/tests/holmes/testcase/RuleMgt/Rule-Mgt.robot index ad2a540fd..7e62271be 100644 --- a/test/csit/tests/holmes/testcase/RuleMgt/Rule-Mgt.robot +++ b/test/csit/tests/holmes/testcase/RuleMgt/Rule-Mgt.robot @@ -8,7 +8,7 @@ Resource Rule-Keywords.robot *** Test Cases *** add_valid_rule [Documentation] Add a valid rule. - ${dict2} create dictionary rulename=youbowu0314 description=create a new rule! content=package rule03140002 enabled=1 + ${dict2} create dictionary rulename=youbowu0314 description=create a new rule! content=package rule03140002 enabled=1 loopcontrolname=closedControlLoop ${jsonParams} encode ${dict2} ${response} createRule ${jsonParams} ${respJson} to json ${response.content} diff --git a/test/csit/tests/policy/suite1/Policy-CSIT.robot b/test/csit/tests/policy/suite1/Policy-CSIT.robot index c7cc7256a..5ce1f9f73 100644 --- a/test/csit/tests/policy/suite1/Policy-CSIT.robot +++ b/test/csit/tests/policy/suite1/Policy-CSIT.robot @@ -3,6 +3,7 @@ Documentation Policy ONAP CSIT Test cases Library String Library HttpLibrary.HTTP LIbrary Process +Library BuiltIn Resource policy_interface.robot Resource json_templater.robot @@ -45,21 +46,19 @@ Policy Health check VFW Config Policy ${CONFIG_POLICY_VFW_NAME}= Create Config VFW Policy - Push Config Policy ${CONFIG_POLICY_VFW_NAME} ${CONFIG_POLICY_VFW_TYPE} -VFW Get Configs Policy - Get Configs VFW Policy + Push Config Policy ${CONFIG_POLICY_VFW_NAME} ${CONFIG_POLICY_VFW_TYPE} #VFW Policy Tests VDNS Config Policy ${CONFIG_POLICY_VDNS_NAME}= Create Config VDNS Policy Push Config Policy ${CONFIG_POLICY_VDNS_NAME} ${CONFIG_POLICY_VDNS_TYPE} - #VDNS Policy Tests - + #VDNS Policy Tests + VCPE Config Policy ${CONFIG_POLICY_VCPE_NAME}= Create Config VCPE Policy Push Config Policy ${CONFIG_POLICY_VCPE_NAME} ${CONFIG_POLICY_VCPE_TYPE} #VCPE Policy Tests - + VFW Ops Policy ${OPS_POLICY_VFW_NAME}= Create Ops VFW Policy Push Ops Policy ${OPS_POLICY_VFW_NAME} ${OPS_POLICY_VFW_TYPE} @@ -76,6 +75,17 @@ VOLTE Ops Policy ${OPS_POLICY_VOLTE_NAME}= Create Ops VOLTE Policy Push Ops Policy ${OPS_POLICY_VOLTE_NAME} ${OPS_POLICY_VOLTE_TYPE} #VOLTE Policy Tests +VFW Get Configs Policy + Sleep 5s + Get Configs VFW Policy + +VDNS Get Configs Policy + Sleep 5s + Get Configs VDNS Policy + +VCPE Get Configs Policy + Sleep 5s + Get Configs VCPE Policy *** Keywords *** diff --git a/test/csit/tests/policy/suite1/test1.robot b/test/csit/tests/policy/suite1/test1.robot deleted file mode 100644 index 10e685213..000000000 --- a/test/csit/tests/policy/suite1/test1.robot +++ /dev/null @@ -1,30 +0,0 @@ -*** Settings *** -Library OperatingSystem -Library RequestsLibrary - -*** Variables *** -${MESSAGE} Hello, world! - -*** Test Cases *** -String Equality Test - Should Be Equal ${MESSAGE} Hello, world! - -Dir Test - [Documentation] Check if /tmp exists - Log ${MESSAGE} - CheckDir /tmp - -Url Test - [Documentation] Check if google.com can be reached - CheckUrl http://www.google.com - -*** Keywords *** -CheckDir - [Arguments] ${path} - Directory Should Exist ${path} - -CheckUrl - [Arguments] ${url} - Create Session session ${url} - ${resp}= Get Request session / - Should Be Equal As Integers ${resp.status_code} 200 diff --git a/test/csit/tests/portal/testsuites/test1.robot b/test/csit/tests/portal/testsuites/test1.robot index 14f64d5f5..42f88bf39 100644 --- a/test/csit/tests/portal/testsuites/test1.robot +++ b/test/csit/tests/portal/testsuites/test1.robot @@ -14,7 +14,6 @@ Resource json_templater.robot *** Variables *** -#${PORTAL_URL} http://%{HOST_IP}:8989 #${PORTAL_URL} http://localhost:8989 ${PORTAL_URL} http://portal.api.simpledemo.openecomp.org:8989 ${PORTAL_ENV} /ECOMPPORTAL @@ -22,16 +21,16 @@ ${PORTAL_LOGIN_URL} ${PORTAL_URL}${PORTAL_ENV}/login.htm ${PORTAL_HOME_PAGE} ${PORTAL_URL}${PORTAL_ENV}/applicationsHome ${PORTAL_MICRO_ENDPOINT} ${PORTAL_URL}${PORTAL_ENV}/commonWidgets ${PORTAL_HOME_URL} ${PORTAL_URL}${PORTAL_ENV}/applicationsHome -${App_First_Name} appdemo +${App_First_Name} demoapp ${App_Last_Name} demo -${App_Email_Address} appdemo@onap.com -${App_LoginID} appdemo +${App_Email_Address} demoapp@onap.com +${App_LoginID} demoapp ${App_Loginpwd} demo123456! ${App_LoginPwdCheck} demo123456! -${Sta_First_Name} stademo +${Sta_First_Name} demosta ${Sta_Last_Name} demo -${Sta_Email_Address} stademo@onap.com -${Sta_LoginID} stademo +${Sta_Email_Address} demosta@onap.com +${Sta_LoginID} demosta ${Sta_Loginpwd} demo123456! ${Sta_LoginPwdCheck} demo123456! ${Test_First_Name} portal @@ -85,44 +84,20 @@ Portal R1 Release for AAF Create Microse service onboarding Portal admin Microservice Onboarding - + + Create Widget for all users Portal Admin Create Widget for All users Delete Widget for all users Portal Admin Delete Widget for All users - + Create Widget for Application Roles - Portal Admin Create Widget for Application Roles - -#Delete Widget for Application Roles -# Portal Admin Delete Widget for Application Roles - -#Create a Test user for Application Admin -# Portal admin Add Application admin User New user -Test - -#Create a Test user for Standared User -# Portal admin Add Standard User New user - -#Create a Test user for Existing User -# Portal admin Add Application Admin Exiting User -APPDEMO - -#Add Application Admin for Exisitng User -# Portal admin Add Application Admin Exiting User - -#Delete Application Admin for Exisitng User -# Portal admin Delete Application Admin Existing User - -#Add Standard User Role for Existing user -# Portal admin Add Standard User Existing user - -#Edit Standard User Role for Existing user -# Portal admin Edit Standard User Existing user + Portal Admin Create Widget for Application Roles - -#Delete Standard User Role for Existing user -# Portal admin Delete Standard User Existing user - +Delete Widget for Application Roles + Portal Admin Delete Widget for Application Roles + Validate Functional Top Menu Get Access Functional Top Menu Get Access @@ -138,50 +113,82 @@ Broadbond Notification functionality set global variable ${AdminBroadCastMsg} -#Category Notification functionality -# ${AdminCategoryMsg}= Portal Admin Category Notifications -# set global variable ${AdminCategoryMsg} +Category Notification functionality + ${AdminCategoryMsg}= Portal Admin Category Notifications + set global variable ${AdminCategoryMsg} + +Create a Test user for Application Admin -Test + Portal admin Add Application admin User New user -Test + +Create a Test User for Apllication Admin + Portal admin Add Application admin User New user + +Add Application Admin for Existing User Test user + Portal admin Add Application Admin Exiting User -APPDEMO + +Create a Test user for Standared User + Portal admin Add Standard User New user + +Add Application Admin for Exisitng User + Portal admin Add Application Admin Exiting User + +Delete Application Admin for Exisitng User + Portal admin Delete Application Admin Existing User + +Add Standard User Role for Existing user + Portal admin Add Standard User Existing user + +Edit Standard User Role for Existing user + Portal admin Edit Standard User Existing user + + +Delete Standard User Role for Existing user + Portal admin Delete Standard User Existing user + + Logout from Portal GUI as Portal Admin Portal admin Logout from Portal GUI -#Login To Portal GUI as APP Admin -# Application admin Login To Portal GUI +Login To Portal GUI as APP Admin + Application admin Login To Portal GUI -#Navigate Application Link as APP Admin -# Application Admin Navigation Application Link Tab + -#Navigate Functional Link as APP Admin -# Application Admin Navigation Functional Menu +##Navigate Functional Link as APP Admin +## Application Admin Navigation Functional Menu -#Add Standard User Role for Existing user as APP Admin -# Application admin Add Standard User Existing user +Add Standard User Role for Existing user as APP Admin + Application admin Add Standard User Existing user -#Edit Standard User Role for Existing user as APP Admin -# Application admin Edit Standard User Existing user +Edit Standard User Role for Existing user as APP Admin + Application admin Edit Standard User Existing user -#Delete Standard User Role for Existing user as APP Admin -# Application admin Delete Standard User Existing user +Delete Standard User Role for Existing user as APP Admin + Application admin Delete Standard User Existing user + +#Navigate Application Link as APP Admin +# Application Admin Navigation Application Link Tab -#Logout from Portal GUI as APP Admin -# Application admin Logout from Portal GUI +Logout from Portal GUI as APP Admin + Application admin Logout from Portal GUI -#Login To Portal GUI as Standared User -# Standared user Login To Portal GUI +Login To Portal GUI as Standared User + Standared user Login To Portal GUI #Navigate Application Link as Standared User # Standared user Navigation Application Link Tab -#Navigate Functional Link as Standared User -# Standared user Navigation Functional Menu +##Navigate Functional Link as Standared User +## Standared user Navigation Functional Menu -#Broadcast Notifications Standared user -# Standared user Broadcast Notifications ${AdminBroadCastMsg} +Broadcast Notifications Standared user + Standared user Broadcast Notifications ${AdminBroadCastMsg} -#Category Notifications Standared user -# Standared user Category Notifications ${AdminCategoryMsg} +Category Notifications Standared user + Standared user Category Notifications ${AdminCategoryMsg} Teardown @@ -288,31 +295,36 @@ Portal admin Add Application Admin Exiting User Click Element xpath=//span[@id='result-uuid-0'] Click Button xpath=//button[@id='search-users-button-next'] Click Button xpath=//input[@value='Select application'] - Scroll Element Into View xpath=(//input[@value='Select application']/following::*[contains(text(),'DMaaP Bus Ctrl' )])[1] - - Click Element xpath=(//li[contains(.,'DMaaP Bus Ctrl' )])[2] - #Select From List xpath=(//input[@value='Select application']/following::*[contains(text(),'DMaaP Bus Ctrl')])[1] DMaaP Bus Ctrl + Scroll Element Into View xpath=(//input[@value='Select application']/following::*[contains(text(),'xDemo App' )])[1] + Click Element xpath=(//li[contains(.,'xDemo App' )])[2] + #Select From List xpath=(//input[@value='Select application']/following::*[contains(text(),'xDemo App')])[1] xDemo App Click Button xpath=//button[@id='div-updateAdminAppsRoles'] Click Element xpath=//button[@id='admin-div-ok-button'] Click Element xpath=//button[@id='div-confirm-ok-button'] Get Selenium Implicit Wait Click Link xpath=//a[@aria-label='Admins'] Click Element xpath=//input[@id='dropdown1'] - Click Element xpath=//li[contains(.,'DMaaP Bus Ctrl' )] + Click Element xpath=//li[contains(.,'xDemo App' )] Input Text xpath=//input[@id='input-table-search'] ${Existing_User} - Element Text Should Be xpath=(//span[contains(.,'portal')])[1] ${Existing_User} + Table Column Should Contain xpath=//*[@table-data='admins.adminsTableData'] 1 ${Existing_User} + #Element Text Should Be xpath=(//span[contains(.,'portal')])[1] ${Existing_User} + #Element Text Should Be xpath=(//span[contains(.,'demo')])[1] ${Existing_User} Portal admin Delete Application Admin Existing User [Documentation] Naviage to Admins tab Click Element xpath=(//span[contains(.,'portal')] )[1] - Click Element xpath=//*[@id='select-app-DMaaP-Bus-Ctrl']/following::i[@id='i-delete-application'] + #Click Element xpath=(//span[contains(.,'demo')] )[1] + Click Element xpath=//*[@id='select-app-xDemo-App']/following::i[@id='i-delete-application'] Click Element xpath=//button[@id='div-confirm-ok-button'] Click Button xpath=//button[@id='div-updateAdminAppsRoles'] Click Element xpath=//button[@id='admin-div-ok-button'] #Is Element Visible xpath=(//span[contains(.,'Portal')] )[2] #Is Element Visible xpath=(//*[contains(.,'Portal')] )[2] Element Should Not Contain xpath=//*[@table-data='admins.adminsTableData'] portal + #Element Should Not Contain xpath=//*[@table-data='admins.adminsTableData'] demo + Click Image xpath=//img[@alt='Onap Logo'] + Set Selenium Implicit Wait 3000 Portal admin Add Application admin User New user @@ -320,7 +332,7 @@ Portal admin Add Application admin User New user Click Link xpath=//a[@title='Users'] Page Should Contain Users Click Button xpath=//button[@ng-click='toggleSidebar()'] - Click Button xpath=//button[@ng-click='users.openAddNewUserModal()'] + Click Button xpath=//button[@id='users-button-add'] Click Button xpath=//button[@id='Create-New-User-button'] Input Text xpath=//input[@ng-model='searchUsers.newUser.firstName'] ${App_First_Name} Input Text xpath=//input[@ng-model='searchUsers.newUser.lastName'] ${App_Last_Name} @@ -330,19 +342,21 @@ Portal admin Add Application admin User New user Input Text xpath=//input[@ng-model='searchUsers.newUser.loginPwdCheck'] ${App_LoginPwdCheck} Click Button xpath=//button[@ng-click='searchUsers.addNewUserFun()'] Click Button xpath=//button[@id='next-button'] - #Scroll Element Into View xpath=//div[@id='div-app-name-dropdown-DMaaP-Bus-Ctrl'] - Click Element xpath=//*[@id='div-app-name-dropdown-DMaaP-Bus-Ctrl'] - Click Element xpath=//*[@id='div-app-name-DMaaP-Bus-Ctrl']/following::input[@id='Standard-User-checkbox'] + #Scroll Element Into View xpath=//div[@id='div-app-name-dropdown-xDemo-App'] + Click Element xpath=//*[@id='div-app-name-dropdown-xDemo-App'] + Click Element xpath=//*[@id='div-app-name-xDemo-App']/following::input[@id='Standard-User-checkbox'] Set Selenium Implicit Wait 3000 Click Button xpath=//button[@id='new-user-save-button'] Set Selenium Implicit Wait 3000 Go To ${PORTAL_HOME_PAGE} Click Link xpath=//a[@title='Users'] Click Element xpath=//input[@id='dropdown1'] - Click Element xpath=//li[contains(.,'DMaaP Bus Ctrl')] + Click Element xpath=//li[contains(.,'xDemo App')] Table Column Should Contain xpath=//*[@table-data='users.accountUsers'] 1 ${App_First_Name} #Input Text xpath=//input[@id='input-table-search'] ${App_First_Name} - #Element Text Should Be xpath=(//span[contains(.,'appdemo')] )[1] ${App_First_Name} + #Element Text Should Be xpath=(//span[contains(.,'demoapp')] )[1] ${App_First_Name} + Click Image xpath=//img[@alt='Onap Logo'] + Set Selenium Implicit Wait 3000 Portal admin Add Standard User New user @@ -350,7 +364,7 @@ Portal admin Add Standard User New user Click Link xpath=//a[@title='Users'] Page Should Contain Users Click Button xpath=//button[@ng-click='toggleSidebar()'] - Click Button xpath=//button[@ng-click='users.openAddNewUserModal()'] + Click Button xpath=//button[@id='users-button-add'] Click Button xpath=//button[@id='Create-New-User-button'] Input Text xpath=//input[@ng-model='searchUsers.newUser.firstName'] ${Sta_First_Name} Input Text xpath=//input[@ng-model='searchUsers.newUser.lastName'] ${Sta_Last_Name} @@ -360,19 +374,21 @@ Portal admin Add Standard User New user Input Text xpath=//input[@ng-model='searchUsers.newUser.loginPwdCheck'] ${Sta_LoginPwdCheck} Click Button xpath=//button[@ng-click='searchUsers.addNewUserFun()'] Click Button xpath=//button[@id='next-button'] - #Scroll Element Into View xpath=//div[@id='div-app-name-dropdown-DMaaP-Bus-Ctrl'] - Click Element xpath=//*[@id='div-app-name-dropdown-DMaaP-Bus-Ctrl'] - Click Element xpath=//*[@id='div-app-name-DMaaP-Bus-Ctrl']/following::input[@id='Standard-User-checkbox'] + #Scroll Element Into View xpath=//div[@id='div-app-name-dropdown-xDemo-App'] + Click Element xpath=//*[@id='div-app-name-dropdown-xDemo-App'] + Click Element xpath=//*[@id='div-app-name-xDemo-App']/following::input[@id='Standard-User-checkbox'] Set Selenium Implicit Wait 3000 Click Button xpath=//button[@id='new-user-save-button'] Set Selenium Implicit Wait 3000 Go To ${PORTAL_HOME_PAGE} Click Link xpath=//a[@title='Users'] Click Element xpath=//input[@id='dropdown1'] - Click Element xpath=//li[contains(.,'DMaaP Bus Ctrl')] + Click Element xpath=//li[contains(.,'xDemo App')] Table Column Should Contain xpath=//*[@table-data='users.accountUsers'] 1 ${Sta_First_Name} #Input Text xpath=//input[@id='input-table-search'] ${Sta_First_Name} - #Element Text Should Be xpath=(//span[contains(.,'appdemo')] )[1] ${Sta_First_Name} + #Element Text Should Be xpath=(//span[contains(.,'appdemo')] )[1] ${Sta_First_Name} + Click Image xpath=//img[@alt='Onap Logo'] + Set Selenium Implicit Wait 3000 @@ -381,8 +397,7 @@ Portal admin Add Application admin User New user -Test Click Link xpath=//a[@title='Users'] Page Should Contain Users Click Button xpath=//button[@ng-click='toggleSidebar()'] - Set Selenium Implicit Wait 3000 - Click Button xpath=//button[@ng-click='users.openAddNewUserModal()'] + Click Button xpath=//button[@id='users-button-add'] Click Button xpath=//button[@id='Create-New-User-button'] Input Text xpath=//input[@ng-model='searchUsers.newUser.firstName'] ${Test_First_Name} Input Text xpath=//input[@ng-model='searchUsers.newUser.lastName'] ${Test_Last_Name} @@ -391,18 +406,23 @@ Portal admin Add Application admin User New user -Test Input Text xpath=//input[@ng-model='searchUsers.newUser.loginPwd'] ${Test_Loginpwd} Input Text xpath=//input[@ng-model='searchUsers.newUser.loginPwdCheck'] ${Test_LoginPwdCheck} Click Button xpath=//button[@ng-click='searchUsers.addNewUserFun()'] - Click Button xpath=//button[@id='next-button'] - #Scroll Element Into View xpath=//div[@id='div-app-name-dropdown-DMaaP-Bus-Ctrl'] - Click Element xpath=//*[@id='div-app-name-dropdown-DMaaP-Bus-Ctrl'] - Click Element xpath=//*[@id='div-app-name-DMaaP-Bus-Ctrl']/following::input[@id='Standard-User-checkbox'] - Set Selenium Implicit Wait 3000 - Click Button xpath=//button[@id='new-user-save-button'] + Click Button xpath=//button[@id='search-users-button-cancel'] + Click Image xpath=//img[@alt='Onap Logo'] Set Selenium Implicit Wait 3000 - Go To ${PORTAL_HOME_PAGE} - Click Link xpath=//a[@title='Users'] - Click Element xpath=//input[@id='dropdown1'] - Click Element xpath=//li[contains(.,'DMaaP Bus Ctrl')] - Table Column Should Contain xpath=//*[@table-data='users.accountUsers'] 1 ${Test_First_Name} + + + #Click Button xpath=//button[@id='next-button'] + #Scroll Element Into View xpath=//div[@id='div-app-name-dropdown-xDemo-App'] + #Click Element xpath=//*[@id='div-app-name-dropdown-xDemo-App'] + #Click Element xpath=//*[@id='div-app-name-xDemo-App']/following::input[@id='Standard-User-checkbox'] + #Set Selenium Implicit Wait 3000 + #Click Button xpath=//button[@id='new-user-save-button'] + #Set Selenium Implicit Wait 3000 + #Go To ${PORTAL_HOME_PAGE} + #Click Link xpath=//a[@title='Users'] + #Click Element xpath=//input[@id='dropdown1'] + #Click Element xpath=//li[contains(.,'xDemo App')] + #Table Column Should Contain xpath=//*[@table-data='users.accountUsers'] 1 ${Test_First_Name} #Input Text xpath=//input[@id='input-table-search'] ${Test_First_Name} #Element Text Should Be xpath=(//span[contains(.,'appdemo')] )[1] ${Test_First_Name} @@ -421,20 +441,21 @@ Portal admin Add Application Admin Exiting User -APPDEMO Click Element xpath=//span[@id='result-uuid-0'] Click Button xpath=//button[@id='search-users-button-next'] Click Button xpath=//input[@value='Select application'] - Scroll Element Into View xpath=(//input[@value='Select application']/following::*[contains(text(),'DMaaP Bus Ctrl' )])[1] - - Click Element xpath=(//li[contains(.,'DMaaP Bus Ctrl' )])[2] - #Select From List xpath=(//input[@value='Select application']/following::*[contains(text(),'DMaaP Bus Ctrl')])[1] DMaaP Bus Ctrl + Scroll Element Into View xpath=(//input[@value='Select application']/following::*[contains(text(),'xDemo App' )])[1] + Click Element xpath=(//li[contains(.,'xDemo App' )])[2] + #Select From List xpath=(//input[@value='Select application']/following::*[contains(text(),'xDemo App')])[1] xDemo App Click Button xpath=//button[@id='div-updateAdminAppsRoles'] Click Element xpath=//button[@id='admin-div-ok-button'] Click Element xpath=//button[@id='div-confirm-ok-button'] Get Selenium Implicit Wait Click Link xpath=//a[@aria-label='Admins'] Click Element xpath=//input[@id='dropdown1'] - Click Element xpath=//li[contains(.,'DMaaP Bus Ctrl' )] - + Click Element xpath=//li[contains(.,'xDemo App' )] Input Text xpath=//input[@id='input-table-search'] ${App_First_Name} - Element Text Should Be xpath=(//span[contains(.,'appdemo')])[1] ${App_First_Name} + #Element Text Should Be xpath=(//span[contains(.,'appdemo')])[1] ${App_First_Name} + Table Column Should Contain xpath=//*[@table-data='admins.adminsTableData'] 1 ${App_First_Name} + Click Image xpath=//img[@alt='Onap Logo'] + Set Selenium Implicit Wait 3000 @@ -452,41 +473,40 @@ Portal admin Add Standard User Existing user Click Button xpath=//button[@id='button-search-users'] Click Element xpath=//span[@id='result-uuid-0'] Click Button xpath=//button[@id='next-button'] - Click Element xpath=//*[@id='div-app-name-dropdown-DMaaP-Bus-Ctrl'] - Click Element xpath=//*[@id='div-app-name-DMaaP-Bus-Ctrl']/following::input[@id='Standard-User-checkbox'] + Click Element xpath=//*[@id='div-app-name-dropdown-xDemo-App'] + Click Element xpath=//*[@id='div-app-name-xDemo-App']/following::input[@id='Standard-User-checkbox'] #Click Element xpath=//div[@id='div-app-name-dropdown-xDemo-App'] #Click Element xpath=//div[@id='div-app-name-xDemo-App']/following::input[@id='Standard-User-checkbox'] - Set Selenium Implicit Wait 3000 Click Button xpath=//button[@id='new-user-save-button'] Set Selenium Implicit Wait 3000 #Set Browser Implicit Wait ${GLOBAL_SELENIUM_BROWSER_IMPLICIT_WAIT} - #Select From List xpath=//input[@value='Select application'] DMaaP Bus Ctrl + #Select From List xpath=//input[@value='Select application'] xDemo App #Click Link xpath=//a[@title='Users'] #Page Should Contain Users #Focus xpath=//input[@name='dropdown1'] - Go To ${PORTAL_HOME_PAGE} Click Link xpath=//a[@title='Users'] Click Element xpath=//input[@id='dropdown1'] - Click Element xpath=//li[contains(.,'DMaaP Bus Ctrl')] + Click Element xpath=//li[contains(.,'xDemo App')] #Click Element xpath=//li[contains(.,'XDemo App')] Input Text xpath=//input[@id='input-table-search'] ${Existing_User} Element Text Should Be xpath=(.//*[@id='rowheader_t1_0'])[2] Standard User + Portal admin Edit Standard User Existing user [Documentation] Naviage to Users tab Click Element xpath=(.//*[@id='rowheader_t1_0'])[2] - Click Element xpath=//*[@id='div-app-name-dropdown-DMaaP-Bus-Ctrl'] - Click Element xpath=//*[@id='div-app-name-DMaaP-Bus-Ctrl']/following::input[@id='Standard-User-checkbox'] - Click Element xpath=//*[@id='div-app-name-DMaaP-Bus-Ctrl']/following::input[@id='System-Administrator-checkbox'] + Click Element xpath=//*[@id='div-app-name-dropdown-xDemo-App'] + Click Element xpath=//*[@id='div-app-name-xDemo-App']/following::input[@id='Standard-User-checkbox'] + Click Element xpath=//*[@id='div-app-name-xDemo-App']/following::input[@id='System-Administrator-checkbox'] Set Selenium Implicit Wait 3000 Click Button xpath=//button[@id='new-user-save-button'] Set Selenium Implicit Wait 3000 Page Should Contain Users #Click Button xpath=//input[@id='dropdown1'] - #Click Element xpath=//li[contains(.,'DMaaP Bus Ctrl')] + #Click Element xpath=//li[contains(.,'xDemo App')] Input Text xpath=//input[@id='input-table-search'] ${Existing_User} Element Text Should Be xpath=(.//*[@id='rowheader_t1_0'])[2] System Administrator @@ -494,13 +514,14 @@ Portal admin Edit Standard User Existing user Portal admin Delete Standard User Existing user [Documentation] Naviage to Users tab Click Element xpath=(.//*[@id='rowheader_t1_0'])[2] - Scroll Element Into View xpath=//*[@id='div-app-name-DMaaP-Bus-Ctrl']/following::*[@id='app-item-delete'][1] - Click Element xpath=//*[@id='div-app-name-DMaaP-Bus-Ctrl']/following::*[@id='app-item-delete'][1] + Scroll Element Into View xpath=//*[@id='div-app-name-xDemo-App']/following::*[@id='app-item-delete'][1] + Click Element xpath=//*[@id='div-app-name-xDemo-App']/following::*[@id='app-item-delete'][1] Click Element xpath=//button[@id='div-confirm-ok-button'] Click Button xpath=//button[@id='new-user-save-button'] #Input Text xpath=//input[@id='input-table-search'] ${Existing_User} #Is Element Visible xpath=(//*[contains(.,'Portal')] )[2] - Element Should Not Contain xpath=//*[@table-data='users.accountUsers'] portal + Element Should Not Contain xpath=//*[@table-data='users.accountUsers'] portal + #Element Should Not Contain xpath=//*[@table-data='users.accountUsers'] demo @@ -533,8 +554,8 @@ Portal admin Edit Functional menu Input Text xpath=//input[@id='input-title'] ONAP Test #Input Text xpath=//input[@id='input-url'] http://google.com Click Element xpath=//input[@id='select-app'] - Scroll Element Into View xpath=//li[contains(.,'DMaaP Bus Ctrl')] - Click Element xpath=//li[contains(.,'DMaaP Bus Ctrl')] + Scroll Element Into View xpath=//li[contains(.,'xDemo App')] + Click Element xpath=//li[contains(.,'xDemo App')] Input Text xpath=//input[@id='input-url'] http://google.com Click Button xpath=//button[@id='button-save-continue'] #Click Button xpath=//div[@title='Select Roles'] @@ -573,8 +594,8 @@ Portal admin Microservice Onboarding Input Text xpath=//input[@name='name'] Test Microservice Input Text xpath=//*[@name='desc'] Test Click Element xpath=//input[@id='microservice-details-input-app'] - Scroll Element Into View xpath=//li[contains(.,'DMaaP Bus Ctrl')] - Click Element xpath=//li[contains(.,'DMaaP Bus Ctrl')] + Scroll Element Into View xpath=//li[contains(.,'xDemo App')] + Click Element xpath=//li[contains(.,'xDemo App')] Click Element xpath=//*[@name='desc'] Input Text xpath=//input[@name='url'] ${PORTAL_MICRO_ENDPOINT} Click Element xpath=//input[@id='microservice-details-input-security-type'] @@ -594,37 +615,37 @@ Portal Admin Create Widget for All users Click Link xpath=//a[@title='Widget Onboarding'] Click Button xpath=//button[@ng-click='toggleSidebar()'] Click Button xpath=//button[@id='widget-onboarding-button-add'] - Input Text xpath=//*[@name='name'] ONAP-VID - Input Text xpath=//*[@name='desc'] ONAP VID + Input Text xpath=//*[@name='name'] ONAP-xDemo + Input Text xpath=//*[@name='desc'] ONAP xDemo Click Element xpath=//*[@id='widgets-details-input-endpoint-url'] Scroll Element Into View xpath=//li[contains(.,'Test Microservice')] Click Element xpath=//li[contains(.,'Test Microservice')] Click Element xpath=//*[contains(text(),'Allow all user access')]/preceding::input[@ng-model='widgetOnboardingDetails.widget.allUser'][1] Choose File xpath=//input[@id='widget-onboarding-details-upload-file'] ${WidgetAttachment} Click Button xpath=//button[@id='widgets-details-save-button'] - Wait Until Page Contains ONAP-VID ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT} - Page Should Contain ONAP-VID + Wait Until Page Contains ONAP-xDemo ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT} + Page Should Contain ONAP-xDemo Set Selenium Implicit Wait 3000 GO TO ${PORTAL_HOME_PAGE} Portal Admin Delete Widget for All users [Documentation] Naviage to delete Widget menu tab - #Wait Until Page Contains ONAP-VID ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT} - #Page Should Contain ONAP-VID + #Wait Until Page Contains ONAP-xDemo ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT} + #Page Should Contain ONAP-xDemo #Click Image xpath=//img[@alt='Onap Logo'] Click Link xpath=//a[@title='Widget Onboarding'] Click Element xpath=//input[@id='dropdown1'] - Click Element xpath=//li[contains(.,'DMaaP Bus Ctrl')] - #Wait Until Page Contains xpath=(.//*[contains(text(),'ONAP-VID')]/followi - #Wait Until Page Contains xpath=(.//*[contains(text(),'ONAP-VID')]/following::*[@ng-click='widgetOnboarding.deleteWidget(rowData)'])[1] ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT} + Click Element xpath=//li[contains(.,'xDemo App')] + #Wait Until Page Contains xpath=(.//*[contains(text(),'ONAP-xDemo')]/followi + #Wait Until Page Contains xpath=(.//*[contains(text(),'ONAP-xDemo')]/following::*[@ng-click='widgetOnboarding.deleteWidget(rowData)'])[1] ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT} Click Button xpath=//button[@ng-click='toggleSidebar()'] - Click Element xpath=(.//*[contains(text(),'ONAP-VID')]/following::*[@ng-click='widgetOnboarding.deleteWidget(rowData)'])[1] + Click Element xpath=(.//*[contains(text(),'ONAP-xDemo')]/following::*[@ng-click='widgetOnboarding.deleteWidget(rowData)'])[1] Click Element xpath=//button[@id='div-confirm-ok-button'] Set Selenium Implicit Wait 3000 - Element Should Not Contain xpath=//*[@table-data='portalAdmin.portalAdminsTableData'] ONAP-VID + Element Should Not Contain xpath=//*[@table-data='portalAdmin.portalAdminsTableData'] ONAP-xDemo #Is Element Visible xpath=//*[@table-data='portalAdmin.portalAdminsTableData'] - #Table Column Should Contain .//*[@table-data='portalAdmin.portalAdminsTableData'] 0 ONAP-VID + #Table Column Should Contain .//*[@table-data='portalAdmin.portalAdminsTableData'] 0 ONAP-xDemo #Set Selenium Implicit Wait 3000 @@ -634,13 +655,13 @@ Portal Admin Create Widget for Application Roles Click Link xpath=//a[@title='Widget Onboarding'] Click Button xpath=//button[@ng-click='toggleSidebar()'] Click Button xpath=//button[@id='widget-onboarding-button-add'] - Input Text xpath=//*[@name='name'] ONAP-DMaaP - Input Text xpath=//*[@name='desc'] ONAP DMaaP + Input Text xpath=//*[@name='name'] ONAP-xDemo + Input Text xpath=//*[@name='desc'] ONAP xDemo Click Element xpath=//*[@id='widgets-details-input-endpoint-url'] Scroll Element Into View xpath=//li[contains(.,'Test Microservice')] Click Element xpath=//li[contains(.,'Test Microservice')] Click element xpath=//*[@id="app-select-Select Applications"] - click element xpath=//*[@id="DMaaP-Bus-Ctrl-checkbox"] + click element xpath=//*[@id="xDemo-App-checkbox"] Click element xpath=//*[@name='desc'] click element xpath=//*[@id="app-select-Select Roles"] click element xpath=//*[@id="Standard-User-checkbox"] @@ -650,33 +671,34 @@ Portal Admin Create Widget for Application Roles Click Button xpath=//button[@id='widgets-details-save-button'] Click Image xpath=//img[@alt='Onap Logo'] Set Selenium Implicit Wait 3000 - #Wait Until Page Contains ONAP-VID ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT} + #Wait Until Page Contains ONAP-xDemo ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT} Click Link xpath=//a[@title='Widget Onboarding'] Click Element xpath=//input[@id='dropdown1'] - Click Element xpath=//li[contains(.,'DMaaP Bus Ctrl')] - Page Should Contain ONAP-DMaaP + Click Element xpath=//li[contains(.,'xDemo App')] + Page Should Contain ONAP-xDemo Set Selenium Implicit Wait 3000 GO TO ${PORTAL_HOME_PAGE} - Portal Admin Delete Widget for Application Roles - #Wait Until Page Contains ONAP-VID ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT} - #Page Should Contain ONAP-VID +Portal Admin Delete Widget for Application Roles + #Wait Until Page Contains ONAP-xDemo ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT} + #Page Should Contain ONAP-xDemo #Click Image xpath=//img[@alt='Onap Logo'] Click Link xpath=//a[@title='Widget Onboarding'] Click Element xpath=//input[@id='dropdown1'] - Click Element xpath=//li[contains(.,'DMaaP Bus Ctrl')] - #Wait Until Page Contains xpath=(.//*[contains(text(),'ONAP-VID')]/followi - #Wait Until Page Contains xpath=(.//*[contains(text(),'ONAP-VID')]/following::*[@ng-click='widgetOnboarding.deleteWidget(rowData)'])[1] ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT} + Click Element xpath=//li[contains(.,'xDemo App')] + #Wait Until Page Contains xpath=(.//*[contains(text(),'ONAP-xDemo')]/followi + #Wait Until Page Contains xpath=(.//*[contains(text(),'ONAP-xDemo')]/following::*[@ng-click='widgetOnboarding.deleteWidget(rowData)'])[1] ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT} Click Button xpath=//button[@ng-click='toggleSidebar()'] - Click Element xpath=(.//*[contains(text(),'ONAP-DMaaP')]/following::div[@ng-click='widgetOnboarding.deleteWidget(rowData)'])[1] + Scroll Element Into View xpath=//*[contains(text(),'ONAP-xDemo')]/following::td[3]/div + Click Element xpath=//*[contains(text(),'ONAP-xDemo')]/following::td[3]/div Click Element xpath=//button[@id='div-confirm-ok-button'] Set Selenium Implicit Wait 3000 - Element Should Not Contain xpath=//*[@table-data='portalAdmin.portalAdminsTableData'] ONAP-DMaaP + Element Should Not Contain xpath=//*[@table-data='portalAdmin.portalAdminsTableData'] ONAP-xDemo #Is Element Visible xpath=//*[@table-data='portalAdmin.portalAdminsTableData'] - #Table Column Should Contain .//*[@table-data='portalAdmin.portalAdminsTableData'] 0 ONAP-VID + #Table Column Should Contain .//*[@table-data='portalAdmin.portalAdminsTableData'] 0 ONAP-xDemo #Set Selenium Implicit Wait 3000 @@ -741,7 +763,7 @@ Portal Admin Category Notifications Click Element //*[contains(text(),'Broadcast to All Categories')]/following::*[contains(text(),'No')][1] #Select Radio Button //label[@class='radio'] radio-button-approles Click Element xpath=//*[contains(text(),'Categories')]/following::*[contains(text(),'Application Roles')][1] - Click Element xpath=//*[contains(text(),'DMaaP Bus Ctrl')]/preceding::input[@ng-model='member.isSelected'][1] + Click Element xpath=//*[contains(text(),'xDemo App')]/preceding::input[@ng-model='member.isSelected'][1] Input Text xpath=//input[@id='datepicker-start'] ${CurrentDay} Input Text xpath=//input[@id='datepicker-end'] ${NextDay} Input Text xpath=//*[@id="add-notification-input-title"] ONAP VID Category Automation @@ -784,10 +806,12 @@ Application admin Login To Portal GUI Application Admin Navigation Application Link Tab [Documentation] Logs into Portal GUI as application admin Click Link xpath=//a[@id='parent-item-Home'] - Click Element xpath=.//h3[contains(text(),'Virtual Infras...')]/following::div[1] - Page Should Contain Welcome to VID - Click Element xpath=//i[@class='ion-close-round'] - Click Element xpath=(.//span[@id='tab-Home'])[1] + Click Element xpath=.//h3[contains(text(),'xDemo App')]/following::div[1] + Page Should Contain ONAP Portal + Scroll Element Into View xpath=//i[@class='ion-close-round'] + Click Element xpath=//i[@class='ion-close-round'] + Set Selenium Implicit Wait 3000 + #Click Element xpath=(.//span[@id='tab-Home'])[1] Application Admin Navigation Functional Menu @@ -795,7 +819,7 @@ Application Admin Navigation Functional Menu Click Link xpath=//a[contains(.,'Manage')] Mouse Over xpath=//*[contains(text(),'Technology Insertion')] Click Link xpath= //*[contains(text(),'Infrastructure VNF Provisioning')] - Page Should Contain Welcome to VID + Page Should Contain ONAP Portal Click Element xpath=//i[@class='ion-close-round'] Click Element xpath=(.//span[@id='tab-Home'])[1] @@ -810,20 +834,20 @@ Application admin Add Standard User Existing user Click Button xpath=//button[@id='button-search-users'] Click Element xpath=//span[@id='result-uuid-0'] Click Button xpath=//button[@id='next-button'] - Click Element xpath=//*[@id='div-app-name-dropdown-DMaaP-Bus-Ctrl'] - Click Element xpath=//*[@id='div-app-name-DMaaP-Bus-Ctrl']/following::input[@id='Standard-User-checkbox'] + Click Element xpath=//*[@id='div-app-name-dropdown-xDemo-App'] + Click Element xpath=//*[@id='div-app-name-xDemo-App']/following::input[@id='Standard-User-checkbox'] Set Selenium Implicit Wait 3000 Click Button xpath=//button[@id='new-user-save-button'] Set Selenium Implicit Wait 3000 #Set Browser Implicit Wait ${GLOBAL_SELENIUM_BROWSER_IMPLICIT_WAIT} - #Select From List xpath=//input[@value='Select application'] DMaaP Bus Ctrl + #Select From List xpath=//input[@value='Select application'] xDemo App #Click Link xpath=//a[@title='Users'] #Page Should Contain Users Go To ${PORTAL_HOME_PAGE} Set Selenium Implicit Wait 3000 Click Link xpath=//a[@title='Users'] Click Element xpath=//input[@id='dropdown1'] - Click Element xpath=//li[contains(.,'DMaaP Bus Ctrl')] + Click Element xpath=//li[contains(.,'xDemo App')] Input Text xpath=//input[@id='input-table-search'] ${Existing_User} Element Text Should Be xpath=(.//*[@id='rowheader_t1_0'])[2] Standard User @@ -831,15 +855,15 @@ Application admin Add Standard User Existing user Application admin Edit Standard User Existing user [Documentation] Naviage to Users tab Click Element xpath=(.//*[@id='rowheader_t1_0'])[2] - Click Element xpath=//*[@id='div-app-name-dropdown-DMaaP-Bus-Ctrl'] - Click Element xpath=//*[@id='div-app-name-DMaaP-Bus-Ctrl']/following::input[@id='Standard-User-checkbox'] - Click Element xpath=//*[@id='div-app-name-DMaaP-Bus-Ctrl']/following::input[@id='System-Administrator-checkbox'] + Click Element xpath=//*[@id='div-app-name-dropdown-xDemo-App'] + Click Element xpath=//*[@id='div-app-name-xDemo-App']/following::input[@id='Standard-User-checkbox'] + Click Element xpath=//*[@id='div-app-name-xDemo-App']/following::input[@id='System-Administrator-checkbox'] Set Selenium Implicit Wait 3000 Click Button xpath=//button[@id='new-user-save-button'] Set Selenium Implicit Wait 3000 Page Should Contain Users #Click Button xpath=//input[@id='dropdown1'] - #Click Element xpath=//li[contains(.,'DMaaP Bus Ctrl')] + #Click Element xpath=//li[contains(.,'xDemo App')] Input Text xpath=//input[@id='input-table-search'] ${Existing_User} Element Text Should Be xpath=(.//*[@id='rowheader_t1_0'])[2] System Administrator @@ -847,13 +871,15 @@ Application admin Edit Standard User Existing user Application admin Delete Standard User Existing user [Documentation] Naviage to Users tab Click Element xpath=(.//*[@id='rowheader_t1_0'])[2] - Scroll Element Into View xpath=//*[@id='div-app-name-DMaaP-Bus-Ctrl']/following::*[@id='app-item-delete'][1] - Click Element xpath=//*[@id='div-app-name-DMaaP-Bus-Ctrl']/following::*[@id='app-item-delete'][1] + Scroll Element Into View xpath=//*[@id='div-app-name-xDemo-App']/following::*[@id='app-item-delete'][1] + Click Element xpath=//*[@id='div-app-name-xDemo-App']/following::*[@id='app-item-delete'][1] Click Element xpath=//button[@id='div-confirm-ok-button'] Click Button xpath=//button[@id='new-user-save-button'] #Input Text xpath=//input[@id='input-table-search'] ${Existing_User} #Is Element Visible xpath=(//*[contains(.,'Portal')] )[2] Element Should Not Contain xpath=//*[@table-data='users.accountUsers'] Portal + Click Image xpath=//img[@alt='Onap Logo'] + Set Selenium Implicit Wait 3000 @@ -886,8 +912,8 @@ Standared user Login To Portal GUI Standared user Navigation Application Link Tab [Documentation] Logs into Portal GUI as application admin #Portal admin Go To Portal HOME - Click Element xpath=.//h3[contains(text(),'Virtual Infras...')]/following::div[1] - Page Should Contain Welcome to VID + Click Element xpath=.//h3[contains(text(),'xDemo App')]/following::div[1] + Page Should Contain ONAP Portal Click Element xpath=(.//span[@id='tab-Home'])[1] @@ -981,7 +1007,7 @@ Portal Application Account Management validation Portal AAF new fields [Documentation] Naviage to user Application details tab Click Link xpath=//a[@title='Application Onboarding'] - Click Element xpath=//td[contains(.,'DMaaP Bus Ctrl')] + Click Element xpath=//td[contains(.,'xDemo App')] Page Should Contain Name Space Page Should Contain Centralized Click Element xpath=//button[@id='button-notification-cancel'] diff --git a/test/csit/tests/vfc/gvnfm-vnflcm/test.robot b/test/csit/tests/vfc/gvnfm-vnflcm/test.robot index a9d3b4539..cf3d12bc3 100644 --- a/test/csit/tests/vfc/gvnfm-vnflcm/test.robot +++ b/test/csit/tests/vfc/gvnfm-vnflcm/test.robot @@ -29,25 +29,3 @@ VnflcmSwaggerTest ${response_json} json.loads ${resp.content} ${swagger_version}= Convert To String ${response_json['swagger']} Should Be Equal ${swagger_version} 2.0 - -CreateVnfTest - [Documentation] Create Vnf function test - ${json_value}= json_from_file ${create_vnf_json} - ${json_string}= string_from_json ${json_value} - ${headers} Create Dictionary Content-Type=application/json Accept=application/json - Create Session web_session http://${VNFLCM_IP}:8801 headers=${headers} - Set Request Body ${json_string} - ${resp}= Post Request web_session ${create_vnf_url} ${json_string} - ${responese_code}= Convert To String ${resp.status_code} - List Should Contain Value ${return_ok_list} ${responese_code} - ${response_json} json.loads ${resp.content} - ${vnfInstId}= Convert To String ${response_json['vnfInstanceId']} - Set Global Variable ${vnfInstId} - -DeleteVnfTest - [Documentation] Delete Vnf function test - ${headers} Create Dictionary Content-Type=application/json Accept=application/json - Create Session web_session http://${VNFLCM_IP}:8801 headers=${headers} - ${resp}= Delete Request web_session ${delete_vnf_url}/${vnfInstId} - ${responese_code}= Convert To String ${resp.status_code} - List Should Contain Value ${return_ok_list} ${responese_code} diff --git a/test/csit/tests/vfc/nfvo-driver-ems/test.robot b/test/csit/tests/vfc/nfvo-driver-ems/test.robot index e8414a579..e1a57760d 100755 --- a/test/csit/tests/vfc/nfvo-driver-ems/test.robot +++ b/test/csit/tests/vfc/nfvo-driver-ems/test.robot @@ -6,7 +6,7 @@ Library json *** Variables *** @{return_ok_list}= 200 201 202 -${queryswagger_url} /api/emsdriver/v1/swagger +${queryswagger_url} /api/emsdriver/v1/swagger.json *** Test Cases *** EMSDriverSwaggerTest @@ -26,4 +26,6 @@ EMSDriverSwaggerByMSBTest Create Session web_session http://${MSB_IAG_IP}:80 headers=${headers} ${resp}= Get Request web_session ${queryswagger_url} ${responese_code}= Convert To String ${resp.status_code} - Should Be Equal 2.0 2.0
\ No newline at end of file + Should Be Equal 2.0 2.0 + +
\ No newline at end of file diff --git a/test/ete/labs/windriver/Integration-Stable-openrc.sh b/test/ete/labs/windriver/Integration-Stable-openrc.sh new file mode 100644 index 000000000..1d68adc25 --- /dev/null +++ b/test/ete/labs/windriver/Integration-Stable-openrc.sh @@ -0,0 +1,52 @@ +#!/usr/bin/env bash + +# To use an OpenStack cloud you need to authenticate against the Identity +# service named keystone, which returns a **Token** and **Service Catalog**. +# The catalog contains the endpoints for all services the user/tenant has +# access to - such as Compute, Image Service, Identity, Object Storage, Block +# Storage, and Networking (code-named nova, glance, keystone, swift, +# cinder, and neutron). +# +# *NOTE*: Using the 3 *Identity API* does not necessarily mean any other +# OpenStack API is version 3. For example, your cloud provider may implement +# Image API v1.1, Block Storage API v2, and Compute API v2.0. OS_AUTH_URL is +# only for the Identity API served through keystone. +export OS_AUTH_URL=http://10.12.25.2:5000/v3 + +# With the addition of Keystone we have standardized on the term **project** +# as the entity that owns the resources. +export OS_PROJECT_ID=3583253e932845a09cd4c8ca2f31d095 +export OS_PROJECT_NAME="Integration-Stable" +export OS_USER_DOMAIN_NAME="Default" +if [ -z "$OS_USER_DOMAIN_NAME" ]; then unset OS_USER_DOMAIN_NAME; fi + +# unset v2.0 items in case set +unset OS_TENANT_ID +unset OS_TENANT_NAME + +# In addition to the owning entity (tenant), OpenStack stores the entity +# performing the action as the **user**. +export OS_USERNAME="gary_wu" + +# Remote Openstack clients will need to set this environment if +# connecting to an HTTPS enabled endpoint +CERT_MSG="Please enter a path for your CA certificate pem file, \ +or press enter if you are not using HTTPS " +read -p "$CERT_MSG" OS_CACERT_INPUT +if [ ! -z "$OS_CACERT_INPUT" ] +then + export OS_CACERT=$(readlink -f $OS_CACERT_INPUT) +fi + +# With Keystone you pass the keystone password. +read -sp "Please enter your OpenStack Password for project $OS_PROJECT_NAME as user $OS_USERNAME: " OS_PASSWORD_INPUT +export OS_PASSWORD=$OS_PASSWORD_INPUT + +# If your configuration has multiple regions, we set that information here. +# OS_REGION_NAME is optional and only valid in certain environments. +export OS_REGION_NAME="RegionOne" +# Don't leave a blank variable, unset it if it was empty +if [ -z "$OS_REGION_NAME" ]; then unset OS_REGION_NAME; fi + +export OS_INTERFACE=public +export OS_IDENTITY_API_VERSION=3 diff --git a/test/ete/labs/windriver/onap.env b/test/ete/labs/windriver/onap.env new file mode 100644 index 000000000..5eb5d367f --- /dev/null +++ b/test/ete/labs/windriver/onap.env @@ -0,0 +1,185 @@ +parameters: + + ############################################## + # # + # Parameters used across all ONAP components # + # # + ############################################## + + public_net_id: 971040b2-7059-49dc-b220-4fab50cb2ad4 + + ubuntu_1404_image: ubuntu-14-04-cloud-amd64 + + ubuntu_1604_image: ubuntu-16-04-cloud-amd64 + + centos_7_image: CentOS-7 + + flavor_small: m1.small + + flavor_medium: m1.medium + + flavor_large: m1.large + + flavor_xlarge: m1.xlarge + + flavor_xxlarge: m1.xxlarge + + security_group: default + + vm_base_name: onap + + key_name: onap_key + + dcae_key_name: dcae_key + + pub_key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDKXDgoo3+WOqcUG8/5uUbk81+yczgwC4Y8ywTmuQqbNxlY1oQ0YxdMUqUnhitSXs5S/yRuAVOYHwGg2mCs20oAINrP+mxBI544AMIb9itPjCtgqtE2EWo6MmnFGbHB4Sx3XioE7F4VPsh7japsIwzOjbrQe+Mua1TGQ5d4nfEOQaaglXLLPFfuc7WbhbJbK6Q7rHqZfRcOwAMXgDoBqlyqKeiKwnumddo2RyNT8ljYmvB6buz7KnMinzo7qB0uktVT05FH9Rg0CTWH5norlG5qXgP2aukL0gk1ph8iAt7uYLf1ktp+LJI2gaF6L0/qli9EmVCSLr1uJ38Q8CBflhkh + + dcae_pub_key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC94pcIva90rzXumORjMCf16qjVrn5+ykfW6uMcn+DPlifU+ihtqx4Up26v1gVZyCuY8BFmbhm4YGxnRykNfi71kYbWOasUFzY86dtptCuLVMRLsMYWwOA3sHQ5IcUYNbWmChh4LyOIfhy4p2atCmB1UUkQf7Icg8LokCIcdI3IohlNko50t9KOIhBvqC7Bnegnl6zpoYdtYQppdgp5xesdhYRrdIGmT86cH2QbImpcR3tMTty7SLsw5WdTSfUFwfm76s07ivUDfCRMCJoWcxQeh6my7P7BkfDYMVIYRyfWmoIf2iv3UrqahHTcCiL79SRiD0iCt0K2SEgGsVyCX2jf + + nexus_repo: https://nexus.onap.org/content/sites/raw + + nexus_docker_repo: nexus3.onap.org:10001 + + nexus_username: docker + + nexus_password: docker + + dmaap_topic: AUTO + + artifacts_version: 1.1.0-SNAPSHOT + + openstack_tenant_id: SAMPLE + + openstack_username: SAMPLE + + openstack_api_key: SAMPLE + + openstack_auth_method: password + + openstack_region: RegionOne + + horizon_url: http://10.12.25.2/horizon + + keystone_url: http://10.12.25.2:5000 + + cloud_env: openstack + + + ###################### + # # + # Network parameters # + # # + ###################### + + dns_list: 8.8.8.8 + external_dns: 8.8.8.8 + oam_network_cidr: 10.0.0.0/16 + + ### Private IP addresses ### + + aai1_ip_addr: 10.0.1.1 + aai2_ip_addr: 10.0.1.2 + appc_ip_addr: 10.0.2.1 + dcae_ip_addr: 10.0.4.1 + dcae_coll_ip_addr: 10.0.4.102 + dcae_db_ip_addr: 10.0.4.101 + dcae_hdp1_ip_addr: 10.0.4.103 + dcae_hdp2_ip_addr: 10.0.4.104 + dcae_hdp3_ip_addr: 10.0.4.105 + dns_ip_addr: 10.0.100.1 + so_ip_addr: 10.0.5.1 + mr_ip_addr: 10.0.11.1 + policy_ip_addr: 10.0.6.1 + portal_ip_addr: 10.0.9.1 + robot_ip_addr: 10.0.10.1 + sdc_ip_addr: 10.0.3.1 + sdnc_ip_addr: 10.0.7.1 + vid_ip_addr: 10.0.8.1 + clamp_ip_addr: 10.0.12.1 + openo_ip_addr: 10.0.14.1 + + dcae_coll_float_ip: 10.12.0.32 + dcae_db_float_ip: 10.12.0.24 + dcae_hdp1_float_ip: 10.12.0.30 + dcae_hdp2_float_ip: 10.12.0.33 + dcae_hdp3_float_ip: 10.12.0.15 + + ########################### + # # + # Parameters used by DCAE # + # # + ########################### + + dcae_base_environment: 1-NIC-FLOATING-IPS + + dcae_zone: ZONE + + dcae_state: STATE + + nexus_repo_root: https://nexus.onap.org + + nexus_url_snapshot: https://nexus.onap.org/content/repositories/snapshots + + gitlab_branch: master + + dcae_code_version: 1.1.0 + + + ################################ + # # + # Docker versions and branches # + # # + ################################ + + aai_branch: master + appc_branch: master + so_branch: master + mr_branch: master + dcae_branch: master + policy_branch: master + portal_branch: master + robot_branch: master + sdc_branch: master + sdnc_branch: master + vid_branch: master + clamp_branch: master + vnfsdk_branch: master + + aai_docker: 1.1-STAGING-latest + appc_docker: 1.1-STAGING-latest + so_docker: 1.1-STAGING-latest + mr_docker: 1.1-STAGING-latest + dcae_docker: 1.1-latest + policy_docker: 1.1-STAGING-latest + portal_docker: 1.3-STAGING-latest + robot_docker: 1.1-STAGING-latest + sdc_docker: 1.1-STAGING-latest + sdnc_docker: 1.2-STAGING-latest + vid_docker: 1.1-STAGING-latest + clamp_docker: 1.1-STAGING-latest + msb_docker: latest + mvim_docker: latest + vfc_docker: latest + uui_docker: latest + esr_docker: latest + dgbuilder_docker: 0.1-STAGING-latest + cli_docker: 1.1-STAGING-latest + + ##################### + # # + # ONAP repositories # + # # + ##################### + aai_repo: http://gerrit.onap.org/r/aai/test-config + appc_repo: http://gerrit.onap.org/r/appc/deployment.git + dcae_repo: http://gerrit.onap.org/r/dcae/demo/startup/controller.git + mr_repo: http://gerrit.onap.org/r/dcae/demo/startup/message-router.git + so_repo: http://gerrit.onap.org/r/so/docker-config.git + policy_repo: http://gerrit.onap.org/r/policy/docker.git + portal_repo: http://gerrit.onap.org/r/portal.git + robot_repo: http://gerrit.onap.org/r/testsuite/properties.git + sdc_repo: http://gerrit.onap.org/r/sdc.git + sdnc_repo: http://gerrit.onap.org/r/sdnc/oam.git + vid_repo: http://gerrit.onap.org/r/vid.git + clamp_repo: http://gerrit.onap.org/r/clamp.git + vnfsdk_repo: http://gerrit.onap.org/r/vnfsdk/refrepo.git diff --git a/test/ete/scripts/deploy-onap.sh b/test/ete/scripts/deploy-onap.sh new file mode 100755 index 000000000..3c69e15e8 --- /dev/null +++ b/test/ete/scripts/deploy-onap.sh @@ -0,0 +1,53 @@ +#!/bin/bash + +if [ -z "$OS_AUTH_URL" ] || [ -z "$OS_USERNAME" ] +then + echo "ERROR: OpenStack environment variables not set. Please source your OpenStack RC script first." + exit 1 +fi + + +if [ -z "$WORKSPACE" ]; then + export WORKSPACE=`git rev-parse --show-toplevel` +fi + + + +# Assume that if ROBOT_VENV is set, we don't need to reinstall robot +if [ -f ${WORKSPACE}/env.properties ]; then + source ${WORKSPACE}/env.properties +fi + +if [ ! -z "$ONAP_VENV" ] && [ -f "$ONAP_VENV/bin/activate" ]; then + source ${ONAP_VENV}/bin/activate +else + ONAP_VENV=$(mktemp -d --suffix=_onap_venv) + virtualenv ${ONAP_VENV} + source ${ONAP_VENV}/bin/activate + + pip install --upgrade pip + pip install --upgrade python-openstackclient python-heatclient + + echo "ONAP_VENV=${ONAP_VENV}" >> $WORKSPACE/env.properties +fi +echo "ONAP_VENV=${ONAP_VENV}" + +if [ -z "$ONAP_WORKDIR" ]; then + ONAP_WORKDIR=$(mktemp -d --suffix=_onap_workdir) + echo "ONAP_WORKDIR=${ONAP_WORKDIR}" >> $WORKSPACE/env.properties +fi +echo "ONAP_WORKDIR=${ONAP_WORKDIR}" +if [ ! -d ${ONAP_WORKDIR}/demo ]; then + git clone http://gerrit.onap.org/r/demo ${ONAP_WORKDIR}/demo +else + pushd ${ONAP_WORKDIR}/demo + git pull + popd +fi + + + +STACK="ete-$(uuidgen | cut -c-8)" +echo "Stack Name: ${STACK}" +openstack stack create -t ${ONAP_WORKDIR}/demo/heat/ONAP/onap_openstack.yaml -e ${WORKSPACE}/test/ete/labs/windriver/onap.env $STACK + |