xref: /aosp_15_r20/platform_testing/tests/automotive/mobly_tests/bluetooth_sms_base_test.py (revision dd0948b35e70be4c0246aabd6c72554a5eb8b22a)
1"""
2Bluetooth ThreeDeviceTestBed Base Test
3
4This test class serves as a base class for tests which needs three devices
5
6"""
7
8import logging
9import sys
10
11from mobly import test_runner
12from mobly.controllers import android_device
13
14from utilities import spectatio_utils
15from utilities import bt_utils
16from bluetooth_test import bluetooth_base_test
17from utilities.video_utils_service import VideoRecording
18
19class BluetoothSMSBaseTest(bluetooth_base_test.BluetoothBaseTest):
20
21
22    def setup_class(self):
23        # Registering android_device controller module and declaring the three devices
24
25        self.ads = self.register_controller(android_device, min_number=3)
26        # The device used to discover Bluetooth devices.
27        self.discoverer = android_device.get_device(
28            self.ads, label='auto')
29        # Sets the tag that represents this device in logs.
30        self.discoverer.debug_tag = 'discoverer'
31        # The device that is expected to be discovered
32        self.target = android_device.get_device(self.ads, label='phone')
33        self.target.debug_tag = 'target'
34        self.target.load_snippet('mbs', android_device.MBS_PACKAGE)
35        self.discoverer.load_snippet('mbs', android_device.MBS_PACKAGE)
36
37        self.phone_notpaired = android_device.get_device(self.ads, label='phone_notpaired')
38        self.phone_notpaired.debug_tag = 'phone_notpaired'
39        self.phone_notpaired.load_snippet('mbs', android_device.MBS_PACKAGE)
40
41        self.call_utils = (spectatio_utils.CallUtils(self.discoverer))
42        self.bt_utils = (bt_utils.BTUtils(self.discoverer, self.target))
43
44        logging.info("\tInitializing video services")
45        self.video_utils_service = VideoRecording(self.discoverer, self.__class__.__name__)
46        logging.info("Enabling video recording for Discoverer device")
47        self.video_utils_service.enable_screen_recording()
48
49        logging.info("\tInitializing video services")
50        self.video_utils_service_target = VideoRecording(self.target, self.__class__.__name__)
51        logging.info("Enabling video recording for Target device")
52        self.video_utils_service_target.enable_screen_recording()
53
54        self.call_utils.press_phone_home_icon_using_adb_command(self.phone_notpaired)
55
56
57if __name__ == '__main__':
58    common_main()
59