History log of /external/autotest/client/common_lib/cros/bluetooth/bluetooth_sdp_socket.py
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
c026987fe3ef3f5d16f956176d4f52c464b46856 20-Aug-2015 Katherine Threlkeld <kathrelkeld@chromium.org> Improve logging for bluetooth_SDP_*AttributeRequest tests.

Add more logging statements and clarify error messages,
especially for the most frequent errors seen in the lab.

No functional changes to the behavior of the test.

ServiceSearchAttributeRequest:
- Split the giant and-ed line and make each sub-test fail instead of
returning False
- Add in the test name to failures
- Alter the current retry method to handle errors instead of bool

SDP tests:
- Split initial device reset into two sections which fail
independantly
- Set self.interactive before anything else, to avoid problems
if the later things fail
- Change output to hex instead of decimal where it makes sense

Client side code:
- Catch btsocket errors and timeouts and log more context info
- Add logging messages to low-level failures
- Check if adapter variable is None before using it

TEST=ran all bluetooth tests on a wificell and saw them pass
BUG=chromium:426260

Change-Id: I919524a984304334265a7e1658fee956fdfbfdb8
Reviewed-on: https://chromium-review.googlesource.com/294622
Reviewed-by: Mussa Kiroga <mussa@chromium.org>
Tested-by: Katherine Threlkeld <kathrelkeld@chromium.org>
Commit-Queue: Katherine Threlkeld <kathrelkeld@chromium.org>
/external/autotest/client/common_lib/cros/bluetooth/bluetooth_sdp_socket.py
ef5a458439a763afa1937837cdf5b6d7065be74d 30-Oct-2014 Artem Rakhov <arakhov@chromium.org> Bluetooth SDP autotest: ServiceSearchAttribute invalid requests

This CL adds 2 tests to check invalid Service Search Attribute requests.
One test sends a request with intentionally invalid syntax, the other one
sends requests with wrong PDU size.

BUG=chromium:417931
TEST=test_that --board ${BOARD} ${HOSTNAME} bluetooth_SDP_ServiceSearchAttributeRequest

Change-Id: If38e2d48381f08022eeaa8cfb54c96d8c1206795
Reviewed-on: https://chromium-review.googlesource.com/226381
Tested-by: Artem Rakhov <arakhov@chromium.org>
Reviewed-by: Michael Janssen <jamuraa@chromium.org>
Reviewed-by: Arman Uguray <armansito@chromium.org>
Commit-Queue: Artem Rakhov <arakhov@chromium.org>
/external/autotest/client/common_lib/cros/bluetooth/bluetooth_sdp_socket.py
2508c265d6ad361745191416e7a39f4d7b3c30c0 24-Sep-2014 Artem Rakhov <arakhov@chromium.org> Bluetooth SDP autotest: SDP Socket to support Service Search Attribute

Added a method to support Service Search Attribute transactions in our
BluetoothSDPSocket class. The method packs its arguments into raw binary packet
and sends it over L2CAP to the IUT, then parses the response and returns
everything in python list format.

BUG=chromium:416165
TEST=upload the class to a tester, send requests to IUT using python shell

Change-Id: I9901b91f453e00792180495da9eeea7bd171ce97
Reviewed-on: https://chromium-review.googlesource.com/219632
Tested-by: Artem Rakhov <arakhov@chromium.org>
Reviewed-by: Arman Uguray <armansito@chromium.org>
Commit-Queue: Artem Rakhov <arakhov@chromium.org>
/external/autotest/client/common_lib/cros/bluetooth/bluetooth_sdp_socket.py
af4e4a6932ecbb6744e48f4f9e2dcc12f3ba9d50 12-Jun-2014 Artem Rakhov <arakhov@chromium.org> Bluetooth SDP autotest: tests for invalid Service Attribute Requests

This CL adds tests for invalid Service Attribute Requests:
TP/SERVER/SA/BI-01-C - invalid record handle
TP/SERVER/SA/BI-02-C - invalid syntax of request
TP/SERVER/SA/BI-03-C - invalid size of request in header

