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" 8TIME = 'SHORT' 9TEST_CLASS = 'bluetooth' 10TEST_TYPE = 'Server' 11DEPENDENCIES = 'bluetooth,wificell' 12 13DOC = """ 14Verify the correct behaviour of the device when searching for attributes of 15services. 16 17The tester sends Service Search Request and Service Attribute Request to the DUT 18to ensure that it is able to response with different attributes: 19ServiceRecordHandle, BrowseGroupList, DocumentationURL, ClientExecutableURL, 20IconURL, ProtocolDescriptorList, VersionNumberList, ServiceDatabaseState, 21BluetoothProfileDescriptorList, AdditionalProtocolDescriptorLists, ServiceID, 22ServiceRecordState, ServiceInfoTime, LanguageBaseAttributeIdList, 23ServiceAvailability, ServiceName, ServiceDescription, ProviderName. 24It also checks that responses with continuation state work properly, 25as well as requests with non-existing attributes and various invalid requests. 26 27This test covers the Bluetooth SIG test cases: 28TP/SERVER/SA/BV-01-C 29TP/SERVER/SA/BV-03-C 30TP/SERVER/SA/BV-04-C 31TP/SERVER/SA/BV-05-C 32TP/SERVER/SA/BV-06-C 33TP/SERVER/SA/BV-07-C 34TP/SERVER/SA/BV-08-C 35TP/SERVER/SA/BV-09-C 36TP/SERVER/SA/BV-10-C 37TP/SERVER/SA/BV-11-C 38TP/SERVER/SA/BV-12-C 39TP/SERVER/SA/BV-13-C 40TP/SERVER/SA/BV-14-C 41TP/SERVER/SA/BV-15-C 42TP/SERVER/SA/BV-16-C 43TP/SERVER/SA/BV-17-C 44TP/SERVER/SA/BV-18-C 45TP/SERVER/SA/BV-19-C 46TP/SERVER/SA/BV-20-C 47TP/SERVER/SA/BV-21-C 48TP/SERVER/SA/BI-01-C 49TP/SERVER/SA/BI-02-C 50TP/SERVER/SA/BI-03-C 51""" 52 53from autotest_lib.server.cros.bluetooth import bluetooth_tester 54from autotest_lib.server import utils 55 56 57args_dict = utils.args_to_dict(args) 58 59def run(machine): 60 device_host = hosts.create_host(machine) 61 tester_host = bluetooth_tester.create_host_from(device_host, args=args_dict) 62 job.run_test('bluetooth_SDP_ServiceAttributeRequest', 63 device_host=device_host, 64 tester_host=tester_host, 65 interactive=False) 66 67parallel_simple(run, machines) 68