Revert "updating documentation on bbsim test"
This reverts commit d48db7b9137a96e441424820aca7ff617294ba9f.
Change-Id: Ib97ca83f36cb48d1adfac81124515ed7dba1a44a
diff --git a/src/test/cord-api/Tests/BBSim/BBSIM.robot b/src/test/cord-api/Tests/BBSim/BBSIM.robot
deleted file mode 100644
index 17dcf5b..0000000
--- a/src/test/cord-api/Tests/BBSim/BBSIM.robot
+++ /dev/null
@@ -1,121 +0,0 @@
-# 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 ***
-Documentation Test various E2E conditions for seba-in-a-box
-Suite Setup Setup
-Suite Teardown Teardown
-Library Collections
-Library String
-Library OperatingSystem
-Library XML
-Library RequestsLibrary
-Library bbsim_utils.py
-Library ../../Framework/utils/utils.py
-Resource ../../Framework/utils/utils.robot
-Library ../../Framework/restApi.py
-Resource ../../Framework/Subscriber.robot
-Resource ../../Framework/ATTWorkFlowDriver.robot
-Resource ../../Framework/Kubernetes.robot
-Resource ../../Framework/ONU.robot
-Resource ../../Framework/DHCP.robot
-Variables ../../Properties/RestApiProperties.py
-
-*** Variables ***
-${number_of_onus} 16
-
-*** Test Cases ***
-Debug
- [Tags] debug
- Log debug
-
-Create Subscriber and Whitelist for ONUs
- [Documentation] Creates whitelists in ATT-WF for each onu device
- [Tags] play
- ${att_workflow_service_id}= Get Service Owner Id ${ATT_SERVICE}
- ${volt_service_id}= Get Service Owner Id ${VOLT_SERVICE}
- ${rcord_service_id}= Get Service Owner Id /xosapi/v1/rcord/rcordservices
- CORD Post ${VOLT_DEVICE} {'device_type': 'openolt', 'host': 'bbsim.voltha.svc', 'port': 50060, 'switch_datapath_id': 'of:0000000000000002', 'switch_port': '3', 'outer_tpid': '0x8100', 'uplink': '65536', 'nas_id': 'NAS_ID', 'serial_number': 'bbsim.voltha.svc:50060', 'volt_service_id': ${volt_service_id}}
- @{subscribers}= Generate Subscribers ${number_of_onus} ${rcord_service_id}
- : FOR ${subscriber} IN @{subscribers}
- \ Log To Console ${subscriber}
- \ CORD Post ${VOLT_SUBSCRIBER} ${subscriber}
- @{whitelists}= Generate Whitelists ${number_of_onus} ${att_workflow_service_id}
- : FOR ${whitelist} IN @{whitelists}
- \ Log To Console ${whitelist}
- \ CORD Post ${ATT_WHITELIST} ${whitelist}
-
-ONUs Discovered
- [Documentation] Validates All ONU Devices are discovered and retrieve SNs
- [Tags] onudiscovery
- Wait Until Keyword Succeeds 120s 5s Validate Number of ONU Devices ${number_of_onus}
-
-Validate ONU States
- [Documentation] Validates All ONU Device states are "enabled" and "active"
- [Tags] onustates
- : FOR ${onu} IN @{serial_numbers}
- \ Wait Until Keyword Succeeds 120s 5s Validate ONU States ACTIVE ENABLED ${onu}
-
-Validate ATT WF Driver SIs
- [Documentation] Validates all service instances per onu devices become "approved" and "dhcpdiscovered"
- [Tags] serviceinstances
- : FOR ${onu} IN @{serial_numbers}
- \ Wait Until Keyword Succeeds 180s 2s Validate ATT Workflow Driver SI ENABLED APPROVED ${onu}
- \ Wait Until Keyword Succeeds 240s 2s Validate ATT Workflow Driver SI DHCP State DHCPACK ${onu}
-
-*** Keywords ***
-Setup
- ${server_ip}= Get Environment Variable SERVER_IP localhost
- ${port}= Get Environment Variable SERVER_PORT 30001
- ${auth} = Create List ${XOS_USER} ${XOS_PASSWD}
- ${HEADERS} Create Dictionary Content-Type=application/json
- Create Session ${server_ip} http://${server_ip}:${port} auth=${AUTH} headers=${HEADERS}
- @{container_list}= Create List
- Append To List ${container_list} att-workflow-att-workflow-driver
- Append To List ${container_list} seba-services-volt
- Append To List ${container_list} seba-services-rcord
- Append To List ${container_list} seba-services-fabric-crossconnect
- Append To List ${container_list} seba-services-onos-service
- Append To List ${container_list} xos-core
- Append To List ${container_list} vcore
- Set Suite Variable ${container_list}
-
-Teardown
- #Wait Until Keyword Succeeds 60s 2s Clean Up Objects ${VOLT_SUBSCRIBER}
- #Wait Until Keyword Succeeds 60s 2s Clean Up Objects ${ATT_WHITELIST}
- Delete All Sessions
- #Get Pod Logs
-
-Get Pod Logs
- : FOR ${pod} IN @{container_list}
- \ ${full_pod_name}= Run kubectl get pods --all-namespaces | grep '${pod}' | head -1 | awk '{print $2}'
- \ ${namespace}= Run kubectl get pods --all-namespaces | grep ' ${pod}' | head -1 | awk '{print $1}'
- \ ${output}= Run kubectl logs --timestamps -n ${namespace} ${full_pod_name}
- \ Log ${output}
-
-Validate Number of ONU Devices
- [Arguments] ${expected_onus}
- ${resp}= CORD Get ${ONU_DEVICE}
- ${jsondata}= To Json ${resp.content}
- Log ${jsondata}
- ${length}= Get Length ${jsondata['items']}
- @{serial_numbers}= Create List
- : FOR ${INDEX} IN RANGE 0 ${length}
- \ ${value}= Get From List ${jsondata['items']} ${INDEX}
- \ ${sn}= Get From Dictionary ${value} serial_number
- \ ${contains}= Evaluate "BBSM" in """${sn}"""
- \ Run Keyword if '${contains}' == 'True' Append To List ${serial_numbers} ${sn}
- Set Suite Variable ${serial_numbers}
- ${length_of_bbsim_onus}= Get Length ${serial_numbers}
- Should Be Equal as Integers ${length_of_bbsim_onus} ${expected_onus}
\ No newline at end of file
diff --git a/src/test/cord-api/Tests/BBSim/BBSIMScale.robot b/src/test/cord-api/Tests/BBSim/BBSIMScale.robot
index 721cded..4f07a08 100644
--- a/src/test/cord-api/Tests/BBSim/BBSIMScale.robot
+++ b/src/test/cord-api/Tests/BBSim/BBSIMScale.robot
@@ -74,13 +74,14 @@
: FOR ${onu} IN @{serial_numbers}
\ Wait Until Keyword Succeeds ${timeout} 5s Validate ONU States ACTIVE ENABLED ${onu}
-Validate DHCP Allocations in ONOS
- [Documentation] Verify number of DHCP allocations in ONOS to match number of ONUs
+Validate Hosts and DHCP Allocations in ONOS
+ [Documentation] Verify number of hosts in ONOS match number of onus and verify number of DHCP allocations
[Tags] onosdhcp
+ #Wait Until Keyword Succeeds ${timeout} 5s Validate Hosts in ONOS ${number_of_onus}
Wait Until Keyword Succeeds ${timeout} 5s Validate DHCP Allocations ${number_of_onus}
Validate ATT WF Driver SIs
- [Documentation] Validates all service instances per onu devices become "approved" and "dhcpack"
+ [Documentation] Validates all service instances per onu devices become "approved" and "dhcpdiscovered"
[Tags] serviceinstances
: FOR ${onu} IN @{serial_numbers}
\ Wait Until Keyword Succeeds ${timeout} 2s Validate ATT Workflow Driver SI ENABLED APPROVED ${onu}
diff --git a/src/test/cord-api/Tests/WorkflowValidations/OLT_Reboot.robot b/src/test/cord-api/Tests/WorkflowValidations/OLT_Reboot.robot
deleted file mode 100644
index 1cd63b2..0000000
--- a/src/test/cord-api/Tests/WorkflowValidations/OLT_Reboot.robot
+++ /dev/null
@@ -1,190 +0,0 @@
-# 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 ***
-Documentation Test various end-to-end scenarios with ATT workflow
-Suite Setup Setup Suite
-Suite Teardown Teardown Suite
-Test Setup Setup Test
-Test Teardown Teardown Test
-Library Collections
-Library String
-Library OperatingSystem
-Library XML
-Library RequestsLibrary
-Library ../../Framework/utils/utils.py
-Resource ../../Framework/utils/utils.robot
-Library ../../Framework/restApi.py
-Resource ../../Framework/Subscriber.robot
-Resource ../../Framework/ATTWorkFlowDriver.robot
-Resource ../../Framework/Kubernetes.robot
-Resource ../../Framework/ONU.robot
-Resource ../../Framework/OLT.robot
-Resource ../../Framework/DHCP.robot
-Variables ../../Properties/RestApiProperties.py
-
-*** Variables ***
-${NUM_REBOOTS} 5
-${POD_NAME} flex-pod1-olt
-${KUBERNETES_CONFIGS_DIR} ~/pod-configs/kubernetes-configs
-${HELM_CHARTS_DIR} ~/helm-charts
-${WHITELIST_PATHFILE} ${CURDIR}/data/${POD_NAME}/ATTWhiteList.json
-${SUBSCRIBER_PATHFILE} ${CURDIR}/data/${POD_NAME}/ATTSubscriber.json
-${VOLT_DEVICE_PATHFILE} ${CURDIR}/data/${POD_NAME}/RealOLTDevice.json
-${KUBERNETES_CONF} ${KUBERNETES_CONFIGS_DIR}/${POD_NAME}.conf
-${KUBERNETES_YAML} ${KUBERNETES_CONFIGS_DIR}/${POD_NAME}.yml
-${VOLTHA_POD_NUM} 8
-
-*** Test Cases ***
-Reboot OLT
- [Documentation] Validate olt creation -> olt deletion
- ${reboot_count}= Convert To Integer ${NUM_REBOOTS}
- : FOR ${INDEX} IN RANGE 0 ${reboot_count}
- \ Log To Console \n Reboot Attempt - ${INDEX}
- \ Setup Test
- \ Wait Until Keyword Succeeds 300s 5s Device in VOLTHA and ONOS
- \ Wait Until Keyword Succeeds Validate OLT States in XOS
- \ Teardown Test
-
-*** Keywords ***
-Device in VOLTHA and ONOS
- ${voltha_num}= Run curl -s -U voltha:admin http://10.90.0.101:30125/api/v1/devices| grep '10.90.0.114' | grep '"admin_state":"ENABLED"' | grep '"connect_status":"REACHABLE"' | grep '"oper_status":"ACTIVE"' | wc -l
- ${onos_num}= Run sshpass -p'rocks' ssh onos@10.90.0.101 -p 30115 devices | grep voltha | grep OLT | grep available=true | grep local-status=connected | wc -l
- Should Contain ${voltha_num} 1
- Should Contain ${onos_num} 1
-
-Validate OLT States in XOS
- ${xos_output}= Run curl -s -u admin@opencord.org:letmein http://10.90.0.101:30001/xosapi/v1/volt/oltdevices
- Log ${xos_output}
- ${xos_num}= Run curl -s -u admin@opencord.org:letmein http://10.90.0.101:30001/xosapi/v1/volt/oltdevices | grep '10.90.0.114' | grep '"admin_state": "ENABLED"' | grep '"oper_status": "ACTIVE"' | wc -l
- Should Contain ${xos_num}
-
-Setup Suite
- ${auth} = Create List ${XOS_USER} ${XOS_PASSWD}
- ${HEADERS} Create Dictionary Content-Type=application/json
- Create Session ${server_ip} http://${server_ip}:${server_port} auth=${AUTH} headers=${HEADERS}
- ${att_workflow_service_id}= Get Service Owner Id ${ATT_SERVICE}
- ${volt_service_id}= Get Service Owner Id ${VOLT_SERVICE}
- ${AttWhiteListList}= utils.jsonToList ${WHITELIST_PATHFILE} AttWhiteListInfo
- Set Suite Variable ${AttWhiteListList}
- ${AttWhiteListDict}= utils.listToDict ${AttWhiteListList} 0
- ${AttWhiteListDict}= utils.setFieldValueInDict ${AttWhiteListDict} owner_id ${att_workflow_service_id}
- ${onu_device}= Get From Dictionary ${AttWhiteListDict} serial_number
- Set Global Variable ${onu_device}
- ${onu_location}= Get From Dictionary ${AttWhiteListDict} pon_port_id
- Set Global Variable ${onu_location}
- ${SubscriberList}= utils.jsonToList ${SUBSCRIBER_PATHFILE} SubscriberInfo
- Set Global Variable ${SubscriberList}
- ${SubscriberDict}= utils.listToDict ${SubscriberList} 0
- ${s_tag}= utils.getFieldValueFromDict ${SubscriberDict} s_tag
- ${c_tag}= utils.getFieldValueFromDict ${SubscriberDict} c_tag
- ${VoltDeviceList}= utils.jsonToList ${VOLT_DEVICE_PATHFILE} VOLTDeviceInfo
- ${VoltDeviceDict}= utils.setFieldValueInDict ${VoltDeviceList[0]} volt_service_id ${volt_service_id}
- Set Global Variable ${VoltDeviceList}
- Set Global Variable ${VoltDeviceDict}
- Set Suite Variable ${s_tag}
- Set Suite Variable ${c_tag}
- Set Global Variable ${export_kubeconfig} export KUBECONFIG=${KUBERNETES_CONF}
- # Read variables from yaml file
- ${src_ip}= Evaluate ${hosts}.get("src").get("ip")
- ${src_user}= Evaluate ${hosts}.get("src").get("user")
- ${src_pass}= Evaluate ${hosts}.get("src").get("pass")
- ${src_container_type}= Evaluate ${hosts}.get("src").get("container_type")
- ${src_container_name}= Evaluate ${hosts}.get("src").get("container_name")
- ${src_iface}= Evaluate ${hosts}.get("src").get("dp_iface_name")
- ${dst_ip}= Evaluate ${hosts}.get("dst").get("ip")
- ${dst_user} = Evaluate ${hosts}.get("dst").get("user")
- ${dst_pass}= Evaluate ${hosts}.get("dst").get("pass")
- ${dst_container_type}= Evaluate ${hosts}.get("dst").get("container_type")
- ${dst_container_name}= Evaluate ${hosts}.get("dst").get("container_name")
- ${dst_dp_iface}= Evaluate ${hosts}.get("dst").get("dp_iface_name")
- ${dst_dp_ip}= Evaluate ${hosts}.get("dst").get("dp_iface_ip_qinq")
- ${olt_ip}= Evaluate ${olts}[0].get("ip")
- ${olt_user}= Evaluate ${olts}[0].get("user")
- ${olt_pass}= Evaluate ${olts}[0].get("pass")
- ${k8s_node_ip}= Evaluate ${nodes}[0].get("ip")
- ${k8s_node_user}= Evaluate ${nodes}[0].get("user")
- ${k8s_node_pass}= Evaluate ${nodes}[0].get("pass")
- Set Suite Variable ${src_ip}
- Set Suite Variable ${src_user}
- Set Suite Variable ${src_pass}
- Set Suite Variable ${src_container_type}
- Set Suite Variable ${src_container_name}
- Set Suite Variable ${src_iface}
- Set Suite Variable ${dst_ip}
- Set Suite Variable ${dst_user}
- Set Suite Variable ${dst_pass}
- Set Suite Variable ${dst_container_type}
- Set Suite Variable ${dst_container_name}
- Set Suite Variable ${dst_dp_iface}
- Set Suite Variable ${dst_dp_ip}
- Set Suite Variable ${olt_ip}
- Set Suite Variable ${olt_user}
- Set Suite Variable ${olt_pass}
- Set Suite Variable ${k8s_node_ip}
- Set Suite Variable ${k8s_node_user}
- Set Suite Variable ${k8s_node_pass}
- @{container_list}= Create List
- Append To List ${container_list} att-workflow-att-workflow-driver
- Append To List ${container_list} seba-services-volt
- Append To List ${container_list} seba-services-rcord
- Append To List ${container_list} seba-services-fabric-crossconnect
- Append To List ${container_list} xos-core
- Append To List ${container_list} vcore
- Set Suite Variable ${container_list}
- ${datetime}= Get Current Datetime On Kubernetes Node ${k8s_node_ip} ${k8s_node_user} ${k8s_node_pass}
- Set Suite Variable ${datetime}
-
-Teardown Suite
- [Documentation] Performs any additional cleanup required
- Log Suite Teardown cleanup
- Delete All Sessions
-
-Setup Test
- [Documentation] Re-create Subscriber, whitelist, and olt-device models to test
- Log Re-creating objects
- ${datetime}= Get Current Datetime On Kubernetes Node ${k8s_node_ip} ${k8s_node_user} ${k8s_node_pass}
- Create Whitelist
- Create Subscriber
- Create VOLT
-
-Teardown Test
- [Documentation] Delete xos objects, kills processes and cleans up interfaces on src+dst servers
- Clean Up XOS
- Log Kubernetes Containers Logs Since Time ${datetime} ${container_list}
-
-Clean Up XOS
- [Documentation] Clean up all XOS objects and reinstall voltha after OLT reboots
- Wait Until Keyword Succeeds 60s 2s Clean Up Objects ${VOLT_SUBSCRIBER}
- Wait Until Keyword Succeeds 60s 2s Clean Up Objects ${ATT_WHITELIST}
- Sleep 20s
- Wait Until Keyword Succeeds 30s 2s Validate Subscriber Count 0
- Sleep 10s
- Wait Until Keyword Succeeds 60s 2s Clean Up Objects ${VOLT_DEVICE}
- Sleep 20s
- Wait Until Keyword Succeeds 60s 2s Clean Up Objects ${ATT_SERVICEINSTANCES}
- Wait Until Keyword Succeeds 120s 10s Check Remote System Reachability False ${olt_ip}
- Wait Until Keyword Succeeds 120s 10s Check Remote System Reachability True ${olt_ip}
- Wait Until Keyword Succeeds 300s 1s Openolt is Up ${olt_ip} ${olt_user} ${olt_pass}
-
-Create Whitelist
- ${AttWhiteListDict}= utils.listToDict ${AttWhiteListList} 0
- CORD Post ${ATT_WHITELIST} ${AttWhiteListDict}
-
-Create Subscriber
- ${SubscriberDict}= utils.listToDict ${SubscriberList} 0
- Wait Until Keyword Succeeds 120s 15s CORD Post ${VOLT_SUBSCRIBER} ${SubscriberDict}
-
-Create VOLT
- CORD Post ${VOLT_DEVICE} ${VoltDeviceDict}
diff --git a/src/test/cord-api/Tests/WorkflowValidations/data/SIABBandwidthprofile.json b/src/test/cord-api/Tests/WorkflowValidations/data/SIABBandwidthprofile.json
deleted file mode 100644
index 948d92e..0000000
--- a/src/test/cord-api/Tests/WorkflowValidations/data/SIABBandwidthprofile.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "BandwidthprofileInfo" : [
- {
- "name": "SIAB_Upstream_TP",
- "cir": 111,
- "cbs": 222,
- "eir": 333,
- "ebs": 444,
- "air": 555
- },
- {
- "name": "SIAB_Downstream_TP",
- "cir": 555,
- "cbs": 444,
- "eir": 333,
- "ebs": 222,
- "air": 111
- }
- ]
-}
diff --git a/src/test/cord-api/Tests/XosScaleValidations/xos-service-migration.robot b/src/test/cord-api/Tests/XosScaleValidations/xos-service-migration.robot
deleted file mode 100644
index 8471c8d..0000000
--- a/src/test/cord-api/Tests/XosScaleValidations/xos-service-migration.robot
+++ /dev/null
@@ -1,66 +0,0 @@
-*** Settings ***
-Documentation Test migration of a Service in the core
-Library RequestsLibrary
-Library HttpLibrary.HTTP
-Library Collections
-Library String
-Library OperatingSystem
-Library DateTime
-Library ../../Framework/utils/utils.py
-Resource ../../Framework/utils/utils.robot
-Library ../../Framework/restApi.py
-Variables ../../Properties/RestApiProperties.py
-Suite Setup Setup
-Suite Teardown Teardown
-
-*** Variables ***
-${timeout} 300s
-
-*** Test Cases ***
-Validate Service Version A
- [Documentation] Validate fields from model in version A
- [Tags] test1
- ${resp} = CORD Get /xosapi/v1/core/users
- ${jsondata} = To Json ${resp.content}
- ${length} = Get Length ${jsondata['items']}
- : FOR ${INDEX} IN RANGE 0 ${length}
- \ ${dict}= Get From List ${jsondata['items']} ${INDEX}
- \ ${keys}= Get Dictionary Keys ${dict}
- : FOR ${field} IN @{model_A_fields}
- \ List Should Contain Value ${keys} ${field}
-
-Upgrade Service
- [Documentation] Upgrade the version of the service and wait for completion
- [Tags] test2
- Run helm upgrade --set imageTag=2.0.0 demosimpleexampleservice
- Wait Until Keyword Succeeds ${timeout} 5s Validate Pod Running
-
-Validate Service Version B
- [Documentation] Validate fields from model in upgraded version B (2.0.0)
- [Tags] test3
- ${resp} = CORD Get /xosapi/v1/core/users
- ${jsondata} = To Json ${resp.content}
- ${length} = Get Length ${jsondata['items']}
- : FOR ${INDEX} IN RANGE 0 ${length}
- \ ${dict}= Get From List ${jsondata['items']} ${INDEX}
- \ ${keys}= Get Dictionary Keys ${dict}
- : FOR ${field} IN @{model_B_fields}
- \ List Should Contain Value ${keys} ${field}
-
-*** Keywords ***
-Setup
- ${auth} = Create List ${XOS_USER} ${XOS_PASSWD}
- ${HEADERS} Create Dictionary Content-Type=application/json allow_modify_feedback=True
- Create Session ${server_ip} http://${server_ip}:${server_port} auth=${AUTH} headers=${HEADERS}
- @{model_A_fields}= Create List firstname lastname timezone
- @{model_B_fields}= Create List firstname lastname timezone newBfield
- Set Suite Variable @{model_A_fields}
- Set Suite Variable @{model_B_fields}
-
-Teardown
- [Documentation] Delete all https sessions
- Delete All Sessions
-
-Validate Pod Running
- ${output}= Run kubectl get pods | grep demo-simpleexampleservice | grep -i running | grep 1/1 | wc -l
- Should Be Equal As Integers ${output} 1