| # Copyright 2019 The Chromium OS Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| from autotest_lib.server import utils |
| from autotest_lib.server.cros.bluetooth import bluetooth_test |
| |
| AUTHOR = 'chromeos-bluetooth' |
| NAME = 'bluetooth_AdapterLESanity.le_connect_disconnect_loop' |
| PURPOSE = ('Batch of Bluetooth LE sanity tests') |
| CRITERIA = 'Pass all sanity test' |
| ATTRIBUTES = 'suite:bluetooth, suite:bluetooth_e2e' |
| TIME = 'MEDIUM' |
| TEST_CATEGORY = 'Functional' |
| TEST_CLASS = 'bluetooth' |
| TEST_TYPE = 'server' |
| DEPENDENCIES = 'bluetooth, chameleon:bt_ble_hid' |
| |
| DOC = """ |
| A Batch of Bluetooth LE sanity tests. This test is written as a batch |
| of tests in order to reduce test time, since auto-test ramp up time is |
| costy. The batch is using BluetoothAdapterQuickTests wrapper methods to |
| start and end a test and a batch of tests. |
| |
| This class can be called to run the entire test batch or to run a |
| specific test only - todo http://b/132199238 [autotest BT quick sanity] |
| add support for running a single test in quick test |
| """ |
| |
| args_dict = utils.args_to_dict(args) |
| chameleon_args = hosts.CrosHost.get_chameleon_arguments(args_dict) |
| newblue_enable = args_dict['newblue'] == 'enable'\ |
| if 'newblue' in args_dict else False |
| |
| def run(machine): |
| host = hosts.create_host(machine, chameleon_args=chameleon_args) |
| bluetooth_test.enable_newblue(host=host, enable=newblue_enable) |
| job.run_test('bluetooth_AdapterLESanity', host=host, |
| num_iterations=1, test_name=NAME.split('.')[1]) |
| |
| parallel_simple(run, machines) |