1#!/usr/bin/env python3 2# 3# Copyright 2022 - Google 4# 5# Licensed under the Apache License, Version 2.0 (the "License"); 6# you may not use this file except in compliance with the License. 7# You may obtain a copy of the License at 8# 9# http://www.apache.org/licenses/LICENSE-2.0 10# 11# Unless required by applicable law or agreed to in writing, software 12# distributed under the License is distributed on an "AS IS" BASIS, 13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14# See the License for the specific language governing permissions and 15# limitations under the License. 16 17import time 18 19from acts import signals 20from acts.test_decorators import test_tracker_info 21from acts_contrib.test_utils.tel.loggers.protos.telephony_metric_pb2 import TelephonyVoiceTestResult 22from acts_contrib.test_utils.tel.loggers.telephony_metric_logger import TelephonyMetricLogger 23from acts_contrib.test_utils.tel.TelephonyBaseTest import TelephonyBaseTest 24from acts_contrib.test_utils.tel.tel_defines import MAX_WAIT_TIME_SMS_RECEIVE 25from acts_contrib.test_utils.tel.tel_defines import INVALID_SUB_ID 26from acts_contrib.test_utils.tel.tel_defines import WFC_MODE_DISABLED 27from acts_contrib.test_utils.tel.tel_defines import WFC_MODE_CELLULAR_PREFERRED 28from acts_contrib.test_utils.tel.tel_defines import WFC_MODE_WIFI_PREFERRED 29from acts_contrib.test_utils.tel.tel_data_utils import reboot_test 30from acts_contrib.test_utils.tel.tel_data_utils import start_youtube_video 31from acts_contrib.test_utils.tel.tel_data_utils import wait_for_cell_data_connection_for_subscription 32from acts_contrib.test_utils.tel.tel_ims_utils import is_volte_enabled 33from acts_contrib.test_utils.tel.tel_ims_utils import set_wfc_mode_for_subscription 34from acts_contrib.test_utils.tel.tel_ims_utils import toggle_volte_for_subscription 35from acts_contrib.test_utils.tel.tel_ims_utils import toggle_wfc_for_subscription 36from acts_contrib.test_utils.tel.tel_ims_utils import wait_for_wfc_enabled 37from acts_contrib.test_utils.tel.tel_message_utils import sms_send_receive_verify_for_subscription 38from acts_contrib.test_utils.tel.tel_message_utils import mms_send_receive_verify 39from acts_contrib.test_utils.tel.tel_message_utils import log_messaging_screen_shot 40from acts_contrib.test_utils.tel.tel_phone_setup_utils import ensure_phones_idle 41from acts_contrib.test_utils.tel.tel_phone_setup_utils import phone_setup_volte_for_subscription 42from acts_contrib.test_utils.tel.tel_phone_setup_utils import phone_setup_on_rat 43from acts_contrib.test_utils.tel.tel_subscription_utils import get_subid_from_slot_index 44from acts_contrib.test_utils.tel.tel_subscription_utils import get_default_data_sub_id 45from acts_contrib.test_utils.tel.tel_subscription_utils import get_slot_index_from_subid 46from acts_contrib.test_utils.tel.tel_subscription_utils import get_subid_from_slot_index 47from acts_contrib.test_utils.tel.tel_subscription_utils import set_message_subid 48from acts_contrib.test_utils.tel.tel_subscription_utils import set_subid_for_data 49from acts_contrib.test_utils.tel.tel_subscription_utils import set_voice_sub_id 50from acts_contrib.test_utils.tel.tel_subscription_utils import set_dds_on_slot_0 51from acts_contrib.test_utils.tel.tel_subscription_utils import set_dds_on_slot_1 52from acts_contrib.test_utils.tel.tel_subscription_utils import get_subid_on_same_network_of_host_ad 53from acts_contrib.test_utils.tel.tel_test_utils import verify_http_connection 54from acts_contrib.test_utils.tel.tel_test_utils import verify_internet_connection 55from acts_contrib.test_utils.tel.tel_test_utils import toggle_airplane_mode 56from acts_contrib.test_utils.tel.tel_voice_utils import is_phone_in_call_on_rat 57from acts_contrib.test_utils.tel.tel_voice_utils import two_phone_call_msim_for_slot 58from acts_contrib.test_utils.tel.tel_wifi_utils import check_is_wifi_connected 59from acts_contrib.test_utils.tel.tel_wifi_utils import ensure_wifi_connected 60from acts.utils import rand_ascii_str 61 62CallResult = TelephonyVoiceTestResult.CallResult.Value 63 64 65class TelLiveGFTDSDSDDSSwitchTest(TelephonyBaseTest): 66 def setup_class(self): 67 TelephonyBaseTest.setup_class(self) 68 self.message_lengths = (50, 160, 180) 69 self.tel_logger = TelephonyMetricLogger.for_test_case() 70 71 def teardown_test(self): 72 ensure_phones_idle(self.log, self.android_devices) 73 74 def _msim_message_test( 75 self, 76 ad_mo, 77 ad_mt, 78 mo_sub_id, 79 mt_sub_id, msg="SMS", 80 max_wait_time=MAX_WAIT_TIME_SMS_RECEIVE, 81 expected_result=True): 82 """Make MO/MT SMS/MMS at specific slot. 83 84 Args: 85 ad_mo: Android object of the device sending SMS/MMS 86 ad_mt: Android object of the device receiving SMS/MMS 87 mo_sub_id: Sub ID of MO device 88 mt_sub_id: Sub ID of MT device 89 max_wait_time: Max wait time before SMS/MMS is received. 90 expected_result: True for successful sending/receiving and False on 91 the contrary 92 93 Returns: 94 True if the result matches expected_result and False on the 95 contrary. 96 """ 97 98 if msg == "SMS": 99 for length in self.message_lengths: 100 message_array = [rand_ascii_str(length)] 101 if not sms_send_receive_verify_for_subscription( 102 self.log, 103 ad_mo, 104 ad_mt, 105 mo_sub_id, 106 mt_sub_id, 107 message_array, 108 max_wait_time): 109 ad_mo.log.warning( 110 "%s of length %s test failed", msg, length) 111 return False 112 else: 113 ad_mo.log.info( 114 "%s of length %s test succeeded", msg, length) 115 self.log.info("%s test of length %s characters succeeded.", 116 msg, self.message_lengths) 117 118 elif msg == "MMS": 119 for length in self.message_lengths: 120 message_array = [("Test Message", rand_ascii_str(length), None)] 121 122 if not mms_send_receive_verify( 123 self.log, 124 ad_mo, 125 ad_mt, 126 message_array, 127 max_wait_time, 128 expected_result): 129 self.log.warning("%s of body length %s test failed", 130 msg, length) 131 return False 132 else: 133 self.log.info( 134 "%s of body length %s test succeeded", msg, length) 135 self.log.info("%s test of body lengths %s succeeded", 136 msg, self.message_lengths) 137 return True 138 139 def _test_dds_switch_during_data_transfer( 140 self, 141 slot_0_nw_gen="volte", 142 slot_1_nw_gen="volte", 143 call_slot=0, 144 call_direction=None, 145 call_or_sms_or_mms="call", 146 streaming=True, 147 is_airplane_mode=False, 148 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED]): 149 """Switch DDS and make voice call (VoLTE/WFC/CS call)/SMS/MMS together 150 with Youtube playing after each DDS switch at specific slot in specific 151 RAT. 152 153 Test step: 154 1. Get sub ID of each slot of the primary device. 155 2. Set up phones in desired RAT. 156 3. Switch DDS to slot 0. 157 4. Check HTTP connection after DDS switch. 158 5. Play Youtube. 159 6. Make voice call (VoLTE/WFC/CS call)/SMS/MMS 160 7. Switch DDS to slot 1 and repeat step 4-6. 161 8. Switch DDS to slot 0 again and repeat step 4-6. 162 163 Args: 164 1, slot_0_nw_gen: Network generation of slot 0 on the primary device 165 2, slot_1_nw_gen: Network generation of slot 1 on the primary device 166 3. call_slot: Slot for making voice call 167 4. call_direction: "mo" or "mt" or None to stoping making call. 168 5. call_or_sms_or_mms: Voice call or SMS or MMS 169 6. streaming: True for playing Youtube after DDS switch and False on 170 the contrary. 171 7. is_airplane_mode: True of False for WFC setup 172 8. wfc_mode: Cellular preferred or Wi-Fi preferred. 173 174 Returns: 175 True or False 176 """ 177 ad = self.android_devices[0] 178 slot_0_subid = get_subid_from_slot_index(self.log, ad, 0) 179 slot_1_subid = get_subid_from_slot_index(self.log, ad, 1) 180 181 if slot_0_subid == INVALID_SUB_ID or slot_1_subid == INVALID_SUB_ID: 182 ad.log.error("Not all slots have valid sub ID.") 183 raise signals.TestFailure("Failed", 184 extras={"fail_reason": "Not all slots have valid sub ID"}) 185 186 ad.log.info( 187 "Step 0: Set up phone in desired RAT (slot 0: %s, slot 1: %s)", 188 slot_0_nw_gen, slot_1_nw_gen) 189 190 if not phone_setup_on_rat( 191 self.log, 192 ad, 193 slot_0_nw_gen, 194 slot_0_subid, 195 is_airplane_mode, 196 wfc_mode[0], 197 self.wifi_network_ssid, 198 self.wifi_network_pass): 199 200 self.log.error("Phone Failed to Set Up Properly.") 201 self.tel_logger.set_result(CallResult("CALL_SETUP_FAILURE")) 202 raise signals.TestFailure("Failed", 203 extras={"fail_reason": "Phone Failed to Set Up Properly."}) 204 205 if not phone_setup_on_rat( 206 self.log, 207 ad, 208 slot_1_nw_gen, 209 slot_1_subid, 210 is_airplane_mode, 211 wfc_mode[1], 212 self.wifi_network_ssid, 213 self.wifi_network_pass): 214 215 self.log.error("Phone Failed to Set Up Properly.") 216 self.tel_logger.set_result(CallResult("CALL_SETUP_FAILURE")) 217 raise signals.TestFailure("Failed", 218 extras={"fail_reason": "Phone Failed to Set Up Properly."}) 219 220 is_slot0_in_call = is_phone_in_call_on_rat( 221 self.log, ad, slot_0_nw_gen, True) 222 is_slot1_in_call = is_phone_in_call_on_rat( 223 self.log, ad, slot_1_nw_gen, True) 224 225 for attempt in range(3): 226 if attempt != 0: 227 ad.log.info("Repeat step 1 to 4.") 228 229 ad.log.info("Step 1: Switch DDS.") 230 if attempt % 2 == 0: 231 set_dds_on_slot_0(ad) 232 else: 233 set_dds_on_slot_1(ad) 234 235 ad.log.info("Step 2: Check HTTP connection after DDS switch.") 236 if not verify_http_connection(self.log, ad): 237 ad.log.error("Failed to verify http connection.") 238 return False 239 else: 240 ad.log.info("Verify http connection successfully.") 241 242 if streaming: 243 ad.log.info("Step 3: Start Youtube streaming.") 244 if not start_youtube_video(ad): 245 ad.log.warning("Fail to bring up youtube video") 246 time.sleep(10) 247 else: 248 ad.log.info("Step 3: Skip Youtube streaming.") 249 250 if not call_direction: 251 return True 252 else: 253 expected_result = True 254 if call_direction == "mo": 255 ad_mo = self.android_devices[0] 256 ad_mt = self.android_devices[1] 257 mo_sub_id = get_subid_from_slot_index(self.log, ad, call_slot) 258 if call_or_sms_or_mms == "call": 259 set_voice_sub_id(ad_mo, mo_sub_id) 260 _, mt_sub_id, _ = get_subid_on_same_network_of_host_ad( 261 self.android_devices) 262 263 if call_slot == 0: 264 is_mo_in_call = is_slot0_in_call 265 elif call_slot == 1: 266 is_mo_in_call = is_slot1_in_call 267 is_mt_in_call = None 268 269 elif call_or_sms_or_mms == "sms": 270 set_message_subid(ad_mo, mo_sub_id) 271 _, mt_sub_id, _ = get_subid_on_same_network_of_host_ad( 272 self.android_devices, type="sms") 273 set_message_subid(ad_mt, mt_sub_id) 274 275 elif call_or_sms_or_mms == "mms": 276 current_data_sub_id = get_default_data_sub_id(ad_mo) 277 if mo_sub_id != current_data_sub_id: 278 ad_mo.log.warning( 279 "Current data sub ID (%s) does not match" 280 " message sub ID (%s). MMS should NOT be sent.", 281 current_data_sub_id, mo_sub_id) 282 expected_result = False 283 set_message_subid(ad_mo, mo_sub_id) 284 _, mt_sub_id, _ = get_subid_on_same_network_of_host_ad( 285 self.android_devices, type="sms") 286 set_message_subid(ad_mt, mt_sub_id) 287 set_subid_for_data(ad_mt, mt_sub_id) 288 ad_mt.droid.telephonyToggleDataConnection(True) 289 290 elif call_direction == "mt": 291 ad_mo = self.android_devices[1] 292 ad_mt = self.android_devices[0] 293 mt_sub_id = get_subid_from_slot_index(self.log, ad, call_slot) 294 if call_or_sms_or_mms == "call": 295 set_voice_sub_id(ad_mt, mt_sub_id) 296 _, mo_sub_id, _ = get_subid_on_same_network_of_host_ad( 297 self.android_devices) 298 299 if call_slot == 0: 300 is_mt_in_call = is_slot0_in_call 301 elif call_slot == 1: 302 is_mt_in_call = is_slot1_in_call 303 is_mo_in_call = None 304 305 elif call_or_sms_or_mms == "sms": 306 set_message_subid(ad_mt, mt_sub_id) 307 _, mo_sub_id, _ = get_subid_on_same_network_of_host_ad( 308 self.android_devices, type="sms") 309 set_message_subid(ad_mo, mo_sub_id) 310 311 elif call_or_sms_or_mms == "mms": 312 current_data_sub_id = get_default_data_sub_id(ad_mt) 313 if mt_sub_id != current_data_sub_id: 314 ad_mt.log.warning( 315 "Current data sub ID (%s) does not match" 316 " message sub ID (%s). MMS should NOT be" 317 " received.", current_data_sub_id, mt_sub_id) 318 expected_result = False 319 set_message_subid(ad_mt, mt_sub_id) 320 _, mo_sub_id, _ = get_subid_on_same_network_of_host_ad( 321 self.android_devices, type="sms") 322 set_message_subid(ad_mo, mo_sub_id) 323 set_subid_for_data(ad_mo, mo_sub_id) 324 ad_mo.droid.telephonyToggleDataConnection(True) 325 326 if call_or_sms_or_mms == "call": 327 self.log.info("Step 4: Make voice call.") 328 mo_slot = get_slot_index_from_subid(ad_mo, mo_sub_id) 329 mt_slot = get_slot_index_from_subid(ad_mt, mt_sub_id) 330 result = two_phone_call_msim_for_slot( 331 self.log, 332 ad_mo, 333 mo_slot, 334 None, 335 is_mo_in_call, 336 ad_mt, 337 mt_slot, 338 None, 339 is_mt_in_call) 340 self.tel_logger.set_result(result.result_value) 341 342 if not result: 343 self.log.error( 344 "Failed to make MO call from %s slot %s to %s" 345 " slot %s", ad_mo.serial, mo_slot, ad_mt.serial, 346 mt_slot) 347 raise signals.TestFailure("Failed", 348 extras={"fail_reason": str(result.result_value)}) 349 else: 350 self.log.info("Step 4: Send %s.", call_or_sms_or_mms) 351 if call_or_sms_or_mms == "sms": 352 result = self._msim_message_test( 353 ad_mo, 354 ad_mt, 355 mo_sub_id, 356 mt_sub_id, 357 msg=call_or_sms_or_mms.upper()) 358 elif call_or_sms_or_mms == "mms": 359 result = self._msim_message_test( 360 ad_mo, 361 ad_mt, 362 mo_sub_id, 363 mt_sub_id, 364 msg=call_or_sms_or_mms.upper(), 365 expected_result=expected_result) 366 if not result: 367 log_messaging_screen_shot( 368 ad_mo, test_name="%s_tx" % call_or_sms_or_mms) 369 log_messaging_screen_shot( 370 ad_mt, test_name="%s_rx" % call_or_sms_or_mms) 371 372 return False 373 return True 374 375 def _test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 376 self, 377 slot_0_nw_gen="volte", 378 slot_1_nw_gen="volte", 379 call_slot=0, 380 call_direction=None, 381 streaming=True, 382 airplane_mode_cycling=False, 383 cellular_data_cycling=False, 384 wifi_cycling=False, 385 enable_volte=[True, True], 386 enable_wfc=[True, True], 387 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 388 is_airplane_mode=False, 389 is_wifi_connected=False): 390 """Switch DDS and make VoLTE/WFC call together with Youtube playing 391 after each DDS switch at specific slot in specific RAT. 392 393 Test step: 394 1. Get sub ID of each slot of the primary device. 395 2. Set up phones in desired RAT. 396 3. Toggle on/off VoLTE/WFC and set WFC mode. 397 4. Airplane mode or cellular data or Wi-Fi cycling. 398 5. Switch DDS to slot 0. 399 6. Check HTTP connection after DDS switch. 400 7. Play Youtube. 401 8. Make VoLTE or WFC call. 402 9. Switch DDS to slot 1 and repeat step 6-8. 403 10. Switch DDS to slot 0 again and repeat step 6-8. 404 405 Args: 406 1, slot_0_nw_gen: Network generation of slot 0 on the primary device 407 2, slot_1_nw_gen: Network generation of slot 1 on the primary device 408 3. call_slot: Slot for making voice call 409 4. call_direction: "mo" or "mt" or None to stoping making call. 410 5. streaming: True for playing Youtube after DDS switch and False on 411 the contrary. 412 6. airplane_mode_cycling: True for cycling airplane 413 7. cellular_data_cycling: True for cycling cellular data 414 8. wifi_cycling: True for cycling Wi-Fi 415 9. enable_volte: True for enabling and False for disabling VoLTE for 416 each slot on the primary device 417 10. enable_wfc: True for enabling and False for disabling WFC for 418 each slot on the primary device 419 11. wfc_mode: Cellular preferred or Wi-Fi preferred. 420 12. is_airplane_mode: True of False for WFC setup 421 422 Returns: 423 True or False 424 """ 425 ad = self.android_devices[0] 426 slot_0_subid = get_subid_from_slot_index(self.log, ad, 0) 427 slot_1_subid = get_subid_from_slot_index(self.log, ad, 1) 428 429 if slot_0_subid == INVALID_SUB_ID or slot_1_subid == INVALID_SUB_ID: 430 ad.log.error("Not all slots have valid sub ID.") 431 raise signals.TestFailure("Failed", 432 extras={"fail_reason": "Not all slots have valid sub ID"}) 433 434 ad.log.info( 435 "Step 0: Set up phone in desired RAT (slot 0: %s, slot 1: %s)", 436 slot_0_nw_gen, slot_1_nw_gen) 437 438 if not phone_setup_on_rat( 439 self.log, 440 ad, 441 slot_0_nw_gen, 442 slot_0_subid, 443 is_airplane_mode, 444 wfc_mode[0], 445 self.wifi_network_ssid, 446 self.wifi_network_pass): 447 448 self.log.error("Phone Failed to Set Up Properly.") 449 self.tel_logger.set_result(CallResult("CALL_SETUP_FAILURE")) 450 raise signals.TestFailure("Failed", 451 extras={"fail_reason": "Phone Failed to Set Up Properly."}) 452 453 if not phone_setup_on_rat( 454 self.log, 455 ad, 456 slot_1_nw_gen, 457 slot_1_subid, 458 is_airplane_mode, 459 wfc_mode[1], 460 self.wifi_network_ssid, 461 self.wifi_network_pass): 462 463 self.log.error("Phone Failed to Set Up Properly.") 464 self.tel_logger.set_result(CallResult("CALL_SETUP_FAILURE")) 465 raise signals.TestFailure("Failed", 466 extras={"fail_reason": "Phone Failed to Set Up Properly."}) 467 468 is_slot0_in_call = is_phone_in_call_on_rat( 469 self.log, ad, slot_0_nw_gen, True) 470 is_slot1_in_call = is_phone_in_call_on_rat( 471 self.log, ad, slot_1_nw_gen, True) 472 473 if is_wifi_connected: 474 if not ensure_wifi_connected( 475 self.log, 476 ad, 477 self.wifi_network_ssid, 478 self.wifi_network_pass, 479 apm=False): 480 return False 481 time.sleep(5) 482 483 ad.log.info("Step 1: Enable/disable VoLTE and WFC.") 484 for sub_id, volte in zip([slot_0_subid, slot_1_subid], enable_volte): 485 if not toggle_volte_for_subscription( 486 self.log, 487 ad, 488 sub_id, 489 new_state=volte): 490 return False 491 492 for sub_id, wfc, mode in \ 493 zip([slot_0_subid, slot_1_subid], enable_wfc, wfc_mode): 494 if not toggle_wfc_for_subscription(self.log, ad, new_state=wfc, sub_id=sub_id): 495 return False 496 if not set_wfc_mode_for_subscription(ad, mode, sub_id=sub_id): 497 return False 498 499 if airplane_mode_cycling: 500 ad.log.info("Step 2: Airplane mode cycling.") 501 ad.log.info("Step 2-1: Toggle on airplane mode.") 502 if not toggle_airplane_mode(self.log, ad, True): 503 ad.log.error("Failed to toggle on airplane mode.") 504 return False 505 time.sleep(5) 506 ad.log.info("Step 2-2: Toggle off airplane mode.") 507 if not toggle_airplane_mode(self.log, ad, False): 508 ad.log.error("Failed to toggle off airplane mode.") 509 return False 510 511 if is_airplane_mode: 512 time.sleep(5) 513 ad.log.info("Step 2-3: Toggle on airplane mode again.") 514 if not toggle_airplane_mode(self.log, ad, True): 515 ad.log.error("Failed to toggle on airplane mode.") 516 return False 517 518 if wfc_mode[0] or wfc_mode[1]: 519 time.sleep(5) 520 ad.log.info("Step 2-4: Toggle on Wi-Fi again.") 521 if not ensure_wifi_connected( 522 self.log, 523 ad, 524 self.wifi_network_ssid, 525 self.wifi_network_pass, 526 apm=is_airplane_mode): 527 return False 528 time.sleep(5) 529 530 if cellular_data_cycling: 531 if call_slot == 0: 532 sub_id = slot_0_subid 533 elif call_slot == 1: 534 sub_id = slot_1_subid 535 ad.log.info("Step 2: Cellular data cycling") 536 ad.log.info("Step 2-1: Toggle off cellular data.") 537 ad.droid.telephonyToggleDataConnection(False) 538 if not check_is_wifi_connected( 539 self.log, 540 ad, 541 self.wifi_network_ssid): 542 if not wait_for_cell_data_connection_for_subscription( 543 self.log, ad, sub_id, False): 544 ad.log.error("Failed to disable cellular data") 545 return False 546 547 if not verify_internet_connection( 548 self.log, 549 ad, 550 expected_state=False): 551 ad.log.error("Internet still accessible when cellular data" 552 " is disabled.") 553 return False 554 time.sleep(5) 555 ad.log.info("Step 2-2: Toggle on cellular data.") 556 ad.droid.telephonyToggleDataConnection(True) 557 if not check_is_wifi_connected( 558 self.log, 559 ad, 560 self.wifi_network_ssid): 561 if not wait_for_cell_data_connection_for_subscription( 562 self.log, ad, sub_id, True): 563 ad.log.error("Failed to enable cellular data") 564 return False 565 if not verify_internet_connection(self.log, ad, retries=3): 566 ad.log.error( 567 "Internet inaccessible when cellular data is enabled.") 568 return False 569 570 if wifi_cycling: 571 ad.log.info("Step 2: Wi-Fi cycling") 572 ad.log.info("Step 2-1: Toggle on Wi-Fi.") 573 if not ensure_wifi_connected( 574 self.log, 575 ad, 576 self.wifi_network_ssid, 577 self.wifi_network_pass, 578 apm=is_airplane_mode): 579 return False 580 time.sleep(5) 581 ad.log.info("Step 2-2: Toggle off Wi-Fi.") 582 ad.droid.wifiToggleState(False) 583 time.sleep(5) 584 585 if (call_slot == 0 and slot_0_nw_gen == "wfc") or \ 586 (call_slot == 1 and slot_1_nw_gen == "wfc") or is_wifi_connected: 587 if not ensure_wifi_connected( 588 self.log, 589 ad, 590 self.wifi_network_ssid, 591 self.wifi_network_pass, 592 apm=is_airplane_mode): 593 return False 594 595 for attempt in range(3): 596 if attempt != 0: 597 ad.log.info("Repeat step 1 to 4.") 598 599 ad.log.info("Step 3: Switch DDS.") 600 if attempt % 2 == 0: 601 set_dds_on_slot_0(ad) 602 else: 603 set_dds_on_slot_1(ad) 604 605 ad.log.info("Step 4: Check HTTP connection after DDS switch.") 606 if not verify_http_connection(self.log, ad): 607 ad.log.error("Failed to verify http connection.") 608 return False 609 else: 610 ad.log.info("Verify http connection successfully.") 611 612 if streaming: 613 ad.log.info("Step 5: Start Youtube streaming.") 614 if not start_youtube_video(ad): 615 ad.log.warning("Fail to bring up youtube video") 616 time.sleep(10) 617 else: 618 ad.log.info("Step 5: Skip Youtube streaming.") 619 620 if not call_direction: 621 return True 622 else: 623 if call_direction == "mo": 624 ad_mo = self.android_devices[0] 625 ad_mt = self.android_devices[1] 626 mo_sub_id = get_subid_from_slot_index(self.log, ad, call_slot) 627 628 set_voice_sub_id(ad_mo, mo_sub_id) 629 _, mt_sub_id, _ = get_subid_on_same_network_of_host_ad( 630 self.android_devices) 631 632 if call_slot == 0: 633 is_mo_in_call = is_slot0_in_call 634 elif call_slot == 1: 635 is_mo_in_call = is_slot1_in_call 636 is_mt_in_call = None 637 638 elif call_direction == "mt": 639 ad_mo = self.android_devices[1] 640 ad_mt = self.android_devices[0] 641 mt_sub_id = get_subid_from_slot_index(self.log, ad, call_slot) 642 643 set_voice_sub_id(ad_mt, mt_sub_id) 644 _, mo_sub_id, _ = get_subid_on_same_network_of_host_ad( 645 self.android_devices) 646 647 if call_slot == 0: 648 is_mt_in_call = is_slot0_in_call 649 elif call_slot == 1: 650 is_mt_in_call = is_slot1_in_call 651 is_mo_in_call = None 652 653 if (call_slot == 0 and slot_0_nw_gen == "wfc") or \ 654 (call_slot == 1 and slot_1_nw_gen == "wfc"): 655 if not wait_for_wfc_enabled(self.log, ad): 656 return False 657 658 self.log.info("Step 6: Make voice call.") 659 mo_slot = get_slot_index_from_subid(ad_mo, mo_sub_id) 660 mt_slot = get_slot_index_from_subid(ad_mt, mt_sub_id) 661 result = two_phone_call_msim_for_slot( 662 self.log, 663 ad_mo, 664 mo_slot, 665 None, 666 is_mo_in_call, 667 ad_mt, 668 mt_slot, 669 None, 670 is_mt_in_call) 671 self.tel_logger.set_result(result.result_value) 672 673 if not result: 674 self.log.error( 675 "Failed to make MO call from %s slot %s to %s slot %s", 676 ad_mo.serial, mo_slot, ad_mt.serial, mt_slot) 677 raise signals.TestFailure("Failed", 678 extras={"fail_reason": str(result.result_value)}) 679 680 return True 681 682 def _test_dds_switch_volte_cycling(self, slot=0): 683 """ VoLTE cycling after DDS switch. 684 685 Test steps: 686 1. Enable VoLTE. 687 2. Disable VoLTE. 688 3. Switch DDS to slot 0. 689 4. Check HTTP connection after DDS switch. 690 5. Enable VoLTE again. 691 6. Check if IMS can be registered successfully and if VoLTE is 692 available. 693 7. Repeat steps 2-6 for 2 times and each time DDS should be switched 694 to another slot. 695 696 Args: 697 slot: slot to be tested 698 699 Returns: 700 True or False 701 """ 702 ad = self.android_devices[0] 703 slot_0_subid = get_subid_from_slot_index(self.log, ad, 0) 704 slot_1_subid = get_subid_from_slot_index(self.log, ad, 1) 705 706 if slot == 0: 707 sub_id = slot_0_subid 708 elif slot == 1: 709 sub_id = slot_1_subid 710 711 ad.log.info("Step 1: Enable VoLTE for sub ID %s.", sub_id) 712 if not phone_setup_volte_for_subscription(self.log, ad, sub_id): 713 return False 714 715 for attempt in range(3): 716 if attempt != 0: 717 ad.log.info("Repeat step 2 to 4.") 718 719 ad.log.info("Step 2-1: Disable VoLTE for sub ID %s.", sub_id) 720 if not toggle_volte_for_subscription( 721 self.log, ad, sub_id, new_state=False): 722 return False 723 724 ad.log.info( 725 "Step 2-2: Ensure VoLTE is disabled for sub ID %s.", sub_id) 726 if is_volte_enabled(self.log, ad, sub_id): 727 return False 728 729 ad.log.info("Step 3: Switch DDS.") 730 if attempt % 2 == 0: 731 set_dds_on_slot_0(ad) 732 else: 733 set_dds_on_slot_1(ad) 734 735 ad.log.info("Step 4: Check HTTP connection after DDS switch.") 736 if not verify_http_connection(self.log, ad): 737 ad.log.error("Failed to verify http connection.") 738 return False 739 else: 740 ad.log.info("Verify http connection successfully.") 741 742 ad.log.info( 743 "Step 5: Enable VoLTE again after DDS switch for sub ID %s.", 744 sub_id) 745 if not phone_setup_volte_for_subscription(self.log, ad, sub_id): 746 return False 747 748 return True 749 750 @test_tracker_info(uuid="06908fb0-aaaa-4c95-b073-ea5ba8977050") 751 @TelephonyBaseTest.tel_test_wrap 752 def test_dds_switch_when_volte_enabled(self): 753 ad = self.android_devices[0] 754 slot_0_subid = get_subid_from_slot_index(self.log, ad, 0) 755 slot_1_subid = get_subid_from_slot_index(self.log, ad, 1) 756 757 ad.log.info("Step 0: Ensure VoLTE is enabled as initial condition.") 758 if not phone_setup_volte_for_subscription(self.log, ad, slot_0_subid): 759 return False 760 if not phone_setup_volte_for_subscription(self.log, ad, slot_1_subid): 761 return False 762 763 for attempt in range(3): 764 ad.log.info("Step 1: Switch DDS.") 765 if attempt % 2 == 0: 766 set_dds_on_slot_0(ad) 767 else: 768 set_dds_on_slot_1(ad) 769 770 ad.log.info("Step 2: Check HTTP connection after DDS switch.") 771 if not verify_http_connection(self.log, ad): 772 ad.log.error("Failed to verify http connection.") 773 return False 774 else: 775 ad.log.info("Verify http connection successfully.") 776 777 ad.log.info("Step 3: Ensure VoLTE is still enabled after DDS" 778 " switch.") 779 if not phone_setup_volte_for_subscription( 780 self.log, ad, slot_0_subid): 781 return False 782 if not phone_setup_volte_for_subscription( 783 self.log, ad, slot_1_subid): 784 return False 785 return True 786 787 @test_tracker_info(uuid="6b41d84c-4485-47b0-a5d8-eac16ed36258") 788 @TelephonyBaseTest.tel_test_wrap 789 def test_dds_switch_and_reboot_when_volte_enabled(self): 790 ad = self.android_devices[0] 791 slot_0_subid = get_subid_from_slot_index(self.log, ad, 0) 792 slot_1_subid = get_subid_from_slot_index(self.log, ad, 1) 793 794 ad.log.info("Step 0: Ensure VoLTE is enabled as initial condition.") 795 if not phone_setup_volte_for_subscription(self.log, ad, slot_0_subid): 796 return False 797 if not phone_setup_volte_for_subscription(self.log, ad, slot_1_subid): 798 return False 799 800 for attempt in range(3): 801 ad.log.info("Step 1: Switch DDS.") 802 if attempt % 2 == 0: 803 set_dds_on_slot_0(ad) 804 else: 805 set_dds_on_slot_1(ad) 806 807 ad.log.info("Step 2: Check HTTP connection after DDS switch.") 808 if not verify_http_connection(self.log, ad): 809 ad.log.error("Failed to verify http connection.") 810 return False 811 else: 812 ad.log.info("Verify http connection successfully.") 813 814 ad.log.info("Step 3: Reboot.") 815 if not reboot_test(self.log, ad): 816 return False 817 818 ad.log.info("Step 4: Ensure VoLTE is still enabled after DDS" 819 " switch.") 820 if not phone_setup_volte_for_subscription( 821 self.log, ad, slot_0_subid): 822 return False 823 if not phone_setup_volte_for_subscription( 824 self.log, ad, slot_1_subid): 825 return False 826 return True 827 828 @test_tracker_info(uuid="bb440f33-ab0d-4999-885c-5c1f933430c4") 829 @TelephonyBaseTest.tel_test_wrap 830 def test_dds_switch_when_volte_cycling_psim(self): 831 return self._test_dds_switch_volte_cycling(slot=0) 832 833 @test_tracker_info(uuid="cbd5a4ae-be37-4435-b9db-fe58e8fdac5f") 834 @TelephonyBaseTest.tel_test_wrap 835 def test_dds_switch_when_volte_cycling_esim(self): 836 return self._test_dds_switch_volte_cycling(slot=1) 837 838 839 @test_tracker_info(uuid="2df5faf9-8318-4acb-9068-e6ec0481c2ca") 840 @TelephonyBaseTest.tel_test_wrap 841 def test_dds_switch_youtube_volte(self): 842 return self._test_dds_switch_during_data_transfer( 843 slot_0_nw_gen="volte", 844 slot_1_nw_gen="volte") 845 846 @test_tracker_info(uuid="eb73506e-c604-48df-be04-9b602a801afc") 847 @TelephonyBaseTest.tel_test_wrap 848 def test_dds_switch_youtube_and_voice_call_mo_volte_psim(self): 849 return self._test_dds_switch_during_data_transfer( 850 slot_0_nw_gen="volte", 851 slot_1_nw_gen="volte", 852 call_slot=0, 853 call_direction="mo") 854 855 @test_tracker_info(uuid="2e2feab1-65a8-40a7-8666-0c46cb3411a4") 856 @TelephonyBaseTest.tel_test_wrap 857 def test_dds_switch_youtube_and_voice_call_mo_volte_esim(self): 858 return self._test_dds_switch_during_data_transfer( 859 slot_0_nw_gen="volte", 860 slot_1_nw_gen="volte", 861 call_slot=1, 862 call_direction="mo") 863 864 @test_tracker_info(uuid="f2a7d62c-1f54-4081-b7bb-4782c5482b41") 865 @TelephonyBaseTest.tel_test_wrap 866 def test_dds_switch_youtube_and_voice_call_mt_volte_psim(self): 867 return self._test_dds_switch_during_data_transfer( 868 slot_0_nw_gen="volte", 869 slot_1_nw_gen="volte", 870 call_slot=0, 871 call_direction="mt") 872 873 @test_tracker_info(uuid="df211078-b260-499d-8f7e-86cad039c5f5") 874 @TelephonyBaseTest.tel_test_wrap 875 def test_dds_switch_youtube_and_voice_call_mt_volte_esim(self): 876 return self._test_dds_switch_during_data_transfer( 877 slot_0_nw_gen="volte", 878 slot_1_nw_gen="volte", 879 call_slot=1, 880 call_direction="mt") 881 882 @test_tracker_info(uuid="bd77782d-f43d-40c6-9982-47cd452d980f") 883 @TelephonyBaseTest.tel_test_wrap 884 def test_dds_switch_youtube_and_voice_call_mo_csfb_psim(self): 885 return self._test_dds_switch_during_data_transfer( 886 slot_0_nw_gen="csfb", 887 slot_1_nw_gen="csfb", 888 call_slot=0, 889 call_direction="mo") 890 891 @test_tracker_info(uuid="361a6f69-e6ea-4013-960d-732931fcd130") 892 @TelephonyBaseTest.tel_test_wrap 893 def test_dds_switch_youtube_and_voice_call_mo_csfb_esim(self): 894 return self._test_dds_switch_during_data_transfer( 895 slot_0_nw_gen="csfb", 896 slot_1_nw_gen="csfb", 897 call_slot=1, 898 call_direction="mo") 899 900 @test_tracker_info(uuid="26186d4f-0b0d-41c5-ab91-04e9851461f0") 901 @TelephonyBaseTest.tel_test_wrap 902 def test_dds_switch_youtube_and_voice_call_mt_csfb_psim(self): 903 return self._test_dds_switch_during_data_transfer( 904 slot_0_nw_gen="csfb", 905 slot_1_nw_gen="csfb", 906 call_slot=0, 907 call_direction="mt") 908 909 @test_tracker_info(uuid="7d31c644-a470-4eb9-b272-f0cfc34d23cb") 910 @TelephonyBaseTest.tel_test_wrap 911 def test_dds_switch_youtube_and_voice_call_mt_csfb_esim(self): 912 return self._test_dds_switch_during_data_transfer( 913 slot_0_nw_gen="csfb", 914 slot_1_nw_gen="csfb", 915 call_slot=1, 916 call_direction="mt") 917 918 @test_tracker_info(uuid="614076a6-b042-45f3-84fe-c84591e02f78") 919 @TelephonyBaseTest.tel_test_wrap 920 def test_dds_switch_youtube_and_sms_volte(self): 921 result = True 922 self.log.info("Scenario 1: MO SMS at slot 0") 923 if not self._test_dds_switch_during_data_transfer( 924 slot_0_nw_gen="volte", 925 slot_1_nw_gen="volte", 926 call_slot=0, 927 call_direction="mo", 928 call_or_sms_or_mms="sms"): 929 result = False 930 self.log.info("Scenario 2: MO SMS at slot 1") 931 if not self._test_dds_switch_during_data_transfer( 932 slot_0_nw_gen="volte", 933 slot_1_nw_gen="volte", 934 call_slot=1, 935 call_direction="mo", 936 call_or_sms_or_mms="sms"): 937 result = False 938 self.log.info("Scenario 3: MT SMS at slot 0") 939 if not self._test_dds_switch_during_data_transfer( 940 slot_0_nw_gen="volte", 941 slot_1_nw_gen="volte", 942 call_slot=0, 943 call_direction="mt", 944 call_or_sms_or_mms="sms"): 945 result = False 946 self.log.info("Scenario 4: MT SMS at slot 1") 947 if not self._test_dds_switch_during_data_transfer( 948 slot_0_nw_gen="volte", 949 slot_1_nw_gen="volte", 950 call_slot=1, 951 call_direction="mt", 952 call_or_sms_or_mms="sms"): 953 result = False 954 return result 955 956 @test_tracker_info(uuid="5e61f007-7b01-4dee-ac2d-fd2225ac3dbd") 957 @TelephonyBaseTest.tel_test_wrap 958 def test_dds_switch_youtube_and_mms_volte(self): 959 result = True 960 self.log.info("Scenario 1: MO MMS at slot 0") 961 if not self._test_dds_switch_during_data_transfer( 962 slot_0_nw_gen="volte", 963 slot_1_nw_gen="volte", 964 call_slot=0, 965 call_direction="mo", 966 call_or_sms_or_mms="mms"): 967 result = False 968 self.log.info("Scenario 2: MO MMS at slot 1") 969 if not self._test_dds_switch_during_data_transfer( 970 slot_0_nw_gen="volte", 971 slot_1_nw_gen="volte", 972 call_slot=1, 973 call_direction="mo", 974 call_or_sms_or_mms="mms"): 975 result = False 976 self.log.info("Scenario 3: MT MMS at slot 0") 977 if not self._test_dds_switch_during_data_transfer( 978 slot_0_nw_gen="volte", 979 slot_1_nw_gen="volte", 980 call_slot=0, 981 call_direction="mt", 982 call_or_sms_or_mms="mms"): 983 result = False 984 self.log.info("Scenario 4: MT MMS at slot 1") 985 if not self._test_dds_switch_during_data_transfer( 986 slot_0_nw_gen="volte", 987 slot_1_nw_gen="volte", 988 call_slot=1, 989 call_direction="mt", 990 call_or_sms_or_mms="mms"): 991 result = False 992 return result 993 994 @test_tracker_info(uuid="47b9bf08-2c17-4646-b1d3-3d191318bc0d") 995 @TelephonyBaseTest.tel_test_wrap 996 def test_dds_switch_voice_call_mo_volte_psim(self): 997 return self._test_dds_switch_during_data_transfer( 998 "volte", "volte", 0, "mo", "call", False) 999 1000 @test_tracker_info(uuid="eef31675-f0a3-4086-8474-d67614ede507") 1001 @TelephonyBaseTest.tel_test_wrap 1002 def test_dds_switch_voice_call_mo_volte_esim(self): 1003 return self._test_dds_switch_during_data_transfer( 1004 "volte", "volte", 1, "mo", "call", False) 1005 1006 @test_tracker_info(uuid="ce8b6ce8-d314-49ca-bead-391c15809235") 1007 @TelephonyBaseTest.tel_test_wrap 1008 def test_dds_switch_voice_call_mt_volte_psim(self): 1009 return self._test_dds_switch_during_data_transfer( 1010 "volte", "volte", 0, "mt", "call", False) 1011 1012 @test_tracker_info(uuid="64c941e0-fcab-43ca-a988-f667398f1997") 1013 @TelephonyBaseTest.tel_test_wrap 1014 def test_dds_switch_voice_call_mt_volte_esim(self): 1015 return self._test_dds_switch_during_data_transfer( 1016 "volte", "volte", 1, "mt", "call", False) 1017 1018 @test_tracker_info(uuid="28963e86-f8ce-4324-8ce8-8e6628fd2d99") 1019 @TelephonyBaseTest.tel_test_wrap 1020 def test_dds_switch_sms_volte(self): 1021 result = True 1022 self.log.info("Scenario 1: MO SMS at slot 0") 1023 if not self._test_dds_switch_during_data_transfer( 1024 "volte", "volte", 0, "mo", "sms", False): 1025 result = False 1026 self.log.info("Scenario 2: MO SMS at slot 1") 1027 if not self._test_dds_switch_during_data_transfer( 1028 "volte", "volte", 1, "mo", "sms", False): 1029 result = False 1030 self.log.info("Scenario 3: MT SMS at slot 0") 1031 if not self._test_dds_switch_during_data_transfer( 1032 "volte", "volte", 0, "mt", "sms", False): 1033 result = False 1034 self.log.info("Scenario 4: MT SMS at slot 1") 1035 if not self._test_dds_switch_during_data_transfer( 1036 "volte", "volte", 1, "mt", "sms", False): 1037 result = False 1038 return result 1039 1040 @test_tracker_info(uuid="915c0eb3-1a84-4eb0-8cba-cafe32c0d604") 1041 @TelephonyBaseTest.tel_test_wrap 1042 def test_dds_switch_mms_volte(self): 1043 result = True 1044 self.log.info("Scenario 1: MO MMS at slot 0") 1045 if not self._test_dds_switch_during_data_transfer( 1046 "volte", "volte", 0, "mo", "mms", False): 1047 result = False 1048 self.log.info("Scenario 2: MO MMS at slot 1") 1049 if not self._test_dds_switch_during_data_transfer( 1050 "volte", "volte", 1, "mo", "mms", False): 1051 result = False 1052 self.log.info("Scenario 3: MT MMS at slot 0") 1053 if not self._test_dds_switch_during_data_transfer( 1054 "volte", "volte", 0, "mt", "mms", False): 1055 result = False 1056 self.log.info("Scenario 4: MT MMS at slot 1") 1057 if not self._test_dds_switch_during_data_transfer( 1058 "volte", "volte", 1, "mt", "mms", False): 1059 result = False 1060 return result 1061 1062 @test_tracker_info(uuid="d58939c0-d246-453e-9eac-54152d6dc70c") 1063 @TelephonyBaseTest.tel_test_wrap 1064 def test_dds_switch_voice_call_mo_volte_psim_with_wfc_on_apm_cycling(self): 1065 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1066 slot_0_nw_gen="volte", 1067 slot_1_nw_gen="volte", 1068 call_slot=0, 1069 call_direction="mo", 1070 streaming=True, 1071 airplane_mode_cycling=True, 1072 enable_volte=[True, True], 1073 enable_wfc=[True, True], 1074 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED]) 1075 1076 @test_tracker_info(uuid="61dfb957-6349-4190-8e63-973558b1292b") 1077 @TelephonyBaseTest.tel_test_wrap 1078 def test_dds_switch_voice_call_mo_volte_esim_with_wfc_on_apm_cycling(self): 1079 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1080 slot_0_nw_gen="volte", 1081 slot_1_nw_gen="volte", 1082 call_slot=1, 1083 call_direction="mo", 1084 streaming=True, 1085 airplane_mode_cycling=True, 1086 enable_volte=[True, True], 1087 enable_wfc=[True, True], 1088 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED]) 1089 1090 @test_tracker_info(uuid="127377f2-973f-4758-b138-4c0dd276f893") 1091 @TelephonyBaseTest.tel_test_wrap 1092 def test_dds_switch_voice_call_mt_volte_psim_with_wfc_on_apm_cycling(self): 1093 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1094 slot_0_nw_gen="volte", 1095 slot_1_nw_gen="volte", 1096 call_slot=0, 1097 call_direction="mt", 1098 streaming=True, 1099 airplane_mode_cycling=True, 1100 enable_volte=[True, True], 1101 enable_wfc=[True, True], 1102 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED]) 1103 1104 @test_tracker_info(uuid="a149d357-27a7-490d-a30b-70f44cd43ac7") 1105 @TelephonyBaseTest.tel_test_wrap 1106 def test_dds_switch_voice_call_mt_volte_esim_with_wfc_on_apm_cycling(self): 1107 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1108 slot_0_nw_gen="volte", 1109 slot_1_nw_gen="volte", 1110 call_slot=1, 1111 call_direction="mt", 1112 streaming=True, 1113 airplane_mode_cycling=True, 1114 enable_volte=[True, True], 1115 enable_wfc=[True, True], 1116 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED]) 1117 1118 @test_tracker_info(uuid="8823e87c-0e4d-435d-a17f-84e1b65c1012") 1119 @TelephonyBaseTest.tel_test_wrap 1120 def test_dds_switch_voice_call_mo_volte_psim_with_wfc_on_wifi_on_apm_cycling(self): 1121 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1122 slot_0_nw_gen="volte", 1123 slot_1_nw_gen="volte", 1124 call_slot=0, 1125 call_direction="mo", 1126 streaming=True, 1127 airplane_mode_cycling=True, 1128 enable_volte=[True, True], 1129 enable_wfc=[True, True], 1130 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1131 is_wifi_connected=True) 1132 1133 @test_tracker_info(uuid="bd038a77-baa6-483d-9af0-fe18d50d7f1f") 1134 @TelephonyBaseTest.tel_test_wrap 1135 def test_dds_switch_voice_call_mo_volte_esim_with_wfc_on_wifi_on_apm_cycling(self): 1136 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1137 slot_0_nw_gen="volte", 1138 slot_1_nw_gen="volte", 1139 call_slot=1, 1140 call_direction="mo", 1141 streaming=True, 1142 airplane_mode_cycling=True, 1143 enable_volte=[True, True], 1144 enable_wfc=[True, True], 1145 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1146 is_wifi_connected=True) 1147 1148 @test_tracker_info(uuid="3f96fb8a-d4ee-49b8-8958-45cd509ed7b8") 1149 @TelephonyBaseTest.tel_test_wrap 1150 def test_dds_switch_voice_call_mt_volte_psim_with_wfc_on_wifi_on_apm_cycling(self): 1151 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1152 slot_0_nw_gen="volte", 1153 slot_1_nw_gen="volte", 1154 call_slot=0, 1155 call_direction="mt", 1156 streaming=True, 1157 airplane_mode_cycling=True, 1158 enable_volte=[True, True], 1159 enable_wfc=[True, True], 1160 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1161 is_wifi_connected=True) 1162 1163 @test_tracker_info(uuid="1f89da8b-e559-4e96-afc7-0d2127616c56") 1164 @TelephonyBaseTest.tel_test_wrap 1165 def test_dds_switch_voice_call_mt_volte_esim_with_wfc_on_wifi_on_apm_cycling(self): 1166 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1167 slot_0_nw_gen="volte", 1168 slot_1_nw_gen="volte", 1169 call_slot=1, 1170 call_direction="mt", 1171 streaming=True, 1172 airplane_mode_cycling=True, 1173 enable_volte=[True, True], 1174 enable_wfc=[True, True], 1175 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1176 is_wifi_connected=True) 1177 1178 @test_tracker_info(uuid="bc522b4d-2d26-4b5f-b82c-f92356f103d0") 1179 @TelephonyBaseTest.tel_test_wrap 1180 def test_dds_switch_voice_call_mo_wfc_psim_cellular_preferred_apm_on_with_volte_on_apm_cycling(self): 1181 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1182 slot_0_nw_gen="wfc", 1183 slot_1_nw_gen="wfc", 1184 call_slot=0, 1185 call_direction="mo", 1186 streaming=True, 1187 airplane_mode_cycling=True, 1188 enable_volte=[True, True], 1189 enable_wfc=[True, True], 1190 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1191 is_airplane_mode=True) 1192 1193 @test_tracker_info(uuid="970ccdb4-c7b3-4b56-b93b-f811407c82cb") 1194 @TelephonyBaseTest.tel_test_wrap 1195 def test_dds_switch_voice_call_mo_wfc_esim_cellular_preferred_apm_on_with_volte_on_apm_cycling(self): 1196 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1197 slot_0_nw_gen="wfc", 1198 slot_1_nw_gen="wfc", 1199 call_slot=1, 1200 call_direction="mo", 1201 streaming=True, 1202 airplane_mode_cycling=True, 1203 enable_volte=[True, True], 1204 enable_wfc=[True, True], 1205 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1206 is_airplane_mode=True) 1207 1208 @test_tracker_info(uuid="26c8b63e-631c-42d0-868b-03c2db6181b7") 1209 @TelephonyBaseTest.tel_test_wrap 1210 def test_dds_switch_voice_call_mo_wfc_psim_wifi_preferred_apm_off_with_volte_on_apm_cycling(self): 1211 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1212 slot_0_nw_gen="wfc", 1213 slot_1_nw_gen="wfc", 1214 call_slot=0, 1215 call_direction="mo", 1216 streaming=True, 1217 airplane_mode_cycling=True, 1218 enable_volte=[True, True], 1219 enable_wfc=[True, True], 1220 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 1221 is_airplane_mode=False) 1222 1223 @test_tracker_info(uuid="efd73091-8667-42a3-8551-eafa497fc383") 1224 @TelephonyBaseTest.tel_test_wrap 1225 def test_dds_switch_voice_call_mo_wfc_esim_wifi_preferred_apm_off_with_volte_on_apm_cycling(self): 1226 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1227 slot_0_nw_gen="wfc", 1228 slot_1_nw_gen="wfc", 1229 call_slot=1, 1230 call_direction="mo", 1231 streaming=True, 1232 airplane_mode_cycling=True, 1233 enable_volte=[True, True], 1234 enable_wfc=[True, True], 1235 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 1236 is_airplane_mode=False) 1237 1238 @test_tracker_info(uuid="618768b9-83c2-4ab7-b1fb-10a4037c5834") 1239 @TelephonyBaseTest.tel_test_wrap 1240 def test_dds_switch_voice_call_mt_wfc_psim_cellular_preferred_apm_on_with_volte_on_apm_cycling(self): 1241 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1242 slot_0_nw_gen="wfc", 1243 slot_1_nw_gen="wfc", 1244 call_slot=0, 1245 call_direction="mt", 1246 streaming=True, 1247 airplane_mode_cycling=True, 1248 enable_volte=[True, True], 1249 enable_wfc=[True, True], 1250 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1251 is_airplane_mode=True) 1252 1253 @test_tracker_info(uuid="24d695a1-7421-4038-bb07-4d81f3f6d05b") 1254 @TelephonyBaseTest.tel_test_wrap 1255 def test_dds_switch_voice_call_mt_wfc_esim_cellular_preferred_apm_on_with_volte_on_apm_cycling(self): 1256 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1257 slot_0_nw_gen="wfc", 1258 slot_1_nw_gen="wfc", 1259 call_slot=1, 1260 call_direction="mt", 1261 streaming=True, 1262 airplane_mode_cycling=True, 1263 enable_volte=[True, True], 1264 enable_wfc=[True, True], 1265 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1266 is_airplane_mode=True) 1267 1268 @test_tracker_info(uuid="2f28db8f-c0c3-4cf6-9f6f-439c9e32d9f3") 1269 @TelephonyBaseTest.tel_test_wrap 1270 def test_dds_switch_voice_call_mt_wfc_psim_wifi_preferred_apm_off_with_volte_on_apm_cycling(self): 1271 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1272 slot_0_nw_gen="wfc", 1273 slot_1_nw_gen="wfc", 1274 call_slot=0, 1275 call_direction="mt", 1276 streaming=True, 1277 airplane_mode_cycling=True, 1278 enable_volte=[True, True], 1279 enable_wfc=[True, True], 1280 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 1281 is_airplane_mode=False) 1282 1283 @test_tracker_info(uuid="60d851c5-f79d-46e7-b921-b510bcdc9024") 1284 @TelephonyBaseTest.tel_test_wrap 1285 def test_dds_switch_voice_call_mt_wfc_esim_wifi_preferred_apm_off_with_volte_on_apm_cycling(self): 1286 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1287 slot_0_nw_gen="wfc", 1288 slot_1_nw_gen="wfc", 1289 call_slot=1, 1290 call_direction="mt", 1291 streaming=True, 1292 airplane_mode_cycling=True, 1293 enable_volte=[True, True], 1294 enable_wfc=[True, True], 1295 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 1296 is_airplane_mode=False) 1297 1298 @test_tracker_info(uuid="092b1e43-3de4-4b08-b526-4f3f1e71a47a") 1299 @TelephonyBaseTest.tel_test_wrap 1300 def test_dds_switch_voice_call_mo_volte_psim_with_wfc_on_cellular_data_cycling(self): 1301 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1302 slot_0_nw_gen="volte", 1303 slot_1_nw_gen="volte", 1304 call_slot=0, 1305 call_direction="mo", 1306 streaming=True, 1307 cellular_data_cycling=True, 1308 enable_volte=[True, True], 1309 enable_wfc=[True, True], 1310 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED]) 1311 1312 @test_tracker_info(uuid="3b876b39-1cfb-4adb-a45c-11a02890f8e1") 1313 @TelephonyBaseTest.tel_test_wrap 1314 def test_dds_switch_voice_call_mo_volte_esim_with_wfc_on_cellular_data_cycling(self): 1315 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1316 slot_0_nw_gen="volte", 1317 slot_1_nw_gen="volte", 1318 call_slot=1, 1319 call_direction="mo", 1320 streaming=True, 1321 cellular_data_cycling=True, 1322 enable_volte=[True, True], 1323 enable_wfc=[True, True], 1324 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED]) 1325 1326 @test_tracker_info(uuid="96c42ffb-5b4e-4ab0-b52a-8b498a25f759") 1327 @TelephonyBaseTest.tel_test_wrap 1328 def test_dds_switch_voice_call_mt_volte_psim_with_wfc_on_cellular_data_cycling(self): 1329 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1330 slot_0_nw_gen="volte", 1331 slot_1_nw_gen="volte", 1332 call_slot=0, 1333 call_direction="mt", 1334 streaming=True, 1335 cellular_data_cycling=True, 1336 enable_volte=[True, True], 1337 enable_wfc=[True, True], 1338 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED]) 1339 1340 @test_tracker_info(uuid="fbd4c30c-fef9-4100-b704-eb27d3bcb7ae") 1341 @TelephonyBaseTest.tel_test_wrap 1342 def test_dds_switch_voice_call_mt_volte_esim_with_wfc_on_cellular_data_cycling(self): 1343 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1344 slot_0_nw_gen="volte", 1345 slot_1_nw_gen="volte", 1346 call_slot=1, 1347 call_direction="mt", 1348 streaming=True, 1349 cellular_data_cycling=True, 1350 enable_volte=[True, True], 1351 enable_wfc=[True, True], 1352 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED]) 1353 1354 @test_tracker_info(uuid="fbd88b9d-e27b-4c06-a983-a780d0c00623") 1355 @TelephonyBaseTest.tel_test_wrap 1356 def test_dds_switch_voice_call_mo_volte_psim_with_wfc_on_wifi_on_cellular_data_cycling(self): 1357 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1358 slot_0_nw_gen="volte", 1359 slot_1_nw_gen="volte", 1360 call_slot=0, 1361 call_direction="mo", 1362 streaming=True, 1363 cellular_data_cycling=True, 1364 enable_volte=[True, True], 1365 enable_wfc=[True, True], 1366 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1367 is_wifi_connected=True) 1368 1369 @test_tracker_info(uuid="0fabca6f-28c4-4843-af70-f33d806d8dc1") 1370 @TelephonyBaseTest.tel_test_wrap 1371 def test_dds_switch_voice_call_mo_volte_esim_with_wfc_on_wifi_on_cellular_data_cycling(self): 1372 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1373 slot_0_nw_gen="volte", 1374 slot_1_nw_gen="volte", 1375 call_slot=1, 1376 call_direction="mo", 1377 streaming=True, 1378 cellular_data_cycling=True, 1379 enable_volte=[True, True], 1380 enable_wfc=[True, True], 1381 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1382 is_wifi_connected=True) 1383 1384 @test_tracker_info(uuid="9b060264-69d8-437e-9981-b86e213952c5") 1385 @TelephonyBaseTest.tel_test_wrap 1386 def test_dds_switch_voice_call_mt_volte_psim_with_wfc_on_wifi_on_cellular_data_cycling(self): 1387 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1388 slot_0_nw_gen="volte", 1389 slot_1_nw_gen="volte", 1390 call_slot=0, 1391 call_direction="mt", 1392 streaming=True, 1393 cellular_data_cycling=True, 1394 enable_volte=[True, True], 1395 enable_wfc=[True, True], 1396 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1397 is_wifi_connected=True) 1398 1399 @test_tracker_info(uuid="3a2effa4-728a-4160-9e0c-2aeafc7ba153") 1400 @TelephonyBaseTest.tel_test_wrap 1401 def test_dds_switch_voice_call_mt_volte_esim_with_wfc_on_wifi_on_cellular_data_cycling(self): 1402 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1403 slot_0_nw_gen="volte", 1404 slot_1_nw_gen="volte", 1405 call_slot=1, 1406 call_direction="mt", 1407 streaming=True, 1408 cellular_data_cycling=True, 1409 enable_volte=[True, True], 1410 enable_wfc=[True, True], 1411 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1412 is_wifi_connected=True) 1413 1414 @test_tracker_info(uuid="ad491362-8bcc-4097-84af-932878002ce6") 1415 @TelephonyBaseTest.tel_test_wrap 1416 def test_dds_switch_voice_call_mo_wfc_psim_cellular_preferred_apm_on_with_volte_on_cellular_data_cycling(self): 1417 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1418 slot_0_nw_gen="wfc", 1419 slot_1_nw_gen="wfc", 1420 call_slot=0, 1421 call_direction="mo", 1422 streaming=True, 1423 cellular_data_cycling=True, 1424 enable_volte=[True, True], 1425 enable_wfc=[True, True], 1426 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1427 is_airplane_mode=True) 1428 1429 @test_tracker_info(uuid="c137fe4e-380b-4dc5-8996-c8c5654596f7") 1430 @TelephonyBaseTest.tel_test_wrap 1431 def test_dds_switch_voice_call_mo_wfc_esim_cellular_preferred_apm_on_with_volte_on_cellular_data_cycling(self): 1432 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1433 slot_0_nw_gen="wfc", 1434 slot_1_nw_gen="wfc", 1435 call_slot=1, 1436 call_direction="mo", 1437 streaming=True, 1438 cellular_data_cycling=True, 1439 enable_volte=[True, True], 1440 enable_wfc=[True, True], 1441 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1442 is_airplane_mode=True) 1443 1444 @test_tracker_info(uuid="e7936ce8-1652-4b21-b3f0-5327084b823c") 1445 @TelephonyBaseTest.tel_test_wrap 1446 def test_dds_switch_voice_call_mo_wfc_psim_wifi_preferred_apm_off_with_volte_on_cellular_data_cycling(self): 1447 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1448 slot_0_nw_gen="wfc", 1449 slot_1_nw_gen="wfc", 1450 call_slot=0, 1451 call_direction="mo", 1452 streaming=True, 1453 cellular_data_cycling=True, 1454 enable_volte=[True, True], 1455 enable_wfc=[True, True], 1456 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 1457 is_airplane_mode=False) 1458 1459 @test_tracker_info(uuid="86db06b4-907f-4085-af8e-75c983831bb0") 1460 @TelephonyBaseTest.tel_test_wrap 1461 def test_dds_switch_voice_call_mo_wfc_esim_wifi_preferred_apm_off_with_volte_on_cellular_data_cycling(self): 1462 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1463 slot_0_nw_gen="wfc", 1464 slot_1_nw_gen="wfc", 1465 call_slot=1, 1466 call_direction="mo", 1467 streaming=True, 1468 cellular_data_cycling=True, 1469 enable_volte=[True, True], 1470 enable_wfc=[True, True], 1471 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 1472 is_airplane_mode=False) 1473 1474 @test_tracker_info(uuid="e43b23b5-022a-4830-9110-839ece333f6f") 1475 @TelephonyBaseTest.tel_test_wrap 1476 def test_dds_switch_voice_call_mt_wfc_psim_cellular_preferred_apm_on_with_volte_on_cellular_data_cycling(self): 1477 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1478 slot_0_nw_gen="wfc", 1479 slot_1_nw_gen="wfc", 1480 call_slot=0, 1481 call_direction="mt", 1482 streaming=True, 1483 cellular_data_cycling=True, 1484 enable_volte=[True, True], 1485 enable_wfc=[True, True], 1486 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1487 is_airplane_mode=True) 1488 1489 @test_tracker_info(uuid="00d0bfc2-2121-4ba9-9dd7-72bf78380121") 1490 @TelephonyBaseTest.tel_test_wrap 1491 def test_dds_switch_voice_call_mt_wfc_esim_cellular_preferred_apm_on_with_volte_on_cellular_data_cycling(self): 1492 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1493 slot_0_nw_gen="wfc", 1494 slot_1_nw_gen="wfc", 1495 call_slot=1, 1496 call_direction="mt", 1497 streaming=True, 1498 cellular_data_cycling=True, 1499 enable_volte=[True, True], 1500 enable_wfc=[True, True], 1501 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1502 is_airplane_mode=True) 1503 1504 @test_tracker_info(uuid="4921a948-54d4-4945-81ea-02893d10b6e6") 1505 @TelephonyBaseTest.tel_test_wrap 1506 def test_dds_switch_voice_call_mt_wfc_psim_wifi_preferred_apm_off_with_volte_on_cellular_data_cycling(self): 1507 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1508 slot_0_nw_gen="wfc", 1509 slot_1_nw_gen="wfc", 1510 call_slot=0, 1511 call_direction="mt", 1512 streaming=True, 1513 cellular_data_cycling=True, 1514 enable_volte=[True, True], 1515 enable_wfc=[True, True], 1516 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 1517 is_airplane_mode=False) 1518 1519 @test_tracker_info(uuid="ed4b8ba4-1b31-4e3c-9be3-0e184e324523") 1520 @TelephonyBaseTest.tel_test_wrap 1521 def test_dds_switch_voice_call_mt_wfc_esim_wifi_preferred_apm_off_with_volte_on_cellular_data_cycling(self): 1522 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1523 slot_0_nw_gen="wfc", 1524 slot_1_nw_gen="wfc", 1525 call_slot=1, 1526 call_direction="mt", 1527 streaming=True, 1528 cellular_data_cycling=True, 1529 enable_volte=[True, True], 1530 enable_wfc=[True, True], 1531 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 1532 is_airplane_mode=False) 1533 1534 @test_tracker_info(uuid="1fb43960-51dd-4be9-adf1-51c84cb8d85a") 1535 @TelephonyBaseTest.tel_test_wrap 1536 def test_dds_switch_voice_call_mo_volte_psim_with_wfc_on_wifi_cycling(self): 1537 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1538 slot_0_nw_gen="volte", 1539 slot_1_nw_gen="volte", 1540 call_slot=0, 1541 call_direction="mo", 1542 streaming=True, 1543 wifi_cycling=True, 1544 enable_volte=[True, True], 1545 enable_wfc=[True, True], 1546 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED]) 1547 1548 @test_tracker_info(uuid="1052e02f-5a4b-4826-9c47-9ab6d142f300") 1549 @TelephonyBaseTest.tel_test_wrap 1550 def test_dds_switch_voice_call_mo_volte_esim_with_wfc_on_wifi_cycling(self): 1551 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1552 slot_0_nw_gen="volte", 1553 slot_1_nw_gen="volte", 1554 call_slot=1, 1555 call_direction="mo", 1556 streaming=True, 1557 wifi_cycling=True, 1558 enable_volte=[True, True], 1559 enable_wfc=[True, True], 1560 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED]) 1561 1562 @test_tracker_info(uuid="23bb1991-6ff1-4528-aeee-1ec0c7b525be") 1563 @TelephonyBaseTest.tel_test_wrap 1564 def test_dds_switch_voice_call_mt_volte_psim_with_wfc_on_wifi_cycling(self): 1565 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1566 slot_0_nw_gen="volte", 1567 slot_1_nw_gen="volte", 1568 call_slot=0, 1569 call_direction="mt", 1570 streaming=True, 1571 wifi_cycling=True, 1572 enable_volte=[True, True], 1573 enable_wfc=[True, True], 1574 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED]) 1575 1576 @test_tracker_info(uuid="1d5842c5-91f5-4c87-9f65-67891d255d43") 1577 @TelephonyBaseTest.tel_test_wrap 1578 def test_dds_switch_voice_call_mt_volte_esim_with_wfc_on_wifi_cycling(self): 1579 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1580 slot_0_nw_gen="volte", 1581 slot_1_nw_gen="volte", 1582 call_slot=1, 1583 call_direction="mt", 1584 streaming=True, 1585 wifi_cycling=True, 1586 enable_volte=[True, True], 1587 enable_wfc=[True, True], 1588 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED]) 1589 1590 @test_tracker_info(uuid="380bd592-5437-4e16-9564-5f47b066cab2") 1591 @TelephonyBaseTest.tel_test_wrap 1592 def test_dds_switch_voice_call_mo_volte_psim_with_wfc_on_wifi_on_wifi_cycling(self): 1593 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1594 slot_0_nw_gen="volte", 1595 slot_1_nw_gen="volte", 1596 call_slot=0, 1597 call_direction="mo", 1598 streaming=True, 1599 wifi_cycling=True, 1600 enable_volte=[True, True], 1601 enable_wfc=[True, True], 1602 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1603 is_wifi_connected=True) 1604 1605 @test_tracker_info(uuid="90bb2647-71f1-44cd-bff3-5bbb720e59b7") 1606 @TelephonyBaseTest.tel_test_wrap 1607 def test_dds_switch_voice_call_mo_volte_esim_with_wfc_on_wifi_on_wifi_cycling(self): 1608 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1609 slot_0_nw_gen="volte", 1610 slot_1_nw_gen="volte", 1611 call_slot=1, 1612 call_direction="mo", 1613 streaming=True, 1614 wifi_cycling=True, 1615 enable_volte=[True, True], 1616 enable_wfc=[True, True], 1617 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1618 is_wifi_connected=True) 1619 1620 @test_tracker_info(uuid="5bca72c8-62d0-41bf-8888-310cd235dac4") 1621 @TelephonyBaseTest.tel_test_wrap 1622 def test_dds_switch_voice_call_mt_volte_psim_with_wfc_on_wifi_on_wifi_cycling(self): 1623 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1624 slot_0_nw_gen="volte", 1625 slot_1_nw_gen="volte", 1626 call_slot=0, 1627 call_direction="mt", 1628 streaming=True, 1629 wifi_cycling=True, 1630 enable_volte=[True, True], 1631 enable_wfc=[True, True], 1632 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1633 is_wifi_connected=True) 1634 1635 @test_tracker_info(uuid="13805ecf-3cf9-44c8-98bc-a099edb36340") 1636 @TelephonyBaseTest.tel_test_wrap 1637 def test_dds_switch_voice_call_mt_volte_esim_with_wfc_on_wifi_on_wifi_cycling(self): 1638 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1639 slot_0_nw_gen="volte", 1640 slot_1_nw_gen="volte", 1641 call_slot=1, 1642 call_direction="mt", 1643 streaming=True, 1644 wifi_cycling=True, 1645 enable_volte=[True, True], 1646 enable_wfc=[True, True], 1647 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1648 is_wifi_connected=True) 1649 1650 @test_tracker_info(uuid="33ed3dee-581f-4ae8-b236-1317377a6ca1") 1651 @TelephonyBaseTest.tel_test_wrap 1652 def test_dds_switch_voice_call_mo_wfc_psim_cellular_preferred_apm_on_with_with_volte_on_wifi_cycling(self): 1653 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1654 slot_0_nw_gen="wfc", 1655 slot_1_nw_gen="wfc", 1656 call_slot=0, 1657 call_direction="mo", 1658 streaming=True, 1659 wifi_cycling=True, 1660 enable_volte=[True, True], 1661 enable_wfc=[True, True], 1662 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1663 is_airplane_mode=True) 1664 1665 @test_tracker_info(uuid="88391458-6886-483f-a997-c62fd6dfd0b8") 1666 @TelephonyBaseTest.tel_test_wrap 1667 def test_dds_switch_voice_call_mo_wfc_esim_cellular_preferred_apm_on_with_with_volte_on_wifi_cycling(self): 1668 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1669 slot_0_nw_gen="wfc", 1670 slot_1_nw_gen="wfc", 1671 call_slot=1, 1672 call_direction="mo", 1673 streaming=True, 1674 wifi_cycling=True, 1675 enable_volte=[True, True], 1676 enable_wfc=[True, True], 1677 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1678 is_airplane_mode=True) 1679 1680 @test_tracker_info(uuid="966bcb75-dd2d-4400-a880-e7407989ee52") 1681 @TelephonyBaseTest.tel_test_wrap 1682 def test_dds_switch_voice_call_mo_wfc_psim_wifi_preferred_apm_off_with_with_volte_on_wifi_cycling(self): 1683 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1684 slot_0_nw_gen="wfc", 1685 slot_1_nw_gen="wfc", 1686 call_slot=0, 1687 call_direction="mo", 1688 streaming=True, 1689 wifi_cycling=True, 1690 enable_volte=[True, True], 1691 enable_wfc=[True, True], 1692 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 1693 is_airplane_mode=False) 1694 1695 @test_tracker_info(uuid="7ff48189-5b4b-4b2d-a96a-fa66e86d0596") 1696 @TelephonyBaseTest.tel_test_wrap 1697 def test_dds_switch_voice_call_mo_wfc_esim_wifi_preferred_apm_off_with_with_volte_on_wifi_cycling(self): 1698 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1699 slot_0_nw_gen="wfc", 1700 slot_1_nw_gen="wfc", 1701 call_slot=1, 1702 call_direction="mo", 1703 streaming=True, 1704 wifi_cycling=True, 1705 enable_volte=[True, True], 1706 enable_wfc=[True, True], 1707 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 1708 is_airplane_mode=False) 1709 1710 @test_tracker_info(uuid="ab503377-7150-4a6d-a7c1-b21009a69402") 1711 @TelephonyBaseTest.tel_test_wrap 1712 def test_dds_switch_voice_call_mt_psim_wfc_cellular_preferred_apm_on_with_with_volte_on_wifi_cycling(self): 1713 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1714 slot_0_nw_gen="wfc", 1715 slot_1_nw_gen="wfc", 1716 call_slot=0, 1717 call_direction="mt", 1718 streaming=True, 1719 wifi_cycling=True, 1720 enable_volte=[True, True], 1721 enable_wfc=[True, True], 1722 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1723 is_airplane_mode=True) 1724 1725 @test_tracker_info(uuid="7f02ee60-19e9-4602-8f6d-a13b976a6bba") 1726 @TelephonyBaseTest.tel_test_wrap 1727 def test_dds_switch_voice_call_mt_esim_wfc_cellular_preferred_apm_on_with_with_volte_on_wifi_cycling(self): 1728 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1729 slot_0_nw_gen="wfc", 1730 slot_1_nw_gen="wfc", 1731 call_slot=1, 1732 call_direction="mt", 1733 streaming=True, 1734 wifi_cycling=True, 1735 enable_volte=[True, True], 1736 enable_wfc=[True, True], 1737 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1738 is_airplane_mode=True) 1739 1740 @test_tracker_info(uuid="e93fa3ac-c5cd-4e21-b872-5172aa22d030") 1741 @TelephonyBaseTest.tel_test_wrap 1742 def test_dds_switch_voice_call_mt_wfc_psim_wifi_preferred_apm_off_with_with_volte_on_wifi_cycling(self): 1743 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1744 slot_0_nw_gen="wfc", 1745 slot_1_nw_gen="wfc", 1746 call_slot=0, 1747 call_direction="mt", 1748 streaming=True, 1749 wifi_cycling=True, 1750 enable_volte=[True, True], 1751 enable_wfc=[True, True], 1752 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 1753 is_airplane_mode=False) 1754 1755 @test_tracker_info(uuid="c2af6998-f702-4e36-bbaa-f099a307b21a") 1756 @TelephonyBaseTest.tel_test_wrap 1757 def test_dds_switch_voice_call_mt_wfc_esim_wifi_preferred_apm_off_with_with_volte_on_wifi_cycling(self): 1758 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1759 slot_0_nw_gen="wfc", 1760 slot_1_nw_gen="wfc", 1761 call_slot=1, 1762 call_direction="mt", 1763 streaming=True, 1764 wifi_cycling=True, 1765 enable_volte=[True, True], 1766 enable_wfc=[True, True], 1767 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 1768 is_airplane_mode=False) 1769 1770 @test_tracker_info(uuid="45ba6e90-bdaa-4dc0-a504-c596bafdfaad") 1771 @TelephonyBaseTest.tel_test_wrap 1772 def test_dds_switch_voice_call_mo_volte_psim_with_wfc_off_apm_cycling(self): 1773 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1774 slot_0_nw_gen="volte", 1775 slot_1_nw_gen="volte", 1776 call_slot=0, 1777 call_direction="mo", 1778 streaming=True, 1779 airplane_mode_cycling=True, 1780 enable_volte=[True, True], 1781 enable_wfc=[False, False], 1782 wfc_mode=[WFC_MODE_DISABLED, WFC_MODE_DISABLED]) 1783 1784 @test_tracker_info(uuid="1b573f40-3eaf-4149-baad-2e73e5bf15f4") 1785 @TelephonyBaseTest.tel_test_wrap 1786 def test_dds_switch_voice_call_mo_volte_esim_with_wfc_off_apm_cycling(self): 1787 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1788 slot_0_nw_gen="volte", 1789 slot_1_nw_gen="volte", 1790 call_slot=1, 1791 call_direction="mo", 1792 streaming=True, 1793 airplane_mode_cycling=True, 1794 enable_volte=[True, True], 1795 enable_wfc=[False, False], 1796 wfc_mode=[WFC_MODE_DISABLED, WFC_MODE_DISABLED]) 1797 1798 @test_tracker_info(uuid="13511fb6-2984-40c3-b1b9-22f27f241c07") 1799 @TelephonyBaseTest.tel_test_wrap 1800 def test_dds_switch_voice_call_mt_volte_psim_with_wfc_off_apm_cycling(self): 1801 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1802 slot_0_nw_gen="volte", 1803 slot_1_nw_gen="volte", 1804 call_slot=0, 1805 call_direction="mt", 1806 streaming=True, 1807 airplane_mode_cycling=True, 1808 enable_volte=[True, True], 1809 enable_wfc=[False, False], 1810 wfc_mode=[WFC_MODE_DISABLED, WFC_MODE_DISABLED]) 1811 1812 @test_tracker_info(uuid="61cf33d1-e1b2-427a-bb38-29a4c7566947") 1813 @TelephonyBaseTest.tel_test_wrap 1814 def test_dds_switch_voice_call_mt_volte_esim_with_wfc_off_apm_cycling(self): 1815 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1816 slot_0_nw_gen="volte", 1817 slot_1_nw_gen="volte", 1818 call_slot=1, 1819 call_direction="mt", 1820 streaming=True, 1821 airplane_mode_cycling=True, 1822 enable_volte=[True, True], 1823 enable_wfc=[False, False], 1824 wfc_mode=[WFC_MODE_DISABLED, WFC_MODE_DISABLED]) 1825 1826 @test_tracker_info(uuid="31a2a741-c825-46f8-8e0a-8487fab9940e") 1827 @TelephonyBaseTest.tel_test_wrap 1828 def test_dds_switch_voice_call_mo_volte_psim_with_wfc_off_cellular_data_cycling(self): 1829 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1830 slot_0_nw_gen="volte", 1831 slot_1_nw_gen="volte", 1832 call_slot=0, 1833 call_direction="mo", 1834 streaming=True, 1835 cellular_data_cycling=True, 1836 enable_volte=[True, True], 1837 enable_wfc=[False, False], 1838 wfc_mode=[WFC_MODE_DISABLED, WFC_MODE_DISABLED]) 1839 1840 @test_tracker_info(uuid="9fb2a85f-08b3-4d5d-9e03-3f7f67039148") 1841 @TelephonyBaseTest.tel_test_wrap 1842 def test_dds_switch_voice_call_mo_volte_esim_with_wfc_off_cellular_data_cycling(self): 1843 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1844 slot_0_nw_gen="volte", 1845 slot_1_nw_gen="volte", 1846 call_slot=1, 1847 call_direction="mo", 1848 streaming=True, 1849 cellular_data_cycling=True, 1850 enable_volte=[True, True], 1851 enable_wfc=[False, False], 1852 wfc_mode=[WFC_MODE_DISABLED, WFC_MODE_DISABLED]) 1853 1854 @test_tracker_info(uuid="30eba519-b349-4a75-9f31-3fea0d1a8447") 1855 @TelephonyBaseTest.tel_test_wrap 1856 def test_dds_switch_voice_call_mt_volte_psim_with_wfc_off_cellular_data_cycling(self): 1857 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1858 slot_0_nw_gen="volte", 1859 slot_1_nw_gen="volte", 1860 call_slot=0, 1861 call_direction="mt", 1862 streaming=True, 1863 cellular_data_cycling=True, 1864 enable_volte=[True, True], 1865 enable_wfc=[False, False], 1866 wfc_mode=[WFC_MODE_DISABLED, WFC_MODE_DISABLED]) 1867 1868 @test_tracker_info(uuid="37240938-3ce1-4ad2-b35a-a8862dc2c70f") 1869 @TelephonyBaseTest.tel_test_wrap 1870 def test_dds_switch_voice_call_mt_volte_esim_with_wfc_off_cellular_data_cycling(self): 1871 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1872 slot_0_nw_gen="volte", 1873 slot_1_nw_gen="volte", 1874 call_slot=1, 1875 call_direction="mt", 1876 streaming=True, 1877 cellular_data_cycling=True, 1878 enable_volte=[True, True], 1879 enable_wfc=[False, False], 1880 wfc_mode=[WFC_MODE_DISABLED, WFC_MODE_DISABLED]) 1881 1882 @test_tracker_info(uuid="a7321b9c-fb2c-4a03-9566-05e4244ae6fd") 1883 @TelephonyBaseTest.tel_test_wrap 1884 def test_dds_switch_voice_call_mo_volte_psim_with_wfc_off_wifi_cycling(self): 1885 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1886 slot_0_nw_gen="volte", 1887 slot_1_nw_gen="volte", 1888 call_slot=0, 1889 call_direction="mo", 1890 streaming=True, 1891 wifi_cycling=True, 1892 enable_volte=[True, True], 1893 enable_wfc=[False, False], 1894 wfc_mode=[WFC_MODE_DISABLED, WFC_MODE_DISABLED]) 1895 1896 @test_tracker_info(uuid="6de8d678-2f72-41ea-9ed9-47b27afee038") 1897 @TelephonyBaseTest.tel_test_wrap 1898 def test_dds_switch_voice_call_mo_volte_esim_with_wfc_off_wifi_cycling(self): 1899 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1900 slot_0_nw_gen="volte", 1901 slot_1_nw_gen="volte", 1902 call_slot=1, 1903 call_direction="mo", 1904 streaming=True, 1905 wifi_cycling=True, 1906 enable_volte=[True, True], 1907 enable_wfc=[False, False], 1908 wfc_mode=[WFC_MODE_DISABLED, WFC_MODE_DISABLED]) 1909 1910 @test_tracker_info(uuid="7bc16dcf-6dab-4eec-931d-9b342caa7a32") 1911 @TelephonyBaseTest.tel_test_wrap 1912 def test_dds_switch_voice_call_mt_volte_psim_with_wfc_off_wifi_cycling(self): 1913 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1914 slot_0_nw_gen="volte", 1915 slot_1_nw_gen="volte", 1916 call_slot=0, 1917 call_direction="mt", 1918 streaming=True, 1919 wifi_cycling=True, 1920 enable_volte=[True, True], 1921 enable_wfc=[False, False], 1922 wfc_mode=[WFC_MODE_DISABLED, WFC_MODE_DISABLED]) 1923 1924 @test_tracker_info(uuid="9c13e51b-385d-4df6-90b7-33b5e185f225") 1925 @TelephonyBaseTest.tel_test_wrap 1926 def test_dds_switch_voice_call_mt_volte_esim_with_wfc_off_wifi_cycling(self): 1927 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1928 slot_0_nw_gen="volte", 1929 slot_1_nw_gen="volte", 1930 call_slot=1, 1931 call_direction="mt", 1932 streaming=True, 1933 wifi_cycling=True, 1934 enable_volte=[True, True], 1935 enable_wfc=[False, False], 1936 wfc_mode=[WFC_MODE_DISABLED, WFC_MODE_DISABLED]) 1937 1938 @test_tracker_info(uuid="161341e7-5c2d-45f9-9b11-4f44d542cd01") 1939 @TelephonyBaseTest.tel_test_wrap 1940 def test_dds_switch_voice_call_mo_wfc_psim_cellular_preferred_apm_on_with_volte_off_apm_cycling(self): 1941 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1942 slot_0_nw_gen="wfc", 1943 slot_1_nw_gen="wfc", 1944 call_slot=0, 1945 call_direction="mo", 1946 streaming=True, 1947 airplane_mode_cycling=True, 1948 enable_volte=[False, False], 1949 enable_wfc=[True, True], 1950 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1951 is_airplane_mode=True) 1952 1953 @test_tracker_info(uuid="4d43f92f-562f-4bf1-bc25-71410f14425c") 1954 @TelephonyBaseTest.tel_test_wrap 1955 def test_dds_switch_voice_call_mo_wfc_esim_cellular_preferred_apm_on_with_volte_off_apm_cycling(self): 1956 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1957 slot_0_nw_gen="wfc", 1958 slot_1_nw_gen="wfc", 1959 call_slot=1, 1960 call_direction="mo", 1961 streaming=True, 1962 airplane_mode_cycling=True, 1963 enable_volte=[False, False], 1964 enable_wfc=[True, True], 1965 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 1966 is_airplane_mode=True) 1967 1968 @test_tracker_info(uuid="fe83e92d-c554-4f81-a447-d58300426da7") 1969 @TelephonyBaseTest.tel_test_wrap 1970 def test_dds_switch_voice_call_mo_wfc_psim_wifi_preferred_apm_off_with_volte_off_apm_cycling(self): 1971 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1972 slot_0_nw_gen="wfc", 1973 slot_1_nw_gen="wfc", 1974 call_slot=0, 1975 call_direction="mo", 1976 streaming=True, 1977 airplane_mode_cycling=True, 1978 enable_volte=[False, False], 1979 enable_wfc=[True, True], 1980 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 1981 is_airplane_mode=False) 1982 1983 @test_tracker_info(uuid="76ba6834-1523-4ce8-80b9-079f2428da67") 1984 @TelephonyBaseTest.tel_test_wrap 1985 def test_dds_switch_voice_call_mo_wfc_esim_wifi_preferred_apm_off_with_volte_off_apm_cycling(self): 1986 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 1987 slot_0_nw_gen="wfc", 1988 slot_1_nw_gen="wfc", 1989 call_slot=1, 1990 call_direction="mo", 1991 streaming=True, 1992 airplane_mode_cycling=True, 1993 enable_volte=[False, False], 1994 enable_wfc=[True, True], 1995 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 1996 is_airplane_mode=False) 1997 1998 @test_tracker_info(uuid="15289348-8e09-4997-b5a3-f66bb7e7dca1") 1999 @TelephonyBaseTest.tel_test_wrap 2000 def test_dds_switch_voice_call_mt_wfc_psim_cellular_preferred_apm_on_with_volte_off_apm_cycling(self): 2001 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2002 slot_0_nw_gen="wfc", 2003 slot_1_nw_gen="wfc", 2004 call_slot=0, 2005 call_direction="mt", 2006 streaming=True, 2007 airplane_mode_cycling=True, 2008 enable_volte=[False, False], 2009 enable_wfc=[True, True], 2010 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 2011 is_airplane_mode=True) 2012 2013 @test_tracker_info(uuid="1ae4fa98-1ac3-4194-a483-097b7262415b") 2014 @TelephonyBaseTest.tel_test_wrap 2015 def test_dds_switch_voice_call_mt_wfc_esim_cellular_preferred_apm_on_with_volte_off_apm_cycling(self): 2016 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2017 slot_0_nw_gen="wfc", 2018 slot_1_nw_gen="wfc", 2019 call_slot=1, 2020 call_direction="mt", 2021 streaming=True, 2022 airplane_mode_cycling=True, 2023 enable_volte=[False, False], 2024 enable_wfc=[True, True], 2025 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 2026 is_airplane_mode=True) 2027 2028 @test_tracker_info(uuid="13d0af2c-2870-4cbc-8a38-311f93cd4bd7") 2029 @TelephonyBaseTest.tel_test_wrap 2030 def test_dds_switch_voice_call_mt_wfc_psim_wifi_preferred_apm_off_with_volte_off_apm_cycling(self): 2031 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2032 slot_0_nw_gen="wfc", 2033 slot_1_nw_gen="wfc", 2034 call_slot=0, 2035 call_direction="mt", 2036 streaming=True, 2037 airplane_mode_cycling=True, 2038 enable_volte=[False, False], 2039 enable_wfc=[True, True], 2040 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 2041 is_airplane_mode=False) 2042 2043 @test_tracker_info(uuid="5fbe2002-a02f-4750-81e5-4a06d7b62740") 2044 @TelephonyBaseTest.tel_test_wrap 2045 def test_dds_switch_voice_call_mt_wfc_esim_wifi_preferred_apm_off_with_volte_off_apm_cycling(self): 2046 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2047 slot_0_nw_gen="wfc", 2048 slot_1_nw_gen="wfc", 2049 call_slot=1, 2050 call_direction="mt", 2051 streaming=True, 2052 airplane_mode_cycling=True, 2053 enable_volte=[False, False], 2054 enable_wfc=[True, True], 2055 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 2056 is_airplane_mode=False) 2057 2058 @test_tracker_info(uuid="f8f523d2-e432-45d4-a850-469a22894bc7") 2059 @TelephonyBaseTest.tel_test_wrap 2060 def test_dds_switch_voice_call_mo_wfc_psim_cellular_preferred_apm_on_with_volte_off_cellular_data_cycling(self): 2061 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2062 slot_0_nw_gen="wfc", 2063 slot_1_nw_gen="wfc", 2064 call_slot=0, 2065 call_direction="mo", 2066 streaming=True, 2067 cellular_data_cycling=True, 2068 enable_volte=[False, False], 2069 enable_wfc=[True, True], 2070 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 2071 is_airplane_mode=True) 2072 2073 @test_tracker_info(uuid="750a8690-f9dd-4779-b13f-4011f478f194") 2074 @TelephonyBaseTest.tel_test_wrap 2075 def test_dds_switch_voice_call_mo_wfc_esim_cellular_preferred_apm_on_with_volte_off_cellular_data_cycling(self): 2076 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2077 slot_0_nw_gen="wfc", 2078 slot_1_nw_gen="wfc", 2079 call_slot=1, 2080 call_direction="mo", 2081 streaming=True, 2082 cellular_data_cycling=True, 2083 enable_volte=[False, False], 2084 enable_wfc=[True, True], 2085 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 2086 is_airplane_mode=True) 2087 2088 @test_tracker_info(uuid="9fcda7e5-1705-4bbe-8f18-f005437c71f2") 2089 @TelephonyBaseTest.tel_test_wrap 2090 def test_dds_switch_voice_call_mo_wfc_psim_wifi_preferred_apm_off_with_volte_off_cellular_data_cycling(self): 2091 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2092 slot_0_nw_gen="wfc", 2093 slot_1_nw_gen="wfc", 2094 call_slot=0, 2095 call_direction="mo", 2096 streaming=True, 2097 cellular_data_cycling=True, 2098 enable_volte=[False, False], 2099 enable_wfc=[True, True], 2100 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 2101 is_airplane_mode=False) 2102 2103 @test_tracker_info(uuid="0e054729-945a-4f6f-ad29-4d832f0b11ed") 2104 @TelephonyBaseTest.tel_test_wrap 2105 def test_dds_switch_voice_call_mo_wfc_esim_wifi_preferred_apm_off_with_volte_off_cellular_data_cycling(self): 2106 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2107 slot_0_nw_gen="wfc", 2108 slot_1_nw_gen="wfc", 2109 call_slot=1, 2110 call_direction="mo", 2111 streaming=True, 2112 cellular_data_cycling=True, 2113 enable_volte=[False, False], 2114 enable_wfc=[True, True], 2115 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 2116 is_airplane_mode=False) 2117 2118 @test_tracker_info(uuid="2e387739-cc4a-4d48-aa56-83bf621835b1") 2119 @TelephonyBaseTest.tel_test_wrap 2120 def test_dds_switch_voice_call_mt_wfc_psim_cellular_preferred_apm_on_with_volte_off_cellular_data_cycling(self): 2121 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2122 slot_0_nw_gen="wfc", 2123 slot_1_nw_gen="wfc", 2124 call_slot=0, 2125 call_direction="mt", 2126 streaming=True, 2127 cellular_data_cycling=True, 2128 enable_volte=[False, False], 2129 enable_wfc=[True, True], 2130 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 2131 is_airplane_mode=True) 2132 2133 @test_tracker_info(uuid="a0e2deda-9148-4665-abc8-7665e3818d06") 2134 @TelephonyBaseTest.tel_test_wrap 2135 def test_dds_switch_voice_call_mt_wfc_esim_cellular_preferred_apm_on_with_volte_off_cellular_data_cycling(self): 2136 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2137 slot_0_nw_gen="wfc", 2138 slot_1_nw_gen="wfc", 2139 call_slot=1, 2140 call_direction="mt", 2141 streaming=True, 2142 cellular_data_cycling=True, 2143 enable_volte=[False, False], 2144 enable_wfc=[True, True], 2145 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 2146 is_airplane_mode=True) 2147 2148 @test_tracker_info(uuid="6a43acef-aaa1-4fe8-ae7e-c8e045bf8814") 2149 @TelephonyBaseTest.tel_test_wrap 2150 def test_dds_switch_voice_call_mt_wfc_psim_wifi_preferred_apm_off_with_volte_off_cellular_data_cycling(self): 2151 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2152 slot_0_nw_gen="wfc", 2153 slot_1_nw_gen="wfc", 2154 call_slot=0, 2155 call_direction="mt", 2156 streaming=True, 2157 cellular_data_cycling=True, 2158 enable_volte=[False, False], 2159 enable_wfc=[True, True], 2160 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 2161 is_airplane_mode=False) 2162 2163 @test_tracker_info(uuid="95524166-212f-4e82-9e02-2f9b58d92a9f") 2164 @TelephonyBaseTest.tel_test_wrap 2165 def test_dds_switch_voice_call_mt_wfc_esim_wifi_preferred_apm_off_with_volte_off_cellular_data_cycling(self): 2166 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2167 slot_0_nw_gen="wfc", 2168 slot_1_nw_gen="wfc", 2169 call_slot=1, 2170 call_direction="mt", 2171 streaming=True, 2172 cellular_data_cycling=True, 2173 enable_volte=[False, False], 2174 enable_wfc=[True, True], 2175 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 2176 is_airplane_mode=False) 2177 2178 @test_tracker_info(uuid="828ae64c-41b3-4974-a412-342d3ca16ce3") 2179 @TelephonyBaseTest.tel_test_wrap 2180 def test_dds_switch_voice_call_mo_wfc_psim_cellular_preferred_apm_on_with_volte_off_wifi_cycling(self): 2181 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2182 slot_0_nw_gen="wfc", 2183 slot_1_nw_gen="wfc", 2184 call_slot=0, 2185 call_direction="mo", 2186 streaming=True, 2187 wifi_cycling=True, 2188 enable_volte=[False, False], 2189 enable_wfc=[True, True], 2190 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 2191 is_airplane_mode=True) 2192 2193 @test_tracker_info(uuid="343cf9dc-4f4c-4c0c-bd7b-ba664381f6bd") 2194 @TelephonyBaseTest.tel_test_wrap 2195 def test_dds_switch_voice_call_mo_wfc_esim_cellular_preferred_apm_on_with_volte_off_wifi_cycling(self): 2196 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2197 slot_0_nw_gen="wfc", 2198 slot_1_nw_gen="wfc", 2199 call_slot=1, 2200 call_direction="mo", 2201 streaming=True, 2202 wifi_cycling=True, 2203 enable_volte=[False, False], 2204 enable_wfc=[True, True], 2205 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 2206 is_airplane_mode=True) 2207 2208 @test_tracker_info(uuid="6ef18605-bf4c-43d8-83fd-0bf71311973e") 2209 @TelephonyBaseTest.tel_test_wrap 2210 def test_dds_switch_voice_call_mo_wfc_psim_wifi_preferred_apm_off_with_volte_off_wifi_cycling(self): 2211 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2212 slot_0_nw_gen="wfc", 2213 slot_1_nw_gen="wfc", 2214 call_slot=0, 2215 call_direction="mo", 2216 streaming=True, 2217 wifi_cycling=True, 2218 enable_volte=[False, False], 2219 enable_wfc=[True, True], 2220 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 2221 is_airplane_mode=False) 2222 2223 @test_tracker_info(uuid="9bddfe69-68e1-4d04-aeaa-75fb0f9ed9aa") 2224 @TelephonyBaseTest.tel_test_wrap 2225 def test_dds_switch_voice_call_mo_wfc_esim_wifi_preferred_apm_off_with_volte_off_wifi_cycling(self): 2226 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2227 slot_0_nw_gen="wfc", 2228 slot_1_nw_gen="wfc", 2229 call_slot=1, 2230 call_direction="mo", 2231 streaming=True, 2232 wifi_cycling=True, 2233 enable_volte=[False, False], 2234 enable_wfc=[True, True], 2235 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 2236 is_airplane_mode=False) 2237 2238 @test_tracker_info(uuid="81e7d2b6-e3eb-4651-807f-66bf8eeeea93") 2239 @TelephonyBaseTest.tel_test_wrap 2240 def test_dds_switch_voice_call_mt_wfc_psim_cellular_preferred_apm_on_with_volte_off_wifi_cycling(self): 2241 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2242 slot_0_nw_gen="wfc", 2243 slot_1_nw_gen="wfc", 2244 call_slot=0, 2245 call_direction="mt", 2246 streaming=True, 2247 wifi_cycling=True, 2248 enable_volte=[False, False], 2249 enable_wfc=[True, True], 2250 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 2251 is_airplane_mode=True) 2252 2253 @test_tracker_info(uuid="8c6da88b-be3a-4c0c-a239-255faf03a28b") 2254 @TelephonyBaseTest.tel_test_wrap 2255 def test_dds_switch_voice_call_mt_wfc_esim_cellular_preferred_apm_on_with_volte_off_wifi_cycling(self): 2256 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2257 slot_0_nw_gen="wfc", 2258 slot_1_nw_gen="wfc", 2259 call_slot=1, 2260 call_direction="mt", 2261 streaming=True, 2262 wifi_cycling=True, 2263 enable_volte=[False, False], 2264 enable_wfc=[True, True], 2265 wfc_mode=[WFC_MODE_CELLULAR_PREFERRED, WFC_MODE_CELLULAR_PREFERRED], 2266 is_airplane_mode=True) 2267 2268 @test_tracker_info(uuid="1b9ef6b4-c0c0-4375-b1a5-d569b946491e") 2269 @TelephonyBaseTest.tel_test_wrap 2270 def test_dds_switch_voice_call_mt_wfc_psim_wifi_preferred_apm_off_with_volte_off_wifi_cycling(self): 2271 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2272 slot_0_nw_gen="wfc", 2273 slot_1_nw_gen="wfc", 2274 call_slot=0, 2275 call_direction="mt", 2276 streaming=True, 2277 wifi_cycling=True, 2278 enable_volte=[False, False], 2279 enable_wfc=[True, True], 2280 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 2281 is_airplane_mode=False) 2282 2283 @test_tracker_info(uuid="5771fedb-5eed-4868-84a3-0d7a01474dcf") 2284 @TelephonyBaseTest.tel_test_wrap 2285 def test_dds_switch_voice_call_mt_wfc_esim_wifi_preferred_apm_off_with_volte_off_wifi_cycling(self): 2286 return self._test_dds_switch_during_data_transfer_with_apm_cycling_and_ims_setting( 2287 slot_0_nw_gen="wfc", 2288 slot_1_nw_gen="wfc", 2289 call_slot=1, 2290 call_direction="mt", 2291 streaming=True, 2292 wifi_cycling=True, 2293 enable_volte=[False, False], 2294 enable_wfc=[True, True], 2295 wfc_mode=[WFC_MODE_WIFI_PREFERRED, WFC_MODE_WIFI_PREFERRED], 2296 is_airplane_mode=False)