| # Copyright (c) 2020 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. |
| |
| AUTHOR = 'chromeos-bluetooth' |
| NAME = 'bluetooth_AdapterCLSanity.cl_sdp_service_search_attribute_request_test' |
| ATTRIBUTES = ('suite:bluetooth_flaky') |
| TIME = 'SHORT' |
| TEST_CLASS = 'bluetooth' |
| TEST_TYPE = 'Server' |
| DEPENDENCIES = 'bluetooth, chameleon:bt_peer' |
| |
| DOC = """ |
| Verify the correct behaviour of the device when executing Service Search |
| Attribute transaction. |
| |
| The tester sends a Service Search Attribute Request to the DUT, checking: |
| * non-existing Service, existing Attribute |
| * existing Service, non-existing Attribute |
| * non-existing Service, non-existing Attribute |
| * existing Service, existing Attribute |
| * various specific attributes, listed in Test Specification |
| * correctness of continuation state behavior |
| * responses to invalid requests |
| |
| This test covers the following Bluetooth SIG test cases: |
| TP/SERVER/SSA/BV-01-C |
| TP/SERVER/SSA/BV-02-C |
| TP/SERVER/SSA/BV-03-C |
| TP/SERVER/SSA/BV-04-C |
| TP/SERVER/SSA/BV-06-C |
| TP/SERVER/SSA/BV-07-C |
| TP/SERVER/SSA/BV-08-C |
| TP/SERVER/SSA/BV-09-C |
| TP/SERVER/SSA/BV-10-C |
| TP/SERVER/SSA/BV-11-C |
| TP/SERVER/SSA/BV-12-C |
| TP/SERVER/SSA/BV-13-C |
| TP/SERVER/SSA/BV-14-C |
| TP/SERVER/SSA/BV-15-C |
| TP/SERVER/SSA/BV-16-C |
| TP/SERVER/SSA/BV-17-C |
| TP/SERVER/SSA/BV-18-C |
| TP/SERVER/SSA/BV-19-C |
| TP/SERVER/SSA/BV-20-C |
| TP/SERVER/SSA/BV-21-C |
| TP/SERVER/SSA/BV-22-C |
| TP/SERVER/SSA/BV-23-C |
| TP/SERVER/SSA/BI-01-C |
| TP/SERVER/SSA/BI-02-C |
| |
| """ |
| |
| from autotest_lib.server import utils |
| |
| args_dict = utils.args_to_dict(args) |
| # |
| # Bluetooth peers can be named hostname-<chameleon> or hostname-<btpeer[1-4] |
| # Check for both until we transition to new peer names |
| # TODO(b:149637050) Cleanup this code |
| # |
| chameleon_args = hosts.CrosHost.get_chameleon_arguments(args_dict) |
| btpeer_args = hosts.CrosHost.get_btpeer_arguments(args_dict) |
| |
| def run(machine): |
| host = hosts.create_host(machine, chameleon_args=chameleon_args) |
| host.initialize_btpeer(btpeer_args) |
| job.run_test('bluetooth_AdapterCLSanity', host=host, |
| num_iterations=1, test_name=NAME.split('.')[1]) |
| |
| parallel_simple(run, machines) |