1# Copyright (c) 2013 The Chromium OS Authors. All rights reserved. 2# Use of this source code is governed by a BSD-style license that can be 3# found in the LICENSE file. 4 5AUTHOR = 'arakhov@chromium.org' 6NAME = 'bluetooth_SDP_ServiceAttributeRequest' 7ATTRIBUTES = "suite:bluetooth, suite:bluetooth_qualification" 8SUITE = 'bluetooth,bluetooth_qualification' 9TIME = 'SHORT' 10TEST_CLASS = 'bluetooth' 11TEST_TYPE = 'Server' 12DEPENDENCIES = 'bluetooth,wificell' 13 14DOC = """ 15Verify the correct behaviour of the device when searching for attributes of 16services. 17 18The tester sends Service Search Request and Service Attribute Request to the DUT 19to ensure that it is able to response with different attributes: 20ServiceRecordHandle, BrowseGroupList, DocumentationURL, ClientExecutableURL, 21IconURL, ProtocolDescriptorList, VersionNumberList, ServiceDatabaseState, 22BluetoothProfileDescriptorList, AdditionalProtocolDescriptorLists, ServiceID, 23ServiceRecordState, ServiceInfoTime, LanguageBaseAttributeIdList, 24ServiceAvailability, ServiceName, ServiceDescription, ProviderName. 25It also checks that responses with continuation state work properly, 26as well as requests with non-existing attributes and various invalid requests. 27 28This test covers the Bluetooth SIG test cases: 29TP/SERVER/SA/BV-01-C 30TP/SERVER/SA/BV-03-C 31TP/SERVER/SA/BV-04-C 32TP/SERVER/SA/BV-05-C 33TP/SERVER/SA/BV-06-C 34TP/SERVER/SA/BV-07-C 35TP/SERVER/SA/BV-08-C 36TP/SERVER/SA/BV-09-C 37TP/SERVER/SA/BV-10-C 38TP/SERVER/SA/BV-11-C 39TP/SERVER/SA/BV-12-C 40TP/SERVER/SA/BV-13-C 41TP/SERVER/SA/BV-14-C 42TP/SERVER/SA/BV-15-C 43TP/SERVER/SA/BV-16-C 44TP/SERVER/SA/BV-17-C 45TP/SERVER/SA/BV-18-C 46TP/SERVER/SA/BV-19-C 47TP/SERVER/SA/BV-20-C 48TP/SERVER/SA/BV-21-C 49TP/SERVER/SA/BI-01-C 50TP/SERVER/SA/BI-02-C 51TP/SERVER/SA/BI-03-C 52""" 53 54from autotest_lib.server.cros.bluetooth import bluetooth_tester 55from autotest_lib.server import utils 56 57 58args_dict = utils.args_to_dict(args) 59 60def run(machine): 61 device_host = hosts.create_host(machine) 62 tester_host = bluetooth_tester.create_host_from(device_host, args=args_dict) 63 job.run_test('bluetooth_SDP_ServiceAttributeRequest', 64 device_host=device_host, 65 tester_host=tester_host, 66 interactive=False) 67 68parallel_simple(run, machines) 69