blob: 4de3058fa42e0bce7151555b0f8e3adbac1a362b [file] [log] [blame]
TorstenThieme440b7c02020-12-18 15:42:57 +00001# 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 ***
TorstenThiemec3c23232021-01-13 13:06:31 +000016Documentation Test different Reconcile scenarios of ONU Go adapter with all three workflows ATT, DT and TT.
TorstenThieme440b7c02020-12-18 15:42:57 +000017... 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'.
22Suite Setup Setup Suite
23Suite Teardown Teardown Suite
24Test Setup Setup
25Test Teardown Teardown
26Library Collections
27Library String
28Library OperatingSystem
29Library XML
30Library RequestsLibrary
31Library ../../libraries/DependencyLibrary.py
32Resource ../../libraries/onos.robot
33Resource ../../libraries/voltctl.robot
34Resource ../../libraries/voltha.robot
35Resource ../../libraries/utils.robot
36Resource ../../libraries/k8s.robot
37Resource ../../libraries/onu_utilities.robot
38Resource ../../variables/variables.robot
39
40*** Variables ***
41${namespace} voltha
Hardik Windlassa9b38262021-10-27 08:14:22 +000042${INFRA_NAMESPACE} default
TorstenThieme440b7c02020-12-18 15:42:57 +000043${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
TorstenThiemec3c23232021-01-13 13:06:31 +000054# determines the environment workflow: DT, TT or ATT (default)
55# example: -v workflow:DT
56${workflow} ATT
TorstenThieme47983692021-06-17 10:43:35 +000057# KV Store Prefix
58# example: -v kvstoreprefix:voltha_voltha
59${kvstoreprefix} voltha_voltha
TorstenThieme440b7c02020-12-18 15:42:57 +000060# 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
TorstenThieme45071602021-03-16 12:14:37 +000075# 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
TorstenThieme440b7c02020-12-18 15:42:57 +000078${data_dir} ../data
TorstenThieme70bc5262021-01-19 12:12:55 +000079${suppressaddsubscriber} True
TorstenThieme440b7c02020-12-18 15:42:57 +000080
81
82*** Test Cases ***
83Reconcile 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)
TorstenThiemec3c23232021-01-13 13:06:31 +000087 ... - wait for device reason starting-openomci
TorstenThieme440b7c02020-12-18 15:42:57 +000088 ... - kill the open-onu-adapter-go
TorstenThiemec3c23232021-01-13 13:06:31 +000089 ... - wait for open-onu-adapter-go to restart
90 ... - perform sanity test include add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +000091 ... - 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
TorstenThiemee9017be2021-03-05 16:59:31 +000096 Do Reconcile In Determined State starting-openomci
TorstenThieme440b7c02020-12-18 15:42:57 +000097 [Teardown] Run Keywords Run Keyword If ${logging} Collect Logs
98 ... AND Teardown Test
99 ... AND Stop Logging ReconcileStartingOpenOmciOnuGo
100
101Reconcile In Initial-Mib-Downloaded
102 [Documentation] Validates the Reconcile in initial-mib-downloaded
103 ... Reconcile test during initial-mib-downloaded in AT&T-workflow:
104 ... - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store)
TorstenThiemec3c23232021-01-13 13:06:31 +0000105 ... - wait for device reason initial-mib-downloaded
TorstenThieme440b7c02020-12-18 15:42:57 +0000106 ... - kill the open-onu-adapter-go
TorstenThiemec3c23232021-01-13 13:06:31 +0000107 ... - wait for open-onu-adapter-go to restart
108 ... - perform sanity test include add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000109 ... - delete ONU and MIB-template in KV-store
110 [Tags] functionalOnuGo ReconcileInitialMibDownloadedOnuGo
111 [Setup] Run Keywords Start Logging ReconcileInitialMibDownloadedOnuGo
112 ... AND Setup Test
113 Run Keyword If ${has_dataplane} Clean Up Linux
TorstenThiemee9017be2021-03-05 16:59:31 +0000114 Do Reconcile In Determined State initial-mib-downloaded
TorstenThieme440b7c02020-12-18 15:42:57 +0000115 [Teardown] Run Keywords Run Keyword If ${logging} Collect Logs
116 ... AND Teardown Test
117 ... AND Stop Logging ReconcileInitialMibDownloadedOnuGo
118
119Reconcile In Omci-Flows-Pushed
120 [Documentation] Validates the Reconcile in omci-flows-pushed
121 ... Former testcase: Reconcile Onu Device in Testsuite Voltha_ONUStateTest.robot
122 ... Reconcile test during omci-flows-pushed in AT&T-workflow:
123 ... - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store)
TorstenThiemec3c23232021-01-13 13:06:31 +0000124 ... - perform sanity test include add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000125 ... - kill the open-onu-adapter-go
TorstenThiemec3c23232021-01-13 13:06:31 +0000126 ... - wait for open-onu-adapter-go to restart
127 ... - perform sanity test suppress add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000128 ... - disable onu device
TorstenThiemec3c23232021-01-13 13:06:31 +0000129 ... - wait for device corresponding onu reason e.g. tech-profile-config-delete-success
130 ... - check UNI-ports disabled in ONOS
TorstenThieme440b7c02020-12-18 15:42:57 +0000131 ... - enable onu device
TorstenThiemec3c23232021-01-13 13:06:31 +0000132 ... - perform sanity test suppress add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000133 ... - delete ONU and MIB-template in KV-store
134 [Tags] functionalOnuGo ReconcileOmciFlowsPushedOnuGo
135 [Setup] Run Keywords Start Logging ReconcileOmciFlowsPushedOnuGo
136 ... AND Setup Test
137 Run Keyword If ${has_dataplane} Clean Up Linux
TorstenThiemee9017be2021-03-05 16:59:31 +0000138 Do Reconcile In Omci-Flows-Pushed
TorstenThieme440b7c02020-12-18 15:42:57 +0000139 [Teardown] Run Keywords Run Keyword If ${logging} Collect Logs
140 ... AND Teardown Test
141 ... AND Stop Logging ReconcileOmciFlowsPushedOnuGo
142
143Reconcile For Disabled Onu Device
144 [Documentation] Validates the Reconcile for disabled Onu device
145 ... Reconcile test for disabled Onu device in AT&T-workflow:
146 ... - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store)
TorstenThiemec3c23232021-01-13 13:06:31 +0000147 ... - perform sanity test include add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000148 ... - disable onu device
TorstenThiemec3c23232021-01-13 13:06:31 +0000149 ... - wait for device corresponding onu reason e.g. tech-profile-config-delete-success
150 ... - check UNI-ports disabled in ONOS
151 ... - kill the open-onu-adapter-go
152 ... - wait for open-onu-adapter-go to restart
153 ... - check device reason is still the same before restart
TorstenThieme440b7c02020-12-18 15:42:57 +0000154 ... - enable onu device
TorstenThiemec3c23232021-01-13 13:06:31 +0000155 ... - perform sanity test suppress add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000156 ... - delete ONU and MIB-template in KV-store
157 [Tags] functionalOnuGo ReconcileDisabledOnuDeviceOnuGo
158 [Setup] Run Keywords Start Logging ReconcileDisabledOnuDeviceOnuGo
159 ... AND Setup Test
160 Run Keyword If ${has_dataplane} Clean Up Linux
TorstenThiemee9017be2021-03-05 16:59:31 +0000161 Do Reconcile For Disabled Onu Device
TorstenThieme440b7c02020-12-18 15:42:57 +0000162 [Teardown] Run Keywords Run Keyword If ${logging} Collect Logs
163 ... AND Teardown Test
164 ... AND Stop Logging ReconcileDisabledOnuDeviceOnuGo
165
166*** Keywords ***
167Setup Suite
168 [Documentation] Set up the test suite
Andrea Campanellade6ee322021-11-05 12:01:15 +0100169 Start Logging Setup or Teardown Setup-${SUITE NAME}
TorstenThieme440b7c02020-12-18 15:42:57 +0000170 ${LogInfo}= Catenate
171 ... \r\nPassed arguments:
172 ... debugmode:${debugmode}, logging:${logging}, pausebeforecleanup:${pausebeforecleanup},
TorstenThieme47983692021-06-17 10:43:35 +0000173 ... print2console:${print2console}, usekill2restart:${usekill2restart}, workflow:${workflow},
174 ... kvstoreprefix:${kvstoreprefix}
TorstenThieme440b7c02020-12-18 15:42:57 +0000175 Log ${LogInfo} console=yes
176 Common Test Suite Setup
TorstenThieme440b7c02020-12-18 15:42:57 +0000177 # delete etcd MIB Template Data
178 Delete MIB Template Data
TorstenThieme45071602021-03-16 12:14:37 +0000179 # delete etcd onu data
180 Delete ONU Go Adapter ETCD Data validate=True
Andrea Campanellade6ee322021-11-05 12:01:15 +0100181 Run Keyword If ${logging} Collect Logs
182 Stop Logging Setup or Teardown Setup-${SUITE NAME}
TorstenThieme440b7c02020-12-18 15:42:57 +0000183
TorstenThieme70bc5262021-01-19 12:12:55 +0000184
TorstenThieme440b7c02020-12-18 15:42:57 +0000185Teardown Suite
186 [Documentation] Replaces the Suite Teardown in utils.robot.
187 ... Cleans up and checks all ONU ports disabled in ONOS.
188 ... Furthermore gives the possibility to pause the execution.
Andrea Campanellade6ee322021-11-05 12:01:15 +0100189 Start Logging Setup or Teardown Teardown-${SUITE NAME}
TorstenThieme440b7c02020-12-18 15:42:57 +0000190 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
194 Run Keyword If ${usekill2restart} Restart Pod ${namespace} open-onu
TorstenThieme45071602021-03-16 12:14:37 +0000195 Run Keyword Unless ${etcdcheckintestteardown} Wait Until Keyword Succeeds ${timeout} 1s
TorstenThieme47983692021-06-17 10:43:35 +0000196 ... Validate Onu Data In Etcd 0 ${kvstoreprefix} without_pm_data=False
TorstenThieme731a7592021-07-01 14:26:54 +0000197 Wait for Ports in ONOS for all OLTs ${ONOS_SSH_IP} ${ONOS_SSH_PORT} 0 BBSM ${timeout}
Andrea Campanellade6ee322021-11-05 12:01:15 +0100198 Run Keyword If ${logging} Collect Logs
TorstenThieme440b7c02020-12-18 15:42:57 +0000199 Close All ONOS SSH Connections
Andrea Campanellade6ee322021-11-05 12:01:15 +0100200 Stop Logging Setup or Teardown Teardown-${SUITE NAME}
TorstenThieme440b7c02020-12-18 15:42:57 +0000201
202Setup Test
203 [Documentation] Pre-test Setup
204 #test for empty device list
205 Test Empty Device List
206 Run Keyword If ${has_dataplane} Wait Until Keyword Succeeds 120s 10s Openolt is Up
207 ... ${olt_ssh_ip} ${olt_user} ${olt_pass}
208 Run Keyword If ${has_dataplane} Sleep 60s
209 #restart open-onu pod to reset crash loop back off mechansim of kubenetes
210 Run Keyword If "${firsttest}"=="False" and "${usekill2restart}"=="True" Restart Pod ${namespace} open-onu
211 Run Keyword If "${firsttest}"=="False" Sleep 35s
212 ${firsttest} Set Variable False
213 Set Suite Variable ${firsttest}
214 # Create a list of olt ids (logical and device_id)
215 ${olt_ids} Create List
216 FOR ${I} IN RANGE 0 ${num_olts}
217 #create/preprovision device
Andrea Campanella3dcce272021-01-15 16:04:47 +0100218 ${olt_device_id}= Run Keyword If "${list_olts}[${I}][type]" == "${None}"
TorstenThieme44136642021-02-12 13:41:17 +0000219 ... Create Device ${list_olts}[${I}][ip] ${list_olts}[${I}][oltport]
220 ... ELSE Create Device ${list_olts}[${I}][ip] ${list_olts}[${I}][oltport] ${list_olts}[${I}][type]
TorstenThieme440b7c02020-12-18 15:42:57 +0000221 ${olt_serial_number}= Set Variable ${list_olts}[${I}][sn]
222 #validate olt states
223 Wait Until Keyword Succeeds ${timeout} 5s
Hardik Windlass8b446492021-06-10 06:25:23 +0000224 ... Validate OLT Device PREPROVISIONED UNKNOWN UNKNOWN ${olt_device_id} by_dev_id=True
TorstenThieme440b7c02020-12-18 15:42:57 +0000225 Sleep 5s
226 ${logical_id}= Get Logical Device ID From SN ${olt_serial_number}
227 ${olt} Create Dictionary device_id ${olt_device_id} logical_id ${logical_id}
228 ... of_id ${of_id} sn ${olt_serial_number}
229 Append To List ${olt_ids} ${olt}
230 END
231 Set Global Variable ${olt_ids}
232
233Teardown Test
234 [Documentation] Post-test Teardown
TorstenThieme45071602021-03-16 12:14:37 +0000235 Run Keyword If ${pausebeforecleanup} Import Library Dialogs
236 Run Keyword If ${pausebeforecleanup} Pause Execution Press OK to continue with clean up!
237 Run Keyword If ${pausebeforecleanup} Log Teardown will be continued... console=yes
TorstenThiemee9017be2021-03-05 16:59:31 +0000238 Run Keyword If ${teardown_device} Delete All Devices and Verify
TorstenThieme440b7c02020-12-18 15:42:57 +0000239 # delete etcd MIB Template Data
240 Delete MIB Template Data
TorstenThiemeb355eb62021-03-09 14:04:55 +0000241 # check etcd data are empty
TorstenThieme45071602021-03-16 12:14:37 +0000242 Run Keyword If ${etcdcheckintestteardown} Wait Until Keyword Succeeds ${timeout} 1s
TorstenThieme47983692021-06-17 10:43:35 +0000243 ... Validate Onu Data In Etcd 0 ${kvstoreprefix} without_pm_data=False
TorstenThieme440b7c02020-12-18 15:42:57 +0000244 Sleep 5s
245
246Do Reconcile In Determined State
247 [Documentation] This keyword reconciles ONU device when passed reason is reached and
248 ... check the state afterwards.
249 ... Following steps will be executed:
250 ... - enable OLT device
251 ... - wait for passed openonu reason
252 ... - restart openonu adaptor
TorstenThiemec3c23232021-01-13 13:06:31 +0000253 ... - perform sanity test include add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000254 [Arguments] ${expected_onu_reason}
TorstenThiemec3c23232021-01-13 13:06:31 +0000255 ${admin_state} ${oper_status} ${connect_status} ${onu_state_nb} ${onu_state}= Map State
256 ... ${expected_onu_reason}
257 Should Be True ${onu_state_nb}<=5
258 ... Wrong expected onu reason ${expected_onu_reason}, must be lower than 'omci-flows-pushed'!
TorstenThieme440b7c02020-12-18 15:42:57 +0000259 FOR ${I} IN RANGE 0 ${num_olts}
260 #get olt serial number
261 ${olt_serial_number}= Set Variable ${list_olts}[${I}][sn]
262 #validate olt states
263 ${olt_device_id}= Get OLTDeviceID From OLT List ${olt_serial_number}
264 Enable Device ${olt_device_id}
265 END
266 Current State Test All Onus ${expected_onu_reason}
267 Run Keyword If ${usekill2restart} Kill And Check Onu Adaptor ${namespace}
268 ... ELSE Restart And Check Onu Adaptor ${namespace}
TorstenThiemec3c23232021-01-13 13:06:31 +0000269 Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT
TorstenThieme136ebf72021-02-26 14:27:07 +0000270 ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT
TorstenThiemec3c23232021-01-13 13:06:31 +0000271 ... ELSE Perform Sanity Test
TorstenThieme440b7c02020-12-18 15:42:57 +0000272
273Do 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
TorstenThiemec3c23232021-01-13 13:06:31 +0000278 ... - perform sanity test include add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000279 ... - disable onu device
TorstenThiemec3c23232021-01-13 13:06:31 +0000280 ... - wait for corresponding openonu reason
TorstenThieme440b7c02020-12-18 15:42:57 +0000281 ... - check UNI-ports disabled in ONOS
282 ... - restart openonu adaptor
283 ... - check openonu adaptor is ready again
TorstenThiemec3c23232021-01-13 13:06:31 +0000284 ... - check device reason is still before restart
TorstenThieme440b7c02020-12-18 15:42:57 +0000285 ... - enable onu device
TorstenThiemec3c23232021-01-13 13:06:31 +0000286 ... - perform sanity test suppress add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000287 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
TorstenThiemec3c23232021-01-13 13:06:31 +0000294 Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT
TorstenThieme136ebf72021-02-26 14:27:07 +0000295 ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT
TorstenThiemec3c23232021-01-13 13:06:31 +0000296 ... ELSE Perform Sanity Test
TorstenThieme440b7c02020-12-18 15:42:57 +0000297 Disable Onu Device
TorstenThieme3871cf72021-01-21 14:11:57 +0000298 ${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}
TorstenThieme440b7c02020-12-18 15:42:57 +0000302 Run Keyword If ${usekill2restart} Kill And Check Onu Adaptor ${namespace}
303 ... ELSE Restart And Check Onu Adaptor ${namespace}
TorstenThieme3871cf72021-01-21 14:11:57 +0000304 Run Keyword If "${workflow}"=="DT" Current State Test All Onus omci-admin-lock
305 ... ELSE IF "${workflow}"=="TT" Current State Test All Onus omci-admin-lock
306 ... ELSE Current State Test All Onus omci-admin-lock alternativeonustate=${alternativeonustates}
TorstenThieme731a7592021-07-01 14:26:54 +0000307 Wait for all ONU Ports in ONOS Disabled ${ONOS_SSH_IP} ${ONOS_SSH_PORT}
TorstenThieme440b7c02020-12-18 15:42:57 +0000308 Enable Onu Device
TorstenThieme70bc5262021-01-19 12:12:55 +0000309 Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT ${suppressaddsubscriber}
TorstenThieme136ebf72021-02-26 14:27:07 +0000310 ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT ${suppressaddsubscriber}
TorstenThieme70bc5262021-01-19 12:12:55 +0000311 ... ELSE Perform Sanity Test ${suppressaddsubscriber}
TorstenThieme440b7c02020-12-18 15:42:57 +0000312
313Do Reconcile In Omci-Flows-Pushed
314 [Documentation] This keyword reconciles ONU device in omci-flows-pushed and check the state afterwards.
315 ... Reconcile test during omci-flows-pushed in AT&T-workflow:
316 ... - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store)
TorstenThiemec3c23232021-01-13 13:06:31 +0000317 ... - perform sanity test include add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000318 ... - kill the open-onu-adapter-go
TorstenThiemec3c23232021-01-13 13:06:31 +0000319 ... - wait for open-onu-adapter-go to restart
320 ... - perform sanity test suppress add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000321 ... - disable onu device
TorstenThiemec3c23232021-01-13 13:06:31 +0000322 ... - wait for corresponding device reason
323 ... - check UNI-ports disabled in ONOS
TorstenThieme440b7c02020-12-18 15:42:57 +0000324 ... - enable onu device
TorstenThiemec3c23232021-01-13 13:06:31 +0000325 ... - perform sanity test supress add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000326 FOR ${I} IN RANGE 0 ${num_olts}
327 #get olt serial number
328 ${olt_serial_number}= Set Variable ${list_olts}[${I}][sn]
329 #validate olt states
330 ${olt_device_id}= Get OLTDeviceID From OLT List ${olt_serial_number}
331 Enable Device ${olt_device_id}
332 END
TorstenThiemec3c23232021-01-13 13:06:31 +0000333 Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT
TorstenThieme136ebf72021-02-26 14:27:07 +0000334 ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT
TorstenThiemec3c23232021-01-13 13:06:31 +0000335 ... ELSE Perform Sanity Test
TorstenThieme440b7c02020-12-18 15:42:57 +0000336 Run Keyword If ${usekill2restart} Kill And Check Onu Adaptor ${namespace}
337 ... ELSE Restart And Check Onu Adaptor ${namespace}
TorstenThieme70bc5262021-01-19 12:12:55 +0000338 Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT ${suppressaddsubscriber}
TorstenThieme136ebf72021-02-26 14:27:07 +0000339 ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT ${suppressaddsubscriber}
TorstenThieme70bc5262021-01-19 12:12:55 +0000340 ... ELSE Perform Sanity Test ${suppressaddsubscriber}
TorstenThieme440b7c02020-12-18 15:42:57 +0000341 Disable Onu Device
TorstenThieme3871cf72021-01-21 14:11:57 +0000342 ${alternativeonustates}= Create List omci-flows-deleted
343 Run Keyword If "${workflow}"=="DT" Current State Test All Onus omci-admin-lock
344 ... ELSE IF "${workflow}"=="TT" Current State Test All Onus omci-admin-lock
345 ... ELSE Current State Test All Onus omci-admin-lock alternativeonustate=${alternativeonustates}
TorstenThieme731a7592021-07-01 14:26:54 +0000346 Wait for all ONU Ports in ONOS Disabled ${ONOS_SSH_IP} ${ONOS_SSH_PORT}
TorstenThieme440b7c02020-12-18 15:42:57 +0000347 Enable Onu Device
TorstenThieme70bc5262021-01-19 12:12:55 +0000348 Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT ${suppressaddsubscriber}
TorstenThieme136ebf72021-02-26 14:27:07 +0000349 ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT ${suppressaddsubscriber}
TorstenThieme70bc5262021-01-19 12:12:55 +0000350 ... ELSE Perform Sanity Test ${suppressaddsubscriber}