blob: 9e764a1080452eec117aa0b0c76c9bff9018717b [file] [log] [blame]
# Copyright 2017-present Open Networking Foundation
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
*** Settings ***
Library Process
Library ../common/auto_test.py
Library ../common/volthaMngr.py
Library ../common/preprovisioning.py
Library volthaMngr.VolthaMngr
Library preprovisioning.Preprovisioning
Test Setup Start Voltha
Test Teardown Stop Voltha
*** Variables ***
${LOG_DIR} /tmp/voltha_test_results
${ROOT_DIR} ${EMPTY}
${VOLTHA_DIR} ${EMPTY}
${PONSIM_PID} ${EMPTY}
${ONOS_SSH_PORT} 8101
${OLT_IP_ADDR} olt.voltha.svc
${OLT_PORT_ID} 50060
*** Test Cases ***
Provisioning
[Documentation] VOLTHA Pre-provisioning
... This test preprovisions a ponsim-OLT with given IP address and TCP port
... and then enables both it and a number of ponsim-ONUs with predefined IP/port
... information. It then verifies that all the physical and logical devices are ACTIVE
... and REACHEABLE
PSet Log Dirs ${LOG_DIR}
Configure ${OLT_IP_ADDR} ${OLT_PORT_ID}
Preprovision Olt
Wait Until Keyword Succeeds 60s 2s Query Devices Before Enable
Enable
Wait Until Keyword Succeeds 60s 2s Query Devices After Enable
*** Keywords ***
Start Voltha
[Documentation] Start Voltha infrastructure to run test(s). This includes starting all
... Kubernetes Pods and start collection of logs. PonsimV2 has now been
... containerized and does not need to be managed separately
${ROOT_DIR} ${VOLTHA_DIR} ${LOG_DIR} Dir Init ${LOG_DIR}
VSet Log Dirs ${ROOT_DIR} ${VOLTHA_DIR} ${LOG_DIR}
Stop Voltha
Start All Pods
Sleep 60
Collect Pod Logs
${pod_status} Run kubectl get pods --all-namespaces
Log To Console \n ${pod_status}
Alter Onos NetCfg
Stop Voltha
[Documentation] Stop Voltha infrastucture. This includes clearing all installation milestones
... files and stopping all Kubernetes pods
Stop All Pods
Reset Kube Adm