It also adds corresponding parameters to service_attribute_request()
method of bluetooth_sdp_socket() to be able to send intentionally
invalid requests.

BUG=chromium:329044
TEST=test_that --board ${BOARD} ${HOSTNAME} bluetooth_SDP_ServiceAttributeRequest

Change-Id: Idd8d7fcc5ff807af03d4d5f50a8927501f402ac9
Reviewed-on: https://chromium-review.googlesource.com/203560
Tested-by: Artem Rakhov <arakhov@chromium.org>
Reviewed-by: Scott James Remnant <keybuk@chromium.org>
Reviewed-by: Prashanth B <beeps@chromium.org>
Reviewed-by: Arman Uguray <armansito@chromium.org>
Commit-Queue: Artem Rakhov <arakhov@chromium.org>
/external/autotest/client/common_lib/cros/bluetooth/bluetooth_sdp_socket.py
5e561e1a0f40647dbc5b5b6994952881d28d8f17 06-Jun-2014 Artem Rakhov <arakhov@chromium.org> Bluetooth SDP autotest: tests for existing attributes

This CL adds the support for continuation state in Service Attribute
Requests and a test for it. It also adds some tests for existing
attributes of existing services.

BUG=chromium:329044
TEST=test_that --board ${BOARD} ${HOSTNAME} bluetooth_SDP_ServiceAttributeRequest

Change-Id: Ica7626be9b46ebb238e169ee0efea091761a35d1
Reviewed-on: https://chromium-review.googlesource.com/202788
Tested-by: Artem Rakhov <arakhov@chromium.org>
Reviewed-by: Fang Deng <fdeng@chromium.org>
Reviewed-by: Arman Uguray <armansito@chromium.org>
Commit-Queue: Artem Rakhov <arakhov@chromium.org>
/external/autotest/client/common_lib/cros/bluetooth/bluetooth_sdp_socket.py
ebf3df32a3bfa32782ffdc8e0ce5bf6d65734d5d 01-Apr-2014 Artem Rakhov <arakhov@chromium.org> Bluetooth SDP autotest: basic Service Attribute Request

Service Attribute Request is used to retrieve specified attribute values from
a specific service record. The service record handle of the desired service
record and a list of desired attribute IDs to be retrieved from that service
record are supplied as parameters.

This CL adds Service Attribute Request support to SDP Socket class,
as well as to all classes that are used to expose it's methods for autotest.
The CL also implements the very basic test for this type of request,
which is 'TP/SERVER/SA/BV-01-C' from SDP test specification.

BUG=chromium:329044
TEST=test_that --board ${BOARD} ${HOSTNAME} bluetooth_SDP_ServiceAttributeRequest

Change-Id: I4b236a331fea661584c396a2c3ff937bf91c2102
Reviewed-on: https://chromium-review.googlesource.com/196404
Tested-by: Artem Rakhov <arakhov@chromium.org>
Reviewed-by: Scott James Remnant <keybuk@chromium.org>
Commit-Queue: Artem Rakhov <arakhov@chromium.org>
/external/autotest/client/common_lib/cros/bluetooth/bluetooth_sdp_socket.py
f42dc83292497e95cf4f41c6463f697b840826e2 03-Mar-2014 Artem Rakhov <arakhov@chromium.org> Bluetooth SDP autotest: Service Search Request with invalid syntax

This CL adds the last test for SDP Service Search Request, which checks if
response for request with invalid syntax is correct. It is implementation of
test case 'TP/SERVER/SS/BI-02-C' from SIG Bluetooth Test Specification.
However, the specification itself doesn't specify the format of invalid request
(it's not clear, what exactly should be invalid). So testers are free to send
any invalid request. This implementation sends requests without continuation
state parameter, so that the requests are invalid, but still are very close to
valid format. The latest BlueZ unit-tests also do the same invalid requests.

BUG=chromium:329044
TEST=test_that --board ${BOARD} ${HOSTNAME} bluetooth_SDP_ServiceSearchRequestBasic

Change-Id: I4fbd9eae20d440d75849286cdd80ac157e4bb1bb
Reviewed-on: https://chromium-review.googlesource.com/189243
Tested-by: Artem Rakhov <arakhov@chromium.org>
Reviewed-by: Scott James Remnant <keybuk@chromium.org>
Commit-Queue: Artem Rakhov <arakhov@chromium.org>
/external/autotest/client/common_lib/cros/bluetooth/bluetooth_sdp_socket.py
ba130384b49108dcfa91ad7751b825c0d0128963 27-Feb-2014 Artem Rakhov <arakhov@chromium.org> Bluetooth SDP autotest: Service Search Request with invalid PDU size

Added new SDP autotest, which implements test case 'TP/SERVER/SS/BI-01-C' from
Bluetooth SIG Test Spec. It verifies that the IUT behaves correctly when it
receives a request with invalid PDU size. The correct behaviour is to respond
with SDP_ErrorResponse PDU, with the error code 0x0004 (Invalid PDU Size).
In order to support invalid PDU size, forced_pdu_size parameter was added to all
the service_search_request() methods (equals None by default, which means
"calculate from resulting sequence's size").

This CL also adds handling of error responses to BluetoothSDPSocket class: so
service_search_request() method should return error code (as int) in case of
error, and list of found services' records otherwise.

BUG=chromium:329044
TEST=test_that --board ${BOARD} ${HOSTNAME} bluetooth_SDP_ServiceSearchRequestBasic

Change-Id: I93c072b8986498b1464d336fd51f47312d359f09
Reviewed-on: https://chromium-review.googlesource.com/188118
Tested-by: Artem Rakhov <arakhov@chromium.org>
Reviewed-by: Scott James Remnant <keybuk@chromium.org>
Commit-Queue: Artem Rakhov <arakhov@chromium.org>
/external/autotest/client/common_lib/cros/bluetooth/bluetooth_sdp_socket.py
ca443b518bfe8457c73d9a0cddadf8f6972a4c64 11-Jan-2014 Artem Rakhov <arakhov@chromium.org> Bluetooth SDP autotest: support for 16, 32, 128 UUIDs

Bluetooth Test Specification document says that the tests shall be performed
using 128 bits UUID, 32 bits UUID and 16 bits UUID. So this CL adds an optional
parameter called preferred_size for Service Search Request method. For every
single UUID, if it fits into preferred_size bits, then this size will be used
for request. Otherwise the UUID will be casted to 128 bits format.

BUG=chromium:329044
TEST=use the following command to run it:
test_that --board ${BOARD} ${HOSTNAME} bluetooth_SDP_ServiceSearchRequestBasic
Probably, 'failed_attempts' variable will always be 0

Change-Id: I3dfb3539578182f933c4c650e564c03a97cd8916
Reviewed-on: https://chromium-review.googlesource.com/182251
Tested-by: Artem Rakhov <arakhov@chromium.org>
Reviewed-by: Scott James Remnant <keybuk@chromium.org>
Commit-Queue: Artem Rakhov <arakhov@chromium.org>
/external/autotest/client/common_lib/cros/bluetooth/bluetooth_sdp_socket.py
c5a46214e6c984f93a9a163fcbf36d814a71280b 26-Nov-2013 Artem Rakhov <arakhov@chromium.org> BluetoothSDPSocket class

BluetoothSDPSocket wraps the btsocket.socket() class to implement the
necessary send and receive methods for the SDP protocol, and to provide
the interface for different types of requests. Only the Service Search
Request type is supported so far.

BUG=none
TEST=create an instance of BluetoothSDPSocket and run different service
search requests

Change-Id: Ie9d0818f9492f32036a359f254ee14a6dbd4f943
Reviewed-on: https://chromium-review.googlesource.com/177950
Reviewed-by: Dan Shi <dshi@chromium.org>
Tested-by: Artem Rakhov <arakhov@chromium.org>
Commit-Queue: Artem Rakhov <arakhov@chromium.org>
/external/autotest/client/common_lib/cros/bluetooth/bluetooth_sdp_socket.py