blob: 2a4b8d1b214af5de11430eab21f454a974b77937 [file] [log] [blame]
Joey Armstrong9fadcbe2024-01-17 19:00:37 -05001# Copyright 2020-2024 Open Networking Foundation (ONF) and the ONF Contributors
TorstenThieme440b7c02020-12-18 15:42:57 +00002#
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... Hint: default timeout in BBSim to mimic OLT reboot is 60 seconds!
18... This behaviour of BBSim can be modified by 'oltRebootDelay: 60' in BBSim section of helm chart or
19... used values.yaml during 'voltha up'.
20Suite Setup Setup Suite
21Suite Teardown Teardown Suite
22Test Setup Setup
23Test Teardown Teardown
24Library Collections
25Library String
26Library OperatingSystem
27Library XML
28Library RequestsLibrary
29Library ../../libraries/DependencyLibrary.py
30Resource ../../libraries/onos.robot
31Resource ../../libraries/voltctl.robot
32Resource ../../libraries/voltha.robot
33Resource ../../libraries/utils.robot
34Resource ../../libraries/k8s.robot
35Resource ../../libraries/onu_utilities.robot
36Resource ../../variables/variables.robot
37
38*** Variables ***
Hardik Windlass4288c6a2021-09-28 07:22:06 +000039${NAMESPACE} voltha
40${INFRA_NAMESPACE} default
TorstenThieme440b7c02020-12-18 15:42:57 +000041${timeout} 60s
42${of_id} 0
43${logical_id} 0
44${has_dataplane} True
45${external_libs} True
46${teardown_device} True
47${scripts} ../../scripts
48# Per-test logging on failure is turned off by default; set this variable to enable
49${container_log_dir} ${None}
50# flag for first test, needed due default timeout in BBSim to mimic OLT reboot of 60 seconds
51${firsttest} True
TorstenThiemec3c23232021-01-13 13:06:31 +000052# determines the environment workflow: DT, TT or ATT (default)
53# example: -v workflow:DT
54${workflow} ATT
TorstenThieme47983692021-06-17 10:43:35 +000055# KV Store Prefix
Andrea Campanella388cd872022-02-10 09:11:39 +010056# example: -v kvstoreprefix:voltha/voltha_voltha
57${kvstoreprefix} voltha/voltha_voltha
TorstenThieme440b7c02020-12-18 15:42:57 +000058# flag debugmode is used, if true timeout calculation various, can be passed via the command line too
59# example: -v debugmode:True
60${debugmode} False
61# logging flag to enable Collect Logs, can be passed via the command line too
62# example: -v logging:True
63${logging} False
64# if True execution will be paused before clean up, only use in case of manual testing, do not use in ci pipeline!
65# example: -v pausebeforecleanup:True
66${pausebeforecleanup} False
67# if True some outputs to console are done during running tests e.g. long duration flow test
68# example: -v print2console:True
69${print2console} False
70# if True (hard) kill will be used to restart onu adapter, else (soft) restart mechanism of k8s will be used
71# example: -v usekill2restart:True
72${usekill2restart} False
TorstenThieme45071602021-03-16 12:14:37 +000073# if True etcd check will be executed in test case teardown, if False etcd check will be executed in suite teardown
74# example: -v etcdcheckintestteardown:False
75${etcdcheckintestteardown} True
TorstenThieme440b7c02020-12-18 15:42:57 +000076${data_dir} ../data
TorstenThieme70bc5262021-01-19 12:12:55 +000077${suppressaddsubscriber} True
TorstenThieme440b7c02020-12-18 15:42:57 +000078
Hardik Windlassb1bda362021-11-24 11:54:36 +000079# flag to choose the subscriber provisioning command type in ONOS
80# TT often provision a single services for a subscriber (eg: hsia, voip, ...) one after the other.
81# if set to True, command used is "volt-add-subscriber-unitag"
82# if set to False, comand used is "volt-add-subscriber-access"
83${unitag_sub} False
TorstenThieme440b7c02020-12-18 15:42:57 +000084
85*** Test Cases ***
86Reconcile In Starting-OpenOmci
87 [Documentation] Validates the Reconcile in Starting-OpenOmci
88 ... Reconcile test during starting-openomci in AT&T-workflow:
89 ... - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store)
TorstenThiemec3c23232021-01-13 13:06:31 +000090 ... - wait for device reason starting-openomci
TorstenThieme440b7c02020-12-18 15:42:57 +000091 ... - kill the open-onu-adapter-go
TorstenThiemec3c23232021-01-13 13:06:31 +000092 ... - wait for open-onu-adapter-go to restart
93 ... - perform sanity test include add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +000094 ... - delete ONU and MIB-template in KV-store
95 [Tags] functionalOnuGo ReconcileStartingOpenOmciOnuGo
96 [Setup] Run Keywords Start Logging ReconcileStartingOpenOmciOnuGo
97 ... AND Setup Test
98 Run Keyword If ${has_dataplane} Clean Up Linux
TorstenThiemee9017be2021-03-05 16:59:31 +000099 Do Reconcile In Determined State starting-openomci
TorstenThieme373adfe2021-12-16 13:03:04 +0000100 [Teardown] Run Keywords Printout ONU Serial Number and Device Id print2console=${print2console}
101 ... AND Run Keyword If ${logging} Get Logical Id of OLT
TorstenThieme3494ceb2021-07-19 09:47:24 +0000102 ... AND Run Keyword If ${logging} Collect Logs
TorstenThieme440b7c02020-12-18 15:42:57 +0000103 ... AND Teardown Test
104 ... AND Stop Logging ReconcileStartingOpenOmciOnuGo
105
106Reconcile In Initial-Mib-Downloaded
107 [Documentation] Validates the Reconcile in initial-mib-downloaded
108 ... Reconcile test during initial-mib-downloaded in AT&T-workflow:
109 ... - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store)
TorstenThiemec3c23232021-01-13 13:06:31 +0000110 ... - wait for device reason initial-mib-downloaded
TorstenThieme440b7c02020-12-18 15:42:57 +0000111 ... - kill the open-onu-adapter-go
TorstenThiemec3c23232021-01-13 13:06:31 +0000112 ... - wait for open-onu-adapter-go to restart
113 ... - perform sanity test include add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000114 ... - delete ONU and MIB-template in KV-store
115 [Tags] functionalOnuGo ReconcileInitialMibDownloadedOnuGo
116 [Setup] Run Keywords Start Logging ReconcileInitialMibDownloadedOnuGo
117 ... AND Setup Test
118 Run Keyword If ${has_dataplane} Clean Up Linux
TorstenThiemee9017be2021-03-05 16:59:31 +0000119 Do Reconcile In Determined State initial-mib-downloaded
TorstenThieme373adfe2021-12-16 13:03:04 +0000120 [Teardown] Run Keywords Printout ONU Serial Number and Device Id print2console=${print2console}
121 ... AND Run Keyword If ${logging} Get Logical Id of OLT
TorstenThieme3494ceb2021-07-19 09:47:24 +0000122 ... AND Run Keyword If ${logging} Collect Logs
TorstenThieme440b7c02020-12-18 15:42:57 +0000123 ... AND Teardown Test
124 ... AND Stop Logging ReconcileInitialMibDownloadedOnuGo
125
126Reconcile In Omci-Flows-Pushed
127 [Documentation] Validates the Reconcile in omci-flows-pushed
128 ... Former testcase: Reconcile Onu Device in Testsuite Voltha_ONUStateTest.robot
129 ... Reconcile test during omci-flows-pushed in AT&T-workflow:
130 ... - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store)
TorstenThiemec3c23232021-01-13 13:06:31 +0000131 ... - perform sanity test include add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000132 ... - kill the open-onu-adapter-go
TorstenThiemec3c23232021-01-13 13:06:31 +0000133 ... - wait for open-onu-adapter-go to restart
134 ... - perform sanity test suppress add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000135 ... - disable onu device
TorstenThiemec3c23232021-01-13 13:06:31 +0000136 ... - wait for device corresponding onu reason e.g. tech-profile-config-delete-success
137 ... - check UNI-ports disabled in ONOS
TorstenThieme440b7c02020-12-18 15:42:57 +0000138 ... - enable onu device
TorstenThiemec3c23232021-01-13 13:06:31 +0000139 ... - perform sanity test suppress add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000140 ... - delete ONU and MIB-template in KV-store
141 [Tags] functionalOnuGo ReconcileOmciFlowsPushedOnuGo
142 [Setup] Run Keywords Start Logging ReconcileOmciFlowsPushedOnuGo
143 ... AND Setup Test
144 Run Keyword If ${has_dataplane} Clean Up Linux
TorstenThiemee9017be2021-03-05 16:59:31 +0000145 Do Reconcile In Omci-Flows-Pushed
TorstenThieme373adfe2021-12-16 13:03:04 +0000146 [Teardown] Run Keywords Printout ONU Serial Number and Device Id print2console=${print2console}
147 ... AND Run Keyword If ${logging} Get Logical Id of OLT
TorstenThieme3494ceb2021-07-19 09:47:24 +0000148 ... AND Run Keyword If ${logging} Collect Logs
TorstenThieme440b7c02020-12-18 15:42:57 +0000149 ... AND Teardown Test
150 ... AND Stop Logging ReconcileOmciFlowsPushedOnuGo
151
152Reconcile For Disabled Onu Device
153 [Documentation] Validates the Reconcile for disabled Onu device
154 ... Reconcile test for disabled Onu device in AT&T-workflow:
155 ... - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store)
TorstenThiemec3c23232021-01-13 13:06:31 +0000156 ... - perform sanity test include add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000157 ... - disable onu device
TorstenThiemec3c23232021-01-13 13:06:31 +0000158 ... - wait for device corresponding onu reason e.g. tech-profile-config-delete-success
159 ... - check UNI-ports disabled in ONOS
160 ... - kill the open-onu-adapter-go
161 ... - wait for open-onu-adapter-go to restart
162 ... - check device reason is still the same before restart
TorstenThieme440b7c02020-12-18 15:42:57 +0000163 ... - enable onu device
TorstenThiemec3c23232021-01-13 13:06:31 +0000164 ... - perform sanity test suppress add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000165 ... - delete ONU and MIB-template in KV-store
166 [Tags] functionalOnuGo ReconcileDisabledOnuDeviceOnuGo
167 [Setup] Run Keywords Start Logging ReconcileDisabledOnuDeviceOnuGo
168 ... AND Setup Test
169 Run Keyword If ${has_dataplane} Clean Up Linux
TorstenThiemee9017be2021-03-05 16:59:31 +0000170 Do Reconcile For Disabled Onu Device
TorstenThieme373adfe2021-12-16 13:03:04 +0000171 [Teardown] Run Keywords Printout ONU Serial Number and Device Id print2console=${print2console}
172 ... AND Run Keyword If ${logging} Get Logical Id of OLT
TorstenThieme3494ceb2021-07-19 09:47:24 +0000173 ... AND Run Keyword If ${logging} Collect Logs
TorstenThieme440b7c02020-12-18 15:42:57 +0000174 ... AND Teardown Test
175 ... AND Stop Logging ReconcileDisabledOnuDeviceOnuGo
176
TorstenThieme712b2962021-11-17 14:16:15 +0000177Olt Deletion After Adapter Restart
178 [Documentation] Validates the OLT deletion after adapter restart
179 ... - prefered environment is two ONUs are active on each of two OLTs, but test works also with single ONU/OLT
180 ... - restart the ONU adapter preferred via "kubectl delete pod"
181 ... - delete one OLT immediately after the restart has been initiated
182 ... - wait until the restart of the ONU adapter and the reconcile processing are finished
183 ... - check whether the ONUs on the remaining OLT have been properly reconciled (if avaialable)
184 ... - check whether the ONUs at the deleted OLT have disappeared from the device list
185 ... - KV store data of these ONUs are deleted under:
186 ... - <kvStorePrefix>/openonu/<deviceId>
187 ... - <kvStorePrefix>/openonu/pm-data/<deviceId>
188 ... - check for not deleted device(s) reason is still the same before restart (if available)
189 ... - delete ONU and MIB-template in KV-store
190 ... Check [VOL-4443] for more details
191 [Tags] functionalOnuGo OltDeletionAfterAdapterRestartOnuGo
192 [Setup] Run Keywords Start Logging OltDeletionAfterAdapterRestartOnuGo
193 ... AND Setup Test
194 Run Keyword If ${has_dataplane} Clean Up Linux
195 Do Olt Deletion After Adapter Restart
TorstenThieme373adfe2021-12-16 13:03:04 +0000196 [Teardown] Run Keywords Printout ONU Serial Number and Device Id print2console=${print2console}
197 ... AND Run Keyword If ${logging} Get Logical Id of OLT
TorstenThieme712b2962021-11-17 14:16:15 +0000198 ... AND Run Keyword If ${logging} Collect Logs
199 ... AND Teardown Test
200 ... AND Stop Logging OltDeletionAfterAdapterRestartOnuGo
201
TorstenThiemef7cd2be2021-12-06 14:30:11 +0000202Flow Deletion After Adapter Restart
203 [Documentation] Validates the flow(s) deletion after adapter restart
204 ... - perform sanity test include add subscriber
205 ... - restart the ONU adapter preferred via "kubectl delete pod"
206 ... - remove flow(s) from one ONU immediately after the restart has been initiated
207 ... - wait until the restart of the ONU adapter and the reconcile processing are finished
208 ... - check removed flow(s) from ONU
209 ... - check for not removed flows still the same before restart (if available)
210 [Tags] functionalOnuGo FlowDeletionAfterAdapterRestartOnuGo
211 [Setup] Run Keywords Start Logging FlowDeletionAfterAdapterRestartOnuGo
212 ... AND Setup Test
213 Run Keyword If ${has_dataplane} Clean Up Linux
214 Do Flow Deletion After Adapter Restart
TorstenThieme373adfe2021-12-16 13:03:04 +0000215 [Teardown] Run Keywords Printout ONU Serial Number and Device Id print2console=${print2console}
216 ... AND Run Keyword If ${logging} Get Logical Id of OLT
TorstenThiemef7cd2be2021-12-06 14:30:11 +0000217 ... AND Run Keyword If ${logging} Collect Logs
218 ... AND Teardown Test
219 ... AND Stop Logging FlowDeletionAfterAdapterRestartOnuGo
220
TorstenThieme00fe8262022-01-19 10:43:07 +0000221Wrong MDS Counter After Adapter Restart
222 [Documentation] Validates wrong MDS Counter of ONU after adapter restart
223 ... - perform sanity test include add subscriber
224 ... - restart the ONU adapter preferred via "kubectl delete pod"
225 ... - manipulate MDS counter
226 ... - wait until the restart of the ONU adapter and the reconcile processing are finished
227 ... - check all ONUs come up to previous state
228 [Tags] functionalOnuGo WrongMDSCounterAfterAdapterRestartOnuGo
229 [Setup] Run Keywords Start Logging WrongMDSCounterAfterAdapterRestartOnuGo
230 ... AND Setup Test
231 Run Keyword If ${has_dataplane} Clean Up Linux
232 Do Wrong MDS Counter After Adapter Restart
233 [Teardown] Run Keywords Printout ONU Serial Number and Device Id print2console=${print2console}
234 ... AND Run Keyword If ${logging} Get Logical Id of OLT
235 ... AND Run Keyword If ${logging} Collect Logs
236 ... AND Teardown Test
237 ... AND Stop Logging WrongMDSCounterAfterAdapterRestartOnuGo
238
TorstenThieme440b7c02020-12-18 15:42:57 +0000239*** Keywords ***
240Setup Suite
241 [Documentation] Set up the test suite
Andrea Campanella82add372021-11-05 12:01:15 +0100242 Start Logging Setup or Teardown Setup-${SUITE NAME}
TorstenThieme440b7c02020-12-18 15:42:57 +0000243 ${LogInfo}= Catenate
244 ... \r\nPassed arguments:
245 ... debugmode:${debugmode}, logging:${logging}, pausebeforecleanup:${pausebeforecleanup},
TorstenThieme47983692021-06-17 10:43:35 +0000246 ... print2console:${print2console}, usekill2restart:${usekill2restart}, workflow:${workflow},
247 ... kvstoreprefix:${kvstoreprefix}
TorstenThieme440b7c02020-12-18 15:42:57 +0000248 Log ${LogInfo} console=yes
249 Common Test Suite Setup
TorstenThieme00fe8262022-01-19 10:43:07 +0000250 # set tech profiles
TorstenThieme6ab99502022-02-07 15:00:59 +0000251 ${preload_tech_profile}= Set Variable If ${unitag_sub} and "${workflow}"=="TT" and not ${has_dataplane} True False
252 Set Suite Variable ${preload_tech_profile}
253 Run Keyword If ${preload_tech_profile} Set Tech Profile TT-HSIA ${INFRA_NAMESPACE} 64
254 Run Keyword If ${preload_tech_profile} Set Tech Profile TT-VoIP ${INFRA_NAMESPACE} 65
255 Run Keyword If ${preload_tech_profile} Set Tech Profile TT-multi-uni-MCAST-AdditionalBW-None ${INFRA_NAMESPACE} 66
TorstenThieme440b7c02020-12-18 15:42:57 +0000256 # delete etcd MIB Template Data
Hardik Windlass4288c6a2021-09-28 07:22:06 +0000257 Delete MIB Template Data ${INFRA_NAMESPACE}
TorstenThieme45071602021-03-16 12:14:37 +0000258 # delete etcd onu data
Hardik Windlass4288c6a2021-09-28 07:22:06 +0000259 Delete ONU Go Adapter ETCD Data namespace=${INFRA_NAMESPACE} validate=True
Andrea Campanella82add372021-11-05 12:01:15 +0100260 Run Keyword If ${logging} Collect Logs
261 Stop Logging Setup or Teardown Setup-${SUITE NAME}
TorstenThieme440b7c02020-12-18 15:42:57 +0000262
TorstenThieme70bc5262021-01-19 12:12:55 +0000263
TorstenThieme440b7c02020-12-18 15:42:57 +0000264Teardown Suite
265 [Documentation] Replaces the Suite Teardown in utils.robot.
266 ... Cleans up and checks all ONU ports disabled in ONOS.
267 ... Furthermore gives the possibility to pause the execution.
Andrea Campanella82add372021-11-05 12:01:15 +0100268 Start Logging Setup or Teardown Teardown-${SUITE NAME}
TorstenThieme440b7c02020-12-18 15:42:57 +0000269 Run Keyword If ${pausebeforecleanup} Import Library Dialogs
270 Run Keyword If ${pausebeforecleanup} Pause Execution Press OK to continue with clean up!
271 Run Keyword If ${pausebeforecleanup} Log Teardown will be continued... console=yes
272 Run Keyword If ${teardown_device} Delete All Devices and Verify
Hardik Windlass4288c6a2021-09-28 07:22:06 +0000273 Run Keyword If ${usekill2restart} Restart Pod By Label ${NAMESPACE} app adapter-open-onu
TorstenThieme45071602021-03-16 12:14:37 +0000274 Run Keyword Unless ${etcdcheckintestteardown} Wait Until Keyword Succeeds ${timeout} 1s
Hardik Windlass4288c6a2021-09-28 07:22:06 +0000275 ... Validate Onu Data In Etcd ${INFRA_NAMESPACE} 0 ${kvstoreprefix} without_pm_data=False
TorstenThieme731a7592021-07-01 14:26:54 +0000276 Wait for Ports in ONOS for all OLTs ${ONOS_SSH_IP} ${ONOS_SSH_PORT} 0 BBSM ${timeout}
Andrea Campanella82add372021-11-05 12:01:15 +0100277 Run Keyword If ${logging} Collect Logs
278 Stop Logging Setup or Teardown Teardown-${SUITE NAME}
TorstenThieme440b7c02020-12-18 15:42:57 +0000279 Close All ONOS SSH Connections
TorstenThieme00fe8262022-01-19 10:43:07 +0000280 Set Suite Variable ${TechProfile} ${EMPTY}
TorstenThieme6ab99502022-02-07 15:00:59 +0000281 Run Keyword If ${preload_tech_profile} Remove Tech Profile ${INFRA_NAMESPACE} 64
282 Run Keyword If ${preload_tech_profile} Remove Tech Profile ${INFRA_NAMESPACE} 65
283 Run Keyword If ${preload_tech_profile} Remove Tech Profile ${INFRA_NAMESPACE} 66
TorstenThieme440b7c02020-12-18 15:42:57 +0000284
285Setup Test
286 [Documentation] Pre-test Setup
287 #test for empty device list
288 Test Empty Device List
289 Run Keyword If ${has_dataplane} Wait Until Keyword Succeeds 120s 10s Openolt is Up
290 ... ${olt_ssh_ip} ${olt_user} ${olt_pass}
291 Run Keyword If ${has_dataplane} Sleep 60s
292 #restart open-onu pod to reset crash loop back off mechansim of kubenetes
TorstenThieme37165402021-09-03 11:39:40 +0000293 Run Keyword If "${firsttest}"=="False" and "${usekill2restart}"=="True"
Hardik Windlass4288c6a2021-09-28 07:22:06 +0000294 ... Restart Pod By Label ${NAMESPACE} app adapter-open-onu
TorstenThieme440b7c02020-12-18 15:42:57 +0000295 Run Keyword If "${firsttest}"=="False" Sleep 35s
296 ${firsttest} Set Variable False
297 Set Suite Variable ${firsttest}
298 # Create a list of olt ids (logical and device_id)
299 ${olt_ids} Create List
300 FOR ${I} IN RANGE 0 ${num_olts}
301 #create/preprovision device
Andrea Campanella3dcce272021-01-15 16:04:47 +0100302 ${olt_device_id}= Run Keyword If "${list_olts}[${I}][type]" == "${None}"
TorstenThieme44136642021-02-12 13:41:17 +0000303 ... Create Device ${list_olts}[${I}][ip] ${list_olts}[${I}][oltport]
304 ... ELSE Create Device ${list_olts}[${I}][ip] ${list_olts}[${I}][oltport] ${list_olts}[${I}][type]
TorstenThieme440b7c02020-12-18 15:42:57 +0000305 ${olt_serial_number}= Set Variable ${list_olts}[${I}][sn]
306 #validate olt states
307 Wait Until Keyword Succeeds ${timeout} 5s
Hardik Windlass8b446492021-06-10 06:25:23 +0000308 ... Validate OLT Device PREPROVISIONED UNKNOWN UNKNOWN ${olt_device_id} by_dev_id=True
TorstenThieme440b7c02020-12-18 15:42:57 +0000309 Sleep 5s
310 ${logical_id}= Get Logical Device ID From SN ${olt_serial_number}
311 ${olt} Create Dictionary device_id ${olt_device_id} logical_id ${logical_id}
312 ... of_id ${of_id} sn ${olt_serial_number}
313 Append To List ${olt_ids} ${olt}
314 END
315 Set Global Variable ${olt_ids}
316
317Teardown Test
318 [Documentation] Post-test Teardown
TorstenThieme45071602021-03-16 12:14:37 +0000319 Run Keyword If ${pausebeforecleanup} Import Library Dialogs
320 Run Keyword If ${pausebeforecleanup} Pause Execution Press OK to continue with clean up!
321 Run Keyword If ${pausebeforecleanup} Log Teardown will be continued... console=yes
TorstenThiemee9017be2021-03-05 16:59:31 +0000322 Run Keyword If ${teardown_device} Delete All Devices and Verify
TorstenThieme440b7c02020-12-18 15:42:57 +0000323 # delete etcd MIB Template Data
Matteo Scandolo6b524122021-10-22 14:34:29 -0700324 Delete MIB Template Data ${INFRA_NAMESPACE}
TorstenThiemeb355eb62021-03-09 14:04:55 +0000325 # check etcd data are empty
TorstenThieme45071602021-03-16 12:14:37 +0000326 Run Keyword If ${etcdcheckintestteardown} Wait Until Keyword Succeeds ${timeout} 1s
Hardik Windlass4288c6a2021-09-28 07:22:06 +0000327 ... Validate Onu Data In Etcd ${INFRA_NAMESPACE} 0 ${kvstoreprefix} without_pm_data=False
TorstenThieme440b7c02020-12-18 15:42:57 +0000328 Sleep 5s
329
330Do Reconcile In Determined State
331 [Documentation] This keyword reconciles ONU device when passed reason is reached and
332 ... check the state afterwards.
333 ... Following steps will be executed:
334 ... - enable OLT device
335 ... - wait for passed openonu reason
336 ... - restart openonu adaptor
TorstenThiemec3c23232021-01-13 13:06:31 +0000337 ... - perform sanity test include add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000338 [Arguments] ${expected_onu_reason}
TorstenThiemec3c23232021-01-13 13:06:31 +0000339 ${admin_state} ${oper_status} ${connect_status} ${onu_state_nb} ${onu_state}= Map State
340 ... ${expected_onu_reason}
341 Should Be True ${onu_state_nb}<=5
342 ... Wrong expected onu reason ${expected_onu_reason}, must be lower than 'omci-flows-pushed'!
TorstenThieme440b7c02020-12-18 15:42:57 +0000343 FOR ${I} IN RANGE 0 ${num_olts}
344 #get olt serial number
345 ${olt_serial_number}= Set Variable ${list_olts}[${I}][sn]
346 #validate olt states
347 ${olt_device_id}= Get OLTDeviceID From OLT List ${olt_serial_number}
348 Enable Device ${olt_device_id}
349 END
350 Current State Test All Onus ${expected_onu_reason}
TorstenThieme96fe9ee2021-10-21 10:24:08 +0000351 Reconcile Onu Adapter ${NAMESPACE} ${usekill2restart} ACTIVE
TorstenThiemec3c23232021-01-13 13:06:31 +0000352 Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT
TorstenThieme136ebf72021-02-26 14:27:07 +0000353 ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT
TorstenThiemec3c23232021-01-13 13:06:31 +0000354 ... ELSE Perform Sanity Test
TorstenThieme440b7c02020-12-18 15:42:57 +0000355
356Do Reconcile For Disabled Onu Device
357 [Documentation] This keyword reconciles ONU device for a disabled onu device and
358 ... check the state afterwards.
359 ... Following steps will be executed:
360 ... - enable OLT device
TorstenThiemec3c23232021-01-13 13:06:31 +0000361 ... - perform sanity test include add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000362 ... - disable onu device
TorstenThiemec3c23232021-01-13 13:06:31 +0000363 ... - wait for corresponding openonu reason
TorstenThieme440b7c02020-12-18 15:42:57 +0000364 ... - check UNI-ports disabled in ONOS
365 ... - restart openonu adaptor
366 ... - check openonu adaptor is ready again
TorstenThiemec3c23232021-01-13 13:06:31 +0000367 ... - check device reason is still before restart
TorstenThieme440b7c02020-12-18 15:42:57 +0000368 ... - enable onu device
TorstenThiemec3c23232021-01-13 13:06:31 +0000369 ... - perform sanity test suppress add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000370 FOR ${I} IN RANGE 0 ${num_olts}
371 #get olt serial number
372 ${olt_serial_number}= Set Variable ${list_olts}[${I}][sn]
373 #validate olt states
374 ${olt_device_id}= Get OLTDeviceID From OLT List ${olt_serial_number}
375 Enable Device ${olt_device_id}
376 END
TorstenThiemec3c23232021-01-13 13:06:31 +0000377 Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT
TorstenThieme136ebf72021-02-26 14:27:07 +0000378 ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT
TorstenThiemec3c23232021-01-13 13:06:31 +0000379 ... ELSE Perform Sanity Test
TorstenThieme440b7c02020-12-18 15:42:57 +0000380 Disable Onu Device
Andrea Campanella753510e2022-04-28 23:26:27 +0200381 Run Keyword If "${workflow}"=="DT" Current State Test All Onus omci-admin-lock
TorstenThieme20e16272022-07-13 06:51:18 +0000382 ... ELSE IF "${workflow}"=="TT" Current State Test All Onus tech-profile-config-delete-success
383 ... ELSE Current State Test All Onus tech-profile-config-delete-success
TorstenThieme00fe8262022-01-19 10:43:07 +0000384 #check no port is enabled in ONOS
385 Wait for Ports in ONOS for all OLTs ${ONOS_SSH_IP} ${ONOS_SSH_PORT} 0 BBSM
386 Wait for all ONU Ports in ONOS Disabled ${ONOS_SSH_IP} ${ONOS_SSH_PORT} ${unitag_sub}
387 # validate etcd data
388 ${List_ONU_Serial} Create List
389 Build ONU SN List ${List_ONU_Serial}
TorstenThieme20e16272022-07-13 06:51:18 +0000390 ${must_exist}= Set Variable If "${workflow}"=="DT" True False
391 ${check_empty}= Set Variable If "${workflow}"=="DT" False True
TorstenThieme00fe8262022-01-19 10:43:07 +0000392 FOR ${onu_sn} IN @{List_ONU_Serial}
393 Wait Until Keyword Succeeds ${timeout} 2s Validate Tech Profiles and Flows in ETCD Data Per Onu
TorstenThieme20e16272022-07-13 06:51:18 +0000394 ... ${onu_sn} ${INFRA_NAMESPACE} ${kvstoreprefix} must_exist=${must_exist} check_tcont_map_empty=${check_empty}
TorstenThieme569ef452022-02-07 14:00:26 +0000395 ... check_default_flow_att=False
TorstenThieme00fe8262022-01-19 10:43:07 +0000396 END
TorstenThieme96fe9ee2021-10-21 10:24:08 +0000397 Reconcile Onu Adapter ${NAMESPACE} ${usekill2restart} UNKNOWN
Andrea Campanella753510e2022-04-28 23:26:27 +0200398 Run Keyword If "${workflow}"=="DT" Current State Test All Onus omci-admin-lock
TorstenThieme20e16272022-07-13 06:51:18 +0000399 ... ELSE IF "${workflow}"=="TT" Current State Test All Onus tech-profile-config-delete-success
400 ... ELSE Current State Test All Onus tech-profile-config-delete-success
TorstenThieme00fe8262022-01-19 10:43:07 +0000401 Wait for all ONU Ports in ONOS Disabled ${ONOS_SSH_IP} ${ONOS_SSH_PORT} ${unitag_sub}
TorstenThieme440b7c02020-12-18 15:42:57 +0000402 Enable Onu Device
TorstenThieme70bc5262021-01-19 12:12:55 +0000403 Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT ${suppressaddsubscriber}
TorstenThieme136ebf72021-02-26 14:27:07 +0000404 ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT ${suppressaddsubscriber}
TorstenThieme70bc5262021-01-19 12:12:55 +0000405 ... ELSE Perform Sanity Test ${suppressaddsubscriber}
TorstenThieme440b7c02020-12-18 15:42:57 +0000406
407Do Reconcile In Omci-Flows-Pushed
408 [Documentation] This keyword reconciles ONU device in omci-flows-pushed and check the state afterwards.
409 ... Reconcile test during omci-flows-pushed in AT&T-workflow:
410 ... - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store)
TorstenThiemec3c23232021-01-13 13:06:31 +0000411 ... - perform sanity test include add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000412 ... - kill the open-onu-adapter-go
TorstenThiemec3c23232021-01-13 13:06:31 +0000413 ... - wait for open-onu-adapter-go to restart
414 ... - perform sanity test suppress add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000415 ... - disable onu device
TorstenThiemec3c23232021-01-13 13:06:31 +0000416 ... - wait for corresponding device reason
417 ... - check UNI-ports disabled in ONOS
TorstenThieme440b7c02020-12-18 15:42:57 +0000418 ... - enable onu device
TorstenThiemec3c23232021-01-13 13:06:31 +0000419 ... - perform sanity test supress add subscriber
TorstenThieme440b7c02020-12-18 15:42:57 +0000420 FOR ${I} IN RANGE 0 ${num_olts}
421 #get olt serial number
422 ${olt_serial_number}= Set Variable ${list_olts}[${I}][sn]
423 #validate olt states
424 ${olt_device_id}= Get OLTDeviceID From OLT List ${olt_serial_number}
425 Enable Device ${olt_device_id}
426 END
TorstenThiemec3c23232021-01-13 13:06:31 +0000427 Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT
TorstenThieme136ebf72021-02-26 14:27:07 +0000428 ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT
TorstenThiemec3c23232021-01-13 13:06:31 +0000429 ... ELSE Perform Sanity Test
TorstenThieme96fe9ee2021-10-21 10:24:08 +0000430 Reconcile Onu Adapter ${NAMESPACE} ${usekill2restart} ACTIVE
TorstenThieme70bc5262021-01-19 12:12:55 +0000431 Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT ${suppressaddsubscriber}
TorstenThieme136ebf72021-02-26 14:27:07 +0000432 ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT ${suppressaddsubscriber}
TorstenThieme70bc5262021-01-19 12:12:55 +0000433 ... ELSE Perform Sanity Test ${suppressaddsubscriber}
TorstenThieme440b7c02020-12-18 15:42:57 +0000434 Disable Onu Device
Andrea Campanella753510e2022-04-28 23:26:27 +0200435 Run Keyword If "${workflow}"=="DT" Current State Test All Onus omci-admin-lock
TorstenThieme20e16272022-07-13 06:51:18 +0000436 ... ELSE IF "${workflow}"=="TT" Current State Test All Onus tech-profile-config-delete-success
437 ... ELSE Current State Test All Onus tech-profile-config-delete-success
TorstenThieme00fe8262022-01-19 10:43:07 +0000438 Wait for all ONU Ports in ONOS Disabled ${ONOS_SSH_IP} ${ONOS_SSH_PORT} ${unitag_sub}
TorstenThieme440b7c02020-12-18 15:42:57 +0000439 Enable Onu Device
TorstenThieme70bc5262021-01-19 12:12:55 +0000440 Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT ${suppressaddsubscriber}
TorstenThieme136ebf72021-02-26 14:27:07 +0000441 ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT ${suppressaddsubscriber}
TorstenThieme70bc5262021-01-19 12:12:55 +0000442 ... ELSE Perform Sanity Test ${suppressaddsubscriber}
TorstenThieme712b2962021-11-17 14:16:15 +0000443
444
445Do Olt Deletion After Adapter Restart
446 [Documentation] This keyword deletes OLT after adapter restart and checks deleted device(s) and data
447 ... - prefered environment is two ONUs are active on each of two OLTs, but test works also with single ONU/OLT
448 ... - restart the ONU adapter preferred via "kubectl delete pod"
449 ... - delete one OLT immediately after the restart has been initiated
450 ... - wait until the restart of the ONU adapter and the reconcile processing are finished
451 ... - check whether the ONUs on the remaining OLT have been properly reconciled (if avaialable)
452 ... - check whether the ONUs at the deleted OLT have disappeared from the device list
453 ... - KV store data of these ONUs are deleted under:
454 ... - <kvStorePrefix>/openonu/<deviceId>
455 ... - <kvStorePrefix>/openonu/pm-data/<deviceId>
456 ... - check for not deleted device(s) reason is still the same before restart (if available)
457 ... - delete ONU and MIB-template in KV-store
458 ... Check [VOL-4443] for more details
459 FOR ${I} IN RANGE 0 ${num_olts}
460 #get olt serial number
461 ${olt_serial_number}= Set Variable ${list_olts}[${I}][sn]
462 #validate olt states
463 ${olt_device_id}= Get OLTDeviceID From OLT List ${olt_serial_number}
464 Enable Device ${olt_device_id}
465 END
TorstenThiemef7cd2be2021-12-06 14:30:11 +0000466 # bring all onus to active -> OMCI-Flows-Pushed
TorstenThieme712b2962021-11-17 14:16:15 +0000467 Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT
468 ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT
469 ... ELSE Perform Sanity Test
470 # OLT#1 will be deleted, get its SN
471 ${olt_to_be_deleted}= Set Variable ${olts[0]['serial']}
472 ${olt_to_be_deleted_device_id}= Get OLTDeviceID From OLT List ${olt_to_be_deleted}
473 # collect all ONU device ids belonging to OLT to be deleted
474 ${onu_device_id_list_should_be_deleted} Create List
475 Build ONU Device Id List ${onu_device_id_list_should_be_deleted} ${olt_to_be_deleted}
476 Log ${onu_device_id_list_should_be_deleted}
477 Reconcile Onu Adapter ${NAMESPACE} ${usekill2restart} ACTIVE ${olt_to_be_deleted}
478 # validate OLT and all corresponding ONUs are removed
479 Validate all ONUS for OLT Removed ${num_all_onus} ${hosts} ${olt_to_be_deleted} ${timeout}
480 Validate Device Removed ${olt_to_be_deleted}
481 # validate for alle removed ONUs KV store date deleted
482 FOR ${onu_device_id} IN @{onu_device_id_list_should_be_deleted}
483 Log ${onu_device_id}
484 Wait Until Keyword Succeeds ${timeout} 1s Validate Onu Data In Etcd Removed ${INFRA_NAMESPACE}
485 ... ${onu_device_id} ${kvstoreprefix} without_pm_data=False
486 END
487 FOR ${I} IN RANGE 0 ${num_all_onus}
488 ${src}= Set Variable ${hosts.src[${I}]}
489 Continue For Loop If "${olt_to_be_deleted}"=="${src['olt']}"
490 Current State Test omci-flows-pushed ${src['onu']}
491 END
TorstenThiemef7cd2be2021-12-06 14:30:11 +0000492
493Do Flow Deletion After Adapter Restart
494 [Documentation] This keyword removes flow(s) after adapter restart and checks removed flow(s)
495 ... - perform sanity test include add subscriber
496 ... - restart the ONU adapter preferred via "kubectl delete pod"
497 ... - remove flow(s) from one ONU immediately after the restart has been initiated
498 ... - wait until the restart of the ONU adapter and the reconcile processing are finished
499 ... - check removed flow(s) from ONU
500 ... - check for not removed flows still the same before restart (if available)
501 FOR ${I} IN RANGE 0 ${num_olts}
502 #get olt serial number
503 ${olt_serial_number}= Set Variable ${list_olts}[${I}][sn]
504 #validate olt states
505 ${olt_device_id}= Get OLTDeviceID From OLT List ${olt_serial_number}
506 Enable Device ${olt_device_id}
507 END
508 # bring all onus to active -> OMCI-Flows-Pushed
509 Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT
510 ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT
511 ... ELSE Perform Sanity Test
512 # log ONOS flows before remove
513 ${flow}= Execute ONOS CLI Command use single connection
514 ... ${ONOS_SSH_IP} ${ONOS_SSH_PORT} flows -s any ${of_id}
515 Log ${flow}
516 # validate OLT flows before remove
517 ${onu_device_id_list} Create List
518 Build ONU Device Id List ${onu_device_id_list}
519 Log ${onu_device_id_list}
520 FOR ${onu_device_id} IN @{onu_device_id_list}
521 Log ${onu_device_id}
522 ${rc} ${output}= Run and Return Rc and Output
Andrea Campanella28989d12022-01-11 09:49:21 +0100523 ... voltctl -c ${VOLTCTL_CONFIG} device flows ${onu_device_id} -m 32MB -o json
TorstenThiemef7cd2be2021-12-06 14:30:11 +0000524 Should Be Equal As Integers ${rc} 0
525 ${jsondata}= To Json ${output}
526 Log ${jsondata}
527 END
528 # Collect data for remove flow(s)
529 ${of_id}= Wait Until Keyword Succeeds ${timeout} 15s Validate OLT Device in ONOS ${hosts.src[0]['olt']}
TorstenThieme00fe8262022-01-19 10:43:07 +0000530 ${onu_sn}= Set Variable ${hosts.src[0]['onu']}
531 ${onu_port_list} Create List
532 FOR ${I} IN RANGE 0 ${num_all_onus}
533 ${src}= Set Variable ${hosts.src[${I}]}
534 Continue For Loop If "${onu_sn}"!="${src['onu']}"
535 ${onu_port}= Wait Until Keyword Succeeds ${timeout} 2s Get ONU Port in ONOS ${src['onu']}
536 ... ${of_id} ${src['uni_id']}
537 ${port_id}= Get Index From List ${onu_port_list} ${onu_port}
538 Continue For Loop If -1 != ${port_id}
539 Append To List ${onu_port_list} ${onu_port}
540 END
541 ${params_for_remove_flow}= Create Dictionary unitag=${unitag_sub} onu_sn=${onu_sn} of_id=${of_id}
542 ... onu_port=${onu_port_list[0]}
TorstenThiemef7cd2be2021-12-06 14:30:11 +0000543 # Collect number of flows for comparing after Reconcile
544 ${olt_flows_list} Create List
545 FOR ${I} IN RANGE 0 ${num_olts}
546 ${olt_of_id}= Wait Until Keyword Succeeds ${timeout} 15s Validate OLT Device in ONOS ${list_olts}[${I}][sn]
547 ${flows}= Count flows ${ONOS_SSH_IP} ${ONOS_SSH_PORT} ${olt_of_id} added
548 ${olt_flows}= Create Dictionary olt=${olt_of_id} flows=${flows}
549 Append To List ${olt_flows_list} ${olt_flows}
550 END
TorstenThieme00fe8262022-01-19 10:43:07 +0000551 ${flows_onu}= Set Variable 0
552 FOR ${onu_port} IN @{onu_port_list}
553 ${flows_onu_port}= Count flows ${ONOS_SSH_IP} ${ONOS_SSH_PORT} ${of_id} added ${onu_port}
554 ${flows_onu}= Evaluate ${flows_onu} + ${flows_onu_port}
555 END
TorstenThiemef7cd2be2021-12-06 14:30:11 +0000556 # Restart onu adapter with deleting flows from first onu
557 Reconcile Onu Adapter ${NAMESPACE} ${usekill2restart} ACTIVE flow_delete_params=${params_for_remove_flow}
558 # validate flows in ONOS after remove
559 ${flow}= Execute ONOS CLI Command use single connection
560 ... ${ONOS_SSH_IP} ${ONOS_SSH_PORT} flows -s any ${of_id}
561 Log ${flow}
562 ${expected_flows_onu}= Set Variable If "${workflow}"=="ATT" 1 0
TorstenThieme00fe8262022-01-19 10:43:07 +0000563 FOR ${onu_port} IN @{onu_port_list}
564 Wait Until Keyword Succeeds ${timeout} 2s Validate number of flows ${ONOS_SSH_IP} ${ONOS_SSH_PORT}
565 ... ${expected_flows_onu} ${of_id} any ${onu_port}
566 END
TorstenThiemed6492882021-12-16 08:10:02 +0000567 ${flow}= Execute ONOS CLI Command use single connection
568 ... ${ONOS_SSH_IP} ${ONOS_SSH_PORT} flows -s any ${of_id}
569 Log ${flow}
TorstenThieme00fe8262022-01-19 10:43:07 +0000570 # Beside onu port specific flows additional flows deleted depending on workflow and number of onu ports
571 ${number_ports}= Get Length ${onu_port_list}
572 ${additional_flows_deleted}= Run Keyword If "${workflow}"=="DT" Set Variable ${number_ports}
573 ... ELSE IF "${workflow}"=="TT" Evaluate ${number_ports}*3
574 ... ELSE IF "${workflow}"=="ATT" Set Variable 0
575 ... ELSE Set Variable 0
TorstenThiemef7cd2be2021-12-06 14:30:11 +0000576 FOR ${I} IN RANGE 0 ${num_olts}
TorstenThiemef7cd2be2021-12-06 14:30:11 +0000577 ${expected_flows}= Run Keyword If "${of_id}"=="${olt_flows_list}[${I}][olt]"
578 ... Evaluate ${olt_flows_list}[${I}][flows]-${flows_onu}-${additional_flows_deleted}
579 ... ELSE Set Variable ${olt_flows_list}[${I}][flows]
TorstenThiemed6492882021-12-16 08:10:02 +0000580 Wait Until Keyword Succeeds ${timeout} 2s Validate ONOS Flows per OLT ${list_olts}[${I}][sn]
581 ... ${expected_flows}
TorstenThiemef7cd2be2021-12-06 14:30:11 +0000582 END
TorstenThiemed6492882021-12-16 08:10:02 +0000583 ${flow}= Execute ONOS CLI Command use single connection
584 ... ${ONOS_SSH_IP} ${ONOS_SSH_PORT} flows -s any ${of_id}
585 Log ${flow}
TorstenThiemef7cd2be2021-12-06 14:30:11 +0000586 # validate etcd data
587 ${List_ONU_Serial} Create List
588 Build ONU SN List ${List_ONU_Serial}
589 ${onu_sn_no_flows}= Set Variable ${hosts.src[0]['onu']}
590 FOR ${onu_sn} IN @{List_ONU_Serial}
591 ${must_exist}= Set Variable If "${onu_sn}"=="${onu_sn_no_flows}" False True
TorstenThiemed6492882021-12-16 08:10:02 +0000592 Wait Until Keyword Succeeds ${timeout} 2s Validate Tech Profiles and Flows in ETCD Data Per Onu
593 ... ${onu_sn} ${INFRA_NAMESPACE} ${kvstoreprefix} ${must_exist}
TorstenThiemef7cd2be2021-12-06 14:30:11 +0000594 END
595 ${onu_device_id_no_flows}= Get Device ID From SN ${hosts.src[0]['onu']}
596 FOR ${onu_device_id} IN @{onu_device_id_list}
597 Log ${onu_device_id}
598 ${must_exist}= Set Variable If "${onu_device_id}"=="${onu_device_id_no_flows}" False True
599 Validate OLT Flows Per Onu ${onu_device_id} ${must_exist}
600 END
TorstenThieme00fe8262022-01-19 10:43:07 +0000601
602Do Wrong MDS Counter After Adapter Restart
603 [Documentation] This keyword checks correct handling of a wrong MDS counter after adapter restart
604 ... - perform sanity test include add subscriber
605 ... - restart the ONU adapter preferred via "kubectl delete pod"
606 ... - manipulate MDS counter
607 ... - wait until the restart of the ONU adapter and the reconcile processing are finished
608 ... - check all ONUs come up to previous state
609 FOR ${I} IN RANGE 0 ${num_olts}
610 #get olt serial number
611 ${olt_serial_number}= Set Variable ${list_olts}[${I}][sn]
612 #validate olt states
613 ${olt_device_id}= Get OLTDeviceID From OLT List ${olt_serial_number}
614 Enable Device ${olt_device_id}
615 END
616 Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT
617 ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT
618 ... ELSE Perform Sanity Test
619 Reconcile Onu Adapter ${NAMESPACE} ${usekill2restart} ACTIVE wrong_MDS_counter=True
620 Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT ${suppressaddsubscriber}
621 ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT ${suppressaddsubscriber}
622 ... ELSE Perform Sanity Test ${suppressaddsubscriber}
623 Disable Onu Device
TorstenThiemeacc91262022-05-05 10:38:56 +0000624 Run Keyword If "${workflow}"=="DT" Current State Test All Onus omci-admin-lock
TorstenThieme20e16272022-07-13 06:51:18 +0000625 ... ELSE IF "${workflow}"=="TT" Current State Test All Onus tech-profile-config-delete-success
626 ... ELSE Current State Test All Onus tech-profile-config-delete-success
TorstenThieme00fe8262022-01-19 10:43:07 +0000627 Wait for all ONU Ports in ONOS Disabled ${ONOS_SSH_IP} ${ONOS_SSH_PORT} ${unitag_sub}
628 Enable Onu Device
629 Run Keyword If "${workflow}"=="DT" Perform Sanity Test DT ${suppressaddsubscriber}
630 ... ELSE IF "${workflow}"=="TT" Perform Sanity Tests TT ${suppressaddsubscriber}
631 ... ELSE Perform Sanity Test ${suppressaddsubscriber}