blob: 01f616e3df41266902ea65b2c0f85407220972b2 [file] [log] [blame]
#!/usr/bin/env python3.4
#
# Copyright 2021 - Google
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
"""
Test Script for 5G MSA mmWave Activation scenarios
"""
import time
from acts.test_decorators import test_tracker_info
from acts_contrib.test_utils.tel.TelephonyBaseTest import TelephonyBaseTest
from acts_contrib.test_utils.tel.tel_test_utils import reboot_device
from acts_contrib.test_utils.tel.tel_test_utils import cycle_airplane_mode
from acts_contrib.test_utils.tel.tel_5g_test_utils import test_activation_by_condition
class Nsa5gMmwActivationTest(TelephonyBaseTest):
def setup_class(self):
super().setup_class()
def setup_test(self):
TelephonyBaseTest.setup_test(self)
self.number_of_devices = 1
def teardown_class(self):
TelephonyBaseTest.teardown_class(self)
""" Tests Begin """
@test_tracker_info(uuid="6831cf7f-349e-43ae-9a89-5e183a755671")
@TelephonyBaseTest.tel_test_wrap
def test_5g_nsa_mmw_activation_from_apm(self):
""" Verifies 5G NSA mmWave activation from Airplane Mode
Toggle Airplane mode on and off
Ensure phone attach, data on, LTE attach
Wait for 120 secs for ENDC attach
Verify is data network type is NR_NSA
Returns:
True if pass; False if fail.
"""
return test_activation_by_condition(self.android_devices[0],
nr_type='mmwave',
precond_func=lambda: cycle_airplane_mode(self.android_devices[0]))
@test_tracker_info(uuid="21fb9b5c-40e8-4804-b05b-017395bb2e79")
@TelephonyBaseTest.tel_test_wrap
def test_5g_nsa_mmw_activation_from_reboot(self):
""" Verifies 5G NSA mmWave activation from Reboot
Reboot device
Ensure phone attach, data on, LTE attach
Wait for 120 secs for ENDC attach
Verify is data network type is NR_NSA
Returns:
True if pass; False if fail.
"""
return test_activation_by_condition(self.android_devices[0],
nr_type='mmwave',
precond_func=lambda: reboot_device(self.android_devices[0]))
@test_tracker_info(uuid="2cef7ec0-ea74-458f-a98e-143d0be71f31")
@TelephonyBaseTest.tel_test_wrap
def test_5g_nsa_mmw_activation_from_3g(self):
""" Verifies 5G NSA mmWave activation from 3G Mode Pref
Change Mode to 3G and wait for 15 secs
Change Mode back to 5G
Ensure phone attach, data on, LTE attach
Wait for 120 secs for ENDC attach
Verify is data network type is NR_NSA
Returns:
True if pass; False if fail.
"""
return test_activation_by_condition(self.android_devices[0],
from_3g=True,
nr_type='mmwave')
""" Tests End """