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_ServiceSearchRequestBasic' 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 services. 16 17The tester sends a Service Search Request to the DUT, searching the UUID of 18SDP Server Service, which is known to exist. 19Tester also searchs for Service Class ID = 0x0001, which should never exist. 20In order to verify the correct behaviour of continuation state, some number of 21fake Bluetooth services are registered on the device. This is needed to create 22a request with a very long response, and to force the SDP server on the device 23to use this continuation state functionality. 24The tester also sends Service Search Requests with intentionally invalid PDU 25size parameter and with generally incorrect syntax to verify that the IUT reacts 26correctly in these cases. 27 28This test covers the following Bluetooth SIG test cases: 29TP/SERVER/SS/BV-01-C 30TP/SERVER/SS/BV-03-C 31TP/SERVER/SS/BV-04-C 32TP/SERVER/SS/BI-01-C 33TP/SERVER/SS/BI-02-C 34""" 35 36from autotest_lib.server.cros.bluetooth import bluetooth_tester 37from autotest_lib.server import utils 38 39 40args_dict = utils.args_to_dict(args) 41 42def run(machine): 43 device_host = hosts.create_host(machine) 44 tester_host = bluetooth_tester.create_host_from(device_host, args=args_dict) 45 job.run_test('bluetooth_SDP_ServiceSearchRequestBasic', 46 device_host=device_host, 47 tester_host=tester_host, 48 interactive=False) 49 50parallel_simple(run, machines) 51