# Copyright (c) 2013 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 = 'arakhov@chromium.org' NAME = 'bluetooth_SDP_ServiceAttributeRequest' ATTRIBUTES = "suite:bluetooth, suite:bluetooth_qualification" TIME = 'SHORT' TEST_CLASS = 'bluetooth' TEST_TYPE = 'Server' DEPENDENCIES = 'bluetooth,wificell' DOC = """ Verify the correct behaviour of the device when searching for attributes of services. The tester sends Service Search Request and Service Attribute Request to the DUT to ensure that it is able to response with different attributes: ServiceRecordHandle, BrowseGroupList, DocumentationURL, ClientExecutableURL, IconURL, ProtocolDescriptorList, VersionNumberList, ServiceDatabaseState, BluetoothProfileDescriptorList, AdditionalProtocolDescriptorLists, ServiceID, ServiceRecordState, ServiceInfoTime, LanguageBaseAttributeIdList, ServiceAvailability, ServiceName, ServiceDescription, ProviderName. It also checks that responses with continuation state work properly, as well as requests with non-existing attributes and various invalid requests. This test covers the Bluetooth SIG test cases: TP/SERVER/SA/BV-01-C TP/SERVER/SA/BV-03-C TP/SERVER/SA/BV-04-C TP/SERVER/SA/BV-05-C TP/SERVER/SA/BV-06-C TP/SERVER/SA/BV-07-C TP/SERVER/SA/BV-08-C TP/SERVER/SA/BV-09-C TP/SERVER/SA/BV-10-C TP/SERVER/SA/BV-11-C TP/SERVER/SA/BV-12-C TP/SERVER/SA/BV-13-C TP/SERVER/SA/BV-14-C TP/SERVER/SA/BV-15-C TP/SERVER/SA/BV-16-C TP/SERVER/SA/BV-17-C TP/SERVER/SA/BV-18-C TP/SERVER/SA/BV-19-C TP/SERVER/SA/BV-20-C TP/SERVER/SA/BV-21-C TP/SERVER/SA/BI-01-C TP/SERVER/SA/BI-02-C TP/SERVER/SA/BI-03-C """ from autotest_lib.server.cros.bluetooth import bluetooth_tester from autotest_lib.server import utils args_dict = utils.args_to_dict(args) def run(machine): device_host = hosts.create_host(machine) tester_host = bluetooth_tester.create_host_from(device_host, args=args_dict) job.run_test('bluetooth_SDP_ServiceAttributeRequest', device_host=device_host, tester_host=tester_host, interactive=False) parallel_simple(run, machines)