TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 1 | # Copyright 2020 - present Open Networking Foundation |
| 2 | # |
| 3 | # Licensed under the Apache License, Version 2.0 (the "License"); |
| 4 | # you may not use this file except in compliance with the License. |
| 5 | # You may obtain a copy of the License at |
| 6 | # |
| 7 | # http://www.apache.org/licenses/LICENSE-2.0 |
| 8 | # |
| 9 | # Unless required by applicable law or agreed to in writing, software |
| 10 | # distributed under the License is distributed on an "AS IS" BASIS, |
| 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 12 | # See the License for the specific language governing permissions and |
| 13 | # limitations under the License. |
| 14 | |
| 15 | *** Settings *** |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 16 | Documentation Test different Reconcile scenarios of ONU Go adapter with all three workflows ATT, DT and TT. |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 17 | ... Test suite is dedicated for only one ONU! Run robot with bbsim-kind.yaml only! |
| 18 | ... Not for DT/TT workflow! |
| 19 | ... Hint: default timeout in BBSim to mimic OLT reboot is 60 seconds! |
| 20 | ... This behaviour of BBSim can be modified by 'oltRebootDelay: 60' in BBSim section of helm chart or |
| 21 | ... used values.yaml during 'voltha up'. |
| 22 | Suite Setup Setup Suite |
| 23 | Suite Teardown Teardown Suite |
| 24 | Test Setup Setup |
| 25 | Test Teardown Teardown |
| 26 | Library Collections |
| 27 | Library String |
| 28 | Library OperatingSystem |
| 29 | Library XML |
| 30 | Library RequestsLibrary |
| 31 | Library ../../libraries/DependencyLibrary.py |
| 32 | Resource ../../libraries/onos.robot |
| 33 | Resource ../../libraries/voltctl.robot |
| 34 | Resource ../../libraries/voltha.robot |
| 35 | Resource ../../libraries/utils.robot |
| 36 | Resource ../../libraries/k8s.robot |
| 37 | Resource ../../libraries/onu_utilities.robot |
| 38 | Resource ../../variables/variables.robot |
| 39 | |
| 40 | *** Variables *** |
Hardik Windlass | 4288c6a | 2021-09-28 07:22:06 +0000 | [diff] [blame] | 41 | ${NAMESPACE} voltha |
| 42 | ${INFRA_NAMESPACE} default |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 43 | ${timeout} 60s |
| 44 | ${of_id} 0 |
| 45 | ${logical_id} 0 |
| 46 | ${has_dataplane} True |
| 47 | ${external_libs} True |
| 48 | ${teardown_device} True |
| 49 | ${scripts} ../../scripts |
| 50 | # Per-test logging on failure is turned off by default; set this variable to enable |
| 51 | ${container_log_dir} ${None} |
| 52 | # flag for first test, needed due default timeout in BBSim to mimic OLT reboot of 60 seconds |
| 53 | ${firsttest} True |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 54 | # determines the environment workflow: DT, TT or ATT (default) |
| 55 | # example: -v workflow:DT |
| 56 | ${workflow} ATT |
TorstenThieme | 4798369 | 2021-06-17 10:43:35 +0000 | [diff] [blame] | 57 | # KV Store Prefix |
| 58 | # example: -v kvstoreprefix:voltha_voltha |
| 59 | ${kvstoreprefix} voltha_voltha |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 60 | # flag debugmode is used, if true timeout calculation various, can be passed via the command line too |
| 61 | # example: -v debugmode:True |
| 62 | ${debugmode} False |
| 63 | # logging flag to enable Collect Logs, can be passed via the command line too |
| 64 | # example: -v logging:True |
| 65 | ${logging} False |
| 66 | # if True execution will be paused before clean up, only use in case of manual testing, do not use in ci pipeline! |
| 67 | # example: -v pausebeforecleanup:True |
| 68 | ${pausebeforecleanup} False |
| 69 | # if True some outputs to console are done during running tests e.g. long duration flow test |
| 70 | # example: -v print2console:True |
| 71 | ${print2console} False |
| 72 | # if True (hard) kill will be used to restart onu adapter, else (soft) restart mechanism of k8s will be used |
| 73 | # example: -v usekill2restart:True |
| 74 | ${usekill2restart} False |
TorstenThieme | 4507160 | 2021-03-16 12:14:37 +0000 | [diff] [blame] | 75 | # if True etcd check will be executed in test case teardown, if False etcd check will be executed in suite teardown |
| 76 | # example: -v etcdcheckintestteardown:False |
| 77 | ${etcdcheckintestteardown} True |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 78 | ${data_dir} ../data |
TorstenThieme | 70bc526 | 2021-01-19 12:12:55 +0000 | [diff] [blame] | 79 | ${suppressaddsubscriber} True |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 80 | |
| 81 | |
| 82 | *** Test Cases *** |
| 83 | Reconcile In Starting-OpenOmci |
| 84 | [Documentation] Validates the Reconcile in Starting-OpenOmci |
| 85 | ... Reconcile test during “starting-openomci” in AT&T-workflow: |
| 86 | ... - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store) |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 87 | ... - wait for device reason “starting-openomci” |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 88 | ... - kill the open-onu-adapter-go |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 89 | ... - wait for open-onu-adapter-go to restart |
| 90 | ... - perform sanity test include add subscriber |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 91 | ... - delete ONU and MIB-template in KV-store |
| 92 | [Tags] functionalOnuGo ReconcileStartingOpenOmciOnuGo |
| 93 | [Setup] Run Keywords Start Logging ReconcileStartingOpenOmciOnuGo |
| 94 | ... AND Setup Test |
| 95 | Run Keyword If ${has_dataplane} Clean Up Linux |
TorstenThieme | e9017be | 2021-03-05 16:59:31 +0000 | [diff] [blame] | 96 | Do Reconcile In Determined State starting-openomci |
TorstenThieme | 3494ceb | 2021-07-19 09:47:24 +0000 | [diff] [blame] | 97 | [Teardown] Run Keywords Run Keyword If ${logging} Get Logical Id of OLT |
| 98 | ... AND Run Keyword If ${logging} Collect Logs |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 99 | ... AND Teardown Test |
| 100 | ... AND Stop Logging ReconcileStartingOpenOmciOnuGo |
| 101 | |
| 102 | Reconcile In Initial-Mib-Downloaded |
| 103 | [Documentation] Validates the Reconcile in initial-mib-downloaded |
| 104 | ... Reconcile test during “initial-mib-downloaded” in AT&T-workflow: |
| 105 | ... - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store) |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 106 | ... - wait for device reason “initial-mib-downloaded” |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 107 | ... - kill the open-onu-adapter-go |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 108 | ... - wait for open-onu-adapter-go to restart |
| 109 | ... - perform sanity test include add subscriber |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 110 | ... - delete ONU and MIB-template in KV-store |
| 111 | [Tags] functionalOnuGo ReconcileInitialMibDownloadedOnuGo |
| 112 | [Setup] Run Keywords Start Logging ReconcileInitialMibDownloadedOnuGo |
| 113 | ... AND Setup Test |
| 114 | Run Keyword If ${has_dataplane} Clean Up Linux |
TorstenThieme | e9017be | 2021-03-05 16:59:31 +0000 | [diff] [blame] | 115 | Do Reconcile In Determined State initial-mib-downloaded |
TorstenThieme | 3494ceb | 2021-07-19 09:47:24 +0000 | [diff] [blame] | 116 | [Teardown] Run Keywords Run Keyword If ${logging} Get Logical Id of OLT |
| 117 | ... AND Run Keyword If ${logging} Collect Logs |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 118 | ... AND Teardown Test |
| 119 | ... AND Stop Logging ReconcileInitialMibDownloadedOnuGo |
| 120 | |
| 121 | Reconcile In Omci-Flows-Pushed |
| 122 | [Documentation] Validates the Reconcile in omci-flows-pushed |
| 123 | ... Former testcase: Reconcile Onu Device in Testsuite Voltha_ONUStateTest.robot |
| 124 | ... Reconcile test during “omci-flows-pushed” in AT&T-workflow: |
| 125 | ... - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store) |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 126 | ... - perform sanity test include add subscriber |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 127 | ... - kill the open-onu-adapter-go |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 128 | ... - wait for open-onu-adapter-go to restart |
| 129 | ... - perform sanity test suppress add subscriber |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 130 | ... - disable onu device |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 131 | ... - wait for device corresponding onu reason e.g. “tech-profile-config-delete-success” |
| 132 | ... - check UNI-ports disabled in ONOS |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 133 | ... - enable onu device |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 134 | ... - perform sanity test suppress add subscriber |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 135 | ... - delete ONU and MIB-template in KV-store |
| 136 | [Tags] functionalOnuGo ReconcileOmciFlowsPushedOnuGo |
| 137 | [Setup] Run Keywords Start Logging ReconcileOmciFlowsPushedOnuGo |
| 138 | ... AND Setup Test |
| 139 | Run Keyword If ${has_dataplane} Clean Up Linux |
TorstenThieme | e9017be | 2021-03-05 16:59:31 +0000 | [diff] [blame] | 140 | Do Reconcile In Omci-Flows-Pushed |
TorstenThieme | 3494ceb | 2021-07-19 09:47:24 +0000 | [diff] [blame] | 141 | [Teardown] Run Keywords Run Keyword If ${logging} Get Logical Id of OLT |
| 142 | ... AND Run Keyword If ${logging} Collect Logs |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 143 | ... AND Teardown Test |
| 144 | ... AND Stop Logging ReconcileOmciFlowsPushedOnuGo |
| 145 | |
| 146 | Reconcile For Disabled Onu Device |
| 147 | [Documentation] Validates the Reconcile for disabled Onu device |
| 148 | ... Reconcile test for disabled Onu device in AT&T-workflow: |
| 149 | ... - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store) |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 150 | ... - perform sanity test include add subscriber |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 151 | ... - disable onu device |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 152 | ... - wait for device corresponding onu reason e.g. “tech-profile-config-delete-success” |
| 153 | ... - check UNI-ports disabled in ONOS |
| 154 | ... - kill the open-onu-adapter-go |
| 155 | ... - wait for open-onu-adapter-go to restart |
| 156 | ... - check device reason is still the same before restart |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 157 | ... - enable onu device |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 158 | ... - perform sanity test suppress add subscriber |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 159 | ... - delete ONU and MIB-template in KV-store |
| 160 | [Tags] functionalOnuGo ReconcileDisabledOnuDeviceOnuGo |
| 161 | [Setup] Run Keywords Start Logging ReconcileDisabledOnuDeviceOnuGo |
| 162 | ... AND Setup Test |
| 163 | Run Keyword If ${has_dataplane} Clean Up Linux |
TorstenThieme | e9017be | 2021-03-05 16:59:31 +0000 | [diff] [blame] | 164 | Do Reconcile For Disabled Onu Device |
TorstenThieme | 3494ceb | 2021-07-19 09:47:24 +0000 | [diff] [blame] | 165 | [Teardown] Run Keywords Run Keyword If ${logging} Get Logical Id of OLT |
| 166 | ... AND Run Keyword If ${logging} Collect Logs |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 167 | ... AND Teardown Test |
| 168 | ... AND Stop Logging ReconcileDisabledOnuDeviceOnuGo |
| 169 | |
| 170 | *** Keywords *** |
| 171 | Setup Suite |
| 172 | [Documentation] Set up the test suite |
| 173 | ${LogInfo}= Catenate |
| 174 | ... \r\nPassed arguments: |
| 175 | ... debugmode:${debugmode}, logging:${logging}, pausebeforecleanup:${pausebeforecleanup}, |
TorstenThieme | 4798369 | 2021-06-17 10:43:35 +0000 | [diff] [blame] | 176 | ... print2console:${print2console}, usekill2restart:${usekill2restart}, workflow:${workflow}, |
| 177 | ... kvstoreprefix:${kvstoreprefix} |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 178 | Log ${LogInfo} console=yes |
| 179 | Common Test Suite Setup |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 180 | # delete etcd MIB Template Data |
Hardik Windlass | 4288c6a | 2021-09-28 07:22:06 +0000 | [diff] [blame] | 181 | Delete MIB Template Data ${INFRA_NAMESPACE} |
TorstenThieme | 4507160 | 2021-03-16 12:14:37 +0000 | [diff] [blame] | 182 | # delete etcd onu data |
Hardik Windlass | 4288c6a | 2021-09-28 07:22:06 +0000 | [diff] [blame] | 183 | Delete ONU Go Adapter ETCD Data namespace=${INFRA_NAMESPACE} validate=True |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 184 | |
TorstenThieme | 70bc526 | 2021-01-19 12:12:55 +0000 | [diff] [blame] | 185 | |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 186 | Teardown Suite |
| 187 | [Documentation] Replaces the Suite Teardown in utils.robot. |
| 188 | ... Cleans up and checks all ONU ports disabled in ONOS. |
| 189 | ... Furthermore gives the possibility to pause the execution. |
| 190 | Run Keyword If ${pausebeforecleanup} Import Library Dialogs |
| 191 | Run Keyword If ${pausebeforecleanup} Pause Execution Press OK to continue with clean up! |
| 192 | Run Keyword If ${pausebeforecleanup} Log Teardown will be continued... console=yes |
| 193 | Run Keyword If ${teardown_device} Delete All Devices and Verify |
Hardik Windlass | 4288c6a | 2021-09-28 07:22:06 +0000 | [diff] [blame] | 194 | Run Keyword If ${usekill2restart} Restart Pod By Label ${NAMESPACE} app adapter-open-onu |
TorstenThieme | 4507160 | 2021-03-16 12:14:37 +0000 | [diff] [blame] | 195 | Run Keyword Unless ${etcdcheckintestteardown} Wait Until Keyword Succeeds ${timeout} 1s |
Hardik Windlass | 4288c6a | 2021-09-28 07:22:06 +0000 | [diff] [blame] | 196 | ... Validate Onu Data In Etcd ${INFRA_NAMESPACE} 0 ${kvstoreprefix} without_pm_data=False |
TorstenThieme | 731a759 | 2021-07-01 14:26:54 +0000 | [diff] [blame] | 197 | Wait for Ports in ONOS for all OLTs ${ONOS_SSH_IP} ${ONOS_SSH_PORT} 0 BBSM ${timeout} |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 198 | Close All ONOS SSH Connections |
| 199 | |
| 200 | Setup Test |
| 201 | [Documentation] Pre-test Setup |
| 202 | #test for empty device list |
| 203 | Test Empty Device List |
| 204 | Run Keyword If ${has_dataplane} Wait Until Keyword Succeeds 120s 10s Openolt is Up |
| 205 | ... ${olt_ssh_ip} ${olt_user} ${olt_pass} |
| 206 | Run Keyword If ${has_dataplane} Sleep 60s |
| 207 | #restart open-onu pod to reset crash loop back off mechansim of kubenetes |
TorstenThieme | 3716540 | 2021-09-03 11:39:40 +0000 | [diff] [blame] | 208 | Run Keyword If "${firsttest}"=="False" and "${usekill2restart}"=="True" |
Hardik Windlass | 4288c6a | 2021-09-28 07:22:06 +0000 | [diff] [blame] | 209 | ... Restart Pod By Label ${NAMESPACE} app adapter-open-onu |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 210 | Run Keyword If "${firsttest}"=="False" Sleep 35s |
| 211 | ${firsttest} Set Variable False |
| 212 | Set Suite Variable ${firsttest} |
| 213 | # Create a list of olt ids (logical and device_id) |
| 214 | ${olt_ids} Create List |
| 215 | FOR ${I} IN RANGE 0 ${num_olts} |
| 216 | #create/preprovision device |
Andrea Campanella | 3dcce27 | 2021-01-15 16:04:47 +0100 | [diff] [blame] | 217 | ${olt_device_id}= Run Keyword If "${list_olts}[${I}][type]" == "${None}" |
TorstenThieme | 4413664 | 2021-02-12 13:41:17 +0000 | [diff] [blame] | 218 | ... Create Device ${list_olts}[${I}][ip] ${list_olts}[${I}][oltport] |
| 219 | ... ELSE Create Device ${list_olts}[${I}][ip] ${list_olts}[${I}][oltport] ${list_olts}[${I}][type] |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 220 | ${olt_serial_number}= Set Variable ${list_olts}[${I}][sn] |
| 221 | #validate olt states |
| 222 | Wait Until Keyword Succeeds ${timeout} 5s |
Hardik Windlass | 8b44649 | 2021-06-10 06:25:23 +0000 | [diff] [blame] | 223 | ... Validate OLT Device PREPROVISIONED UNKNOWN UNKNOWN ${olt_device_id} by_dev_id=True |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 224 | Sleep 5s |
| 225 | ${logical_id}= Get Logical Device ID From SN ${olt_serial_number} |
| 226 | ${olt} Create Dictionary device_id ${olt_device_id} logical_id ${logical_id} |
| 227 | ... of_id ${of_id} sn ${olt_serial_number} |
| 228 | Append To List ${olt_ids} ${olt} |
| 229 | END |
| 230 | Set Global Variable ${olt_ids} |
| 231 | |
| 232 | Teardown Test |
| 233 | [Documentation] Post-test Teardown |
TorstenThieme | 4507160 | 2021-03-16 12:14:37 +0000 | [diff] [blame] | 234 | Run Keyword If ${pausebeforecleanup} Import Library Dialogs |
| 235 | Run Keyword If ${pausebeforecleanup} Pause Execution Press OK to continue with clean up! |
| 236 | Run Keyword If ${pausebeforecleanup} Log Teardown will be continued... console=yes |
TorstenThieme | e9017be | 2021-03-05 16:59:31 +0000 | [diff] [blame] | 237 | Run Keyword If ${teardown_device} Delete All Devices and Verify |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 238 | # delete etcd MIB Template Data |
| 239 | Delete MIB Template Data |
TorstenThieme | b355eb6 | 2021-03-09 14:04:55 +0000 | [diff] [blame] | 240 | # check etcd data are empty |
TorstenThieme | 4507160 | 2021-03-16 12:14:37 +0000 | [diff] [blame] | 241 | Run Keyword If ${etcdcheckintestteardown} Wait Until Keyword Succeeds ${timeout} 1s |
Hardik Windlass | 4288c6a | 2021-09-28 07:22:06 +0000 | [diff] [blame] | 242 | ... Validate Onu Data In Etcd ${INFRA_NAMESPACE} 0 ${kvstoreprefix} without_pm_data=False |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 243 | Sleep 5s |
| 244 | |
| 245 | Do Reconcile In Determined State |
| 246 | [Documentation] This keyword reconciles ONU device when passed reason is reached and |
| 247 | ... check the state afterwards. |
| 248 | ... Following steps will be executed: |
| 249 | ... - enable OLT device |
| 250 | ... - wait for passed openonu reason |
| 251 | ... - restart openonu adaptor |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 252 | ... - perform sanity test include add subscriber |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 253 | [Arguments] ${expected_onu_reason} |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 254 | ${admin_state} ${oper_status} ${connect_status} ${onu_state_nb} ${onu_state}= Map State |
| 255 | ... ${expected_onu_reason} |
| 256 | Should Be True ${onu_state_nb}<=5 |
| 257 | ... Wrong expected onu reason ${expected_onu_reason}, must be lower than 'omci-flows-pushed'! |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 258 | FOR ${I} IN RANGE 0 ${num_olts} |
| 259 | #get olt serial number |
| 260 | ${olt_serial_number}= Set Variable ${list_olts}[${I}][sn] |
| 261 | #validate olt states |
| 262 | ${olt_device_id}= Get OLTDeviceID From OLT List ${olt_serial_number} |
| 263 | Enable Device ${olt_device_id} |
| 264 | END |
| 265 | Current State Test All Onus ${expected_onu_reason} |
Hardik Windlass | 4288c6a | 2021-09-28 07:22:06 +0000 | [diff] [blame] | 266 | Run Keyword If ${usekill2restart} Kill And Check Onu Adaptor ${NAMESPACE} |
| 267 | ... ELSE Restart And Check Onu Adaptor ${NAMESPACE} |
Matteo Scandolo | 741d4fd | 2021-09-23 17:08:34 -0700 | [diff] [blame] | 268 | Wait for ONU Adapter Reconcile ACTIVE |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 269 | Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT |
TorstenThieme | 136ebf7 | 2021-02-26 14:27:07 +0000 | [diff] [blame] | 270 | ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 271 | ... ELSE Perform Sanity Test |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 272 | |
| 273 | Do Reconcile For Disabled Onu Device |
| 274 | [Documentation] This keyword reconciles ONU device for a disabled onu device and |
| 275 | ... check the state afterwards. |
| 276 | ... Following steps will be executed: |
| 277 | ... - enable OLT device |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 278 | ... - perform sanity test include add subscriber |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 279 | ... - disable onu device |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 280 | ... - wait for corresponding openonu reason |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 281 | ... - check UNI-ports disabled in ONOS |
| 282 | ... - restart openonu adaptor |
| 283 | ... - check openonu adaptor is ready again |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 284 | ... - check device reason is still before restart |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 285 | ... - enable onu device |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 286 | ... - perform sanity test suppress add subscriber |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 287 | FOR ${I} IN RANGE 0 ${num_olts} |
| 288 | #get olt serial number |
| 289 | ${olt_serial_number}= Set Variable ${list_olts}[${I}][sn] |
| 290 | #validate olt states |
| 291 | ${olt_device_id}= Get OLTDeviceID From OLT List ${olt_serial_number} |
| 292 | Enable Device ${olt_device_id} |
| 293 | END |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 294 | Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT |
TorstenThieme | 136ebf7 | 2021-02-26 14:27:07 +0000 | [diff] [blame] | 295 | ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 296 | ... ELSE Perform Sanity Test |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 297 | Disable Onu Device |
TorstenThieme | 3871cf7 | 2021-01-21 14:11:57 +0000 | [diff] [blame] | 298 | ${alternativeonustates}= Create List omci-flows-deleted |
| 299 | Run Keyword If "${workflow}"=="DT" Current State Test All Onus omci-admin-lock |
| 300 | ... ELSE IF "${workflow}"=="TT" Current State Test All Onus omci-admin-lock |
| 301 | ... ELSE Current State Test All Onus omci-admin-lock alternativeonustate=${alternativeonustates} |
Hardik Windlass | 4288c6a | 2021-09-28 07:22:06 +0000 | [diff] [blame] | 302 | Run Keyword If ${usekill2restart} Kill And Check Onu Adaptor ${NAMESPACE} |
| 303 | ... ELSE Restart And Check Onu Adaptor ${NAMESPACE} |
Matteo Scandolo | 741d4fd | 2021-09-23 17:08:34 -0700 | [diff] [blame] | 304 | Wait for ONU Adapter Reconcile UNKNOWN |
TorstenThieme | 3871cf7 | 2021-01-21 14:11:57 +0000 | [diff] [blame] | 305 | Run Keyword If "${workflow}"=="DT" Current State Test All Onus omci-admin-lock |
| 306 | ... ELSE IF "${workflow}"=="TT" Current State Test All Onus omci-admin-lock |
| 307 | ... ELSE Current State Test All Onus omci-admin-lock alternativeonustate=${alternativeonustates} |
TorstenThieme | 731a759 | 2021-07-01 14:26:54 +0000 | [diff] [blame] | 308 | Wait for all ONU Ports in ONOS Disabled ${ONOS_SSH_IP} ${ONOS_SSH_PORT} |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 309 | Enable Onu Device |
TorstenThieme | 70bc526 | 2021-01-19 12:12:55 +0000 | [diff] [blame] | 310 | Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT ${suppressaddsubscriber} |
TorstenThieme | 136ebf7 | 2021-02-26 14:27:07 +0000 | [diff] [blame] | 311 | ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT ${suppressaddsubscriber} |
TorstenThieme | 70bc526 | 2021-01-19 12:12:55 +0000 | [diff] [blame] | 312 | ... ELSE Perform Sanity Test ${suppressaddsubscriber} |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 313 | |
| 314 | Do Reconcile In Omci-Flows-Pushed |
| 315 | [Documentation] This keyword reconciles ONU device in omci-flows-pushed and check the state afterwards. |
| 316 | ... Reconcile test during “omci-flows-pushed” in AT&T-workflow: |
| 317 | ... - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store) |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 318 | ... - perform sanity test include add subscriber |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 319 | ... - kill the open-onu-adapter-go |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 320 | ... - wait for open-onu-adapter-go to restart |
| 321 | ... - perform sanity test suppress add subscriber |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 322 | ... - disable onu device |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 323 | ... - wait for corresponding device reason |
| 324 | ... - check UNI-ports disabled in ONOS |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 325 | ... - enable onu device |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 326 | ... - perform sanity test supress add subscriber |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 327 | FOR ${I} IN RANGE 0 ${num_olts} |
| 328 | #get olt serial number |
| 329 | ${olt_serial_number}= Set Variable ${list_olts}[${I}][sn] |
| 330 | #validate olt states |
| 331 | ${olt_device_id}= Get OLTDeviceID From OLT List ${olt_serial_number} |
| 332 | Enable Device ${olt_device_id} |
| 333 | END |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 334 | Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT |
TorstenThieme | 136ebf7 | 2021-02-26 14:27:07 +0000 | [diff] [blame] | 335 | ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT |
TorstenThieme | c3c2323 | 2021-01-13 13:06:31 +0000 | [diff] [blame] | 336 | ... ELSE Perform Sanity Test |
Hardik Windlass | 4288c6a | 2021-09-28 07:22:06 +0000 | [diff] [blame] | 337 | Run Keyword If ${usekill2restart} Kill And Check Onu Adaptor ${NAMESPACE} |
| 338 | ... ELSE Restart And Check Onu Adaptor ${NAMESPACE} |
Matteo Scandolo | 741d4fd | 2021-09-23 17:08:34 -0700 | [diff] [blame] | 339 | Wait for ONU Adapter Reconcile ACTIVE |
TorstenThieme | 70bc526 | 2021-01-19 12:12:55 +0000 | [diff] [blame] | 340 | Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT ${suppressaddsubscriber} |
TorstenThieme | 136ebf7 | 2021-02-26 14:27:07 +0000 | [diff] [blame] | 341 | ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT ${suppressaddsubscriber} |
TorstenThieme | 70bc526 | 2021-01-19 12:12:55 +0000 | [diff] [blame] | 342 | ... ELSE Perform Sanity Test ${suppressaddsubscriber} |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 343 | Disable Onu Device |
TorstenThieme | 3871cf7 | 2021-01-21 14:11:57 +0000 | [diff] [blame] | 344 | ${alternativeonustates}= Create List omci-flows-deleted |
| 345 | Run Keyword If "${workflow}"=="DT" Current State Test All Onus omci-admin-lock |
| 346 | ... ELSE IF "${workflow}"=="TT" Current State Test All Onus omci-admin-lock |
| 347 | ... ELSE Current State Test All Onus omci-admin-lock alternativeonustate=${alternativeonustates} |
TorstenThieme | 731a759 | 2021-07-01 14:26:54 +0000 | [diff] [blame] | 348 | Wait for all ONU Ports in ONOS Disabled ${ONOS_SSH_IP} ${ONOS_SSH_PORT} |
TorstenThieme | 440b7c0 | 2020-12-18 15:42:57 +0000 | [diff] [blame] | 349 | Enable Onu Device |
TorstenThieme | 70bc526 | 2021-01-19 12:12:55 +0000 | [diff] [blame] | 350 | Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT ${suppressaddsubscriber} |
TorstenThieme | 136ebf7 | 2021-02-26 14:27:07 +0000 | [diff] [blame] | 351 | ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT ${suppressaddsubscriber} |
TorstenThieme | 70bc526 | 2021-01-19 12:12:55 +0000 | [diff] [blame] | 352 | ... ELSE Perform Sanity Test ${suppressaddsubscriber} |