diff options
author | Treehugger Robot <treehugger-gerrit@google.com> | 2019-10-10 00:16:55 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2019-10-10 00:16:55 +0000 |
commit | 551d5bc155ab0bed60efe125003481947db016fc (patch) | |
tree | cb9e2d4b8d3f638e583ef4986f4a4d9343f948f3 | |
parent | 035eee1594a10f35323f700290424e6628addae4 (diff) | |
parent | a84fe764575b6c2d909e23a8beda367e805cd871 (diff) | |
download | platform_tools_test_connectivity-551d5bc155ab0bed60efe125003481947db016fc.tar.gz platform_tools_test_connectivity-551d5bc155ab0bed60efe125003481947db016fc.tar.bz2 platform_tools_test_connectivity-551d5bc155ab0bed60efe125003481947db016fc.zip |
Merge "Add a common controller for Headsets."ndk-sysroot-r21
3 files changed, 63 insertions, 3 deletions
diff --git a/acts/framework/acts/test_utils/abstract_devices/bluetooth_handsfree_abstract_device.py b/acts/framework/acts/test_utils/abstract_devices/bluetooth_handsfree_abstract_device.py index 669ab0c259..bf4d549c5a 100644 --- a/acts/framework/acts/test_utils/abstract_devices/bluetooth_handsfree_abstract_device.py +++ b/acts/framework/acts/test_utils/abstract_devices/bluetooth_handsfree_abstract_device.py @@ -100,7 +100,7 @@ class BluetoothHandsfreeAbstractDevice: class PixelBudsBluetoothHandsfreeAbstractDevice( - BluetoothHandsfreeAbstractDevice): + BluetoothHandsfreeAbstractDevice): CMD_EVENT = 'EvtHex' @@ -250,6 +250,62 @@ class JaybirdX3EarbudsBluetoothHandsfreeAbstractDevice( return self.jaybird_controller.press_volume_up() +class AndroidHeadsetBluetoothHandsfreeAbstractDevice( + BluetoothHandsfreeAbstractDevice): + + def __init__(self, ad_controller): + self.ad_controller = ad_controller + + @property + def mac_address(self): + return self.ad_controller.droid.bluetoothGetLocalAddress() + + def accept_call(self): + return self.ad_controller.droid.telecomAcceptRingingCall(None) + + def end_call(self): + return self.ad_controller.droid.telecomEndCall() + + def enter_pairing_mode(self): + self.ad_controller.droid.bluetoothStartPairingHelper(True) + return self.ad_controller.droid.bluetoothMakeDiscoverable() + + def next_track(self): + return (self.ad_controller.droid. + bluetoothMediaPassthrough("skipNext")) + + def pause(self): + return self.ad_controller.droid.bluetoothMediaPassthrough("pause") + + def play(self): + return self.ad_controller.droid.bluetoothMediaPassthrough("play") + + def power_off(self): + return self.ad_controller.droid.bluetoothToggleState(False) + + def power_on(self): + return self.ad_controller.droid.bluetoothToggleState(True) + + def previous_track(self): + return (self.ad_controller.droid. + bluetoothMediaPassthrough("skipPrev")) + + def reject_call(self): + return self.ad_controller.droid.telecomCallDisconnect( + self.ad_controller.droid.telecomCallGetCallIds()[0]) + + def volume_down(self): + target_step = self.ad_controller.droid.getMediaVolume() - 1 + target_step = max(target_step, 0) + return self.ad_controller.droid.setMediaVolume(target_step) + + def volume_up(self): + target_step = self.ad_controller.droid.getMediaVolume() + 1 + max_step = self.ad_controller.droid.getMaxMediaVolume() + target_step = min(target_step, max_step) + return self.ad_controller.droid.setMediaVolume(target_step) + + class BluetoothHandsfreeAbstractDeviceFactory: """Generates a BluetoothHandsfreeAbstractDevice for any device controller. """ @@ -257,7 +313,8 @@ class BluetoothHandsfreeAbstractDeviceFactory: _controller_abstract_devices = { 'EarstudioReceiver': EarstudioReceiverBluetoothHandsfreeAbstractDevice, 'JaybirdX3Earbuds': JaybirdX3EarbudsBluetoothHandsfreeAbstractDevice, - 'ParentDevice': PixelBudsBluetoothHandsfreeAbstractDevice + 'ParentDevice': PixelBudsBluetoothHandsfreeAbstractDevice, + 'AndroidDevice': AndroidHeadsetBluetoothHandsfreeAbstractDevice } def generate(self, controller): diff --git a/acts/framework/acts/test_utils/bt/bt_test_utils.py b/acts/framework/acts/test_utils/bt/bt_test_utils.py index 0409d91f39..57992eb19f 100644 --- a/acts/framework/acts/test_utils/bt/bt_test_utils.py +++ b/acts/framework/acts/test_utils/bt/bt_test_utils.py @@ -1603,4 +1603,3 @@ def write_read_verify_data(client_ad, server_ad, msg, binary=False): log.error("Mismatch! Read: {}, Expected: {}".format(read_msg, msg)) return False return True - diff --git a/acts/framework/acts/test_utils/bt/simulated_carkit_device.py b/acts/framework/acts/test_utils/bt/simulated_carkit_device.py index 7279fe619c..84fcc5ea79 100644 --- a/acts/framework/acts/test_utils/bt/simulated_carkit_device.py +++ b/acts/framework/acts/test_utils/bt/simulated_carkit_device.py @@ -19,6 +19,10 @@ from acts import asserts from acts.controllers import android_device from acts.test_utils.bt.bt_test_utils import bluetooth_enabled_check +# TODO: This class to be deprecated for +# ../acts/test_utils/abstract_devices/bluetooth_handsfree_abstract_device.py + + class SimulatedCarkitDevice(): def __init__(self, serial): self.ad = android_device.create(serial)[0] |