New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 719816 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner: ----
Closed: Sep 19
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac
Pri: 2
Type: Feature

Blocking:
issue 569709



Sign in to add a comment

bluetooth: Implement FakePeripheral.addFakeService/removeFakeService/simulateGATTDiscoveryComplete

Project Member Reported by ortuno@chromium.org, May 9 2017

Issue description

Function to allow tests to simulate services and when they are discovered.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Jun 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1be2d90f389c960e6e452d3e4f465d8659050e6e

commit 1be2d90f389c960e6e452d3e4f465d8659050e6e
Author: Giovanni Ortuño Urquidi <ortuno@chromium.org>
Date: Wed Jun 07 07:15:15 2017

bluetooth: Implement setNextGATTDiscoveryResponse and convert some tests

Sets the next GATT Discovery request response for peripheral with
|address| to |code|. |code| could be an HCI Error Code from
BT 4.2 Vol 2 Part D 1.3 List Of Error Codes or a number outside that range
returned by specific platforms e.g. Android returns 0x101 to signal a GATT
failure
https://developer.android.com/reference/android/bluetooth/BluetoothGatt.html#GATT_FAILURE

Bug:  719816 
Change-Id: I04cc4f1049747f2aa00393fe74574b098d14cc2b
Reviewed-on: https://chromium-review.googlesource.com/523702
Reviewed-by: Vincent Scheib <scheib@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Commit-Queue: Giovanni Ortuño Urquidi <ortuno@chromium.org>
Cr-Commit-Position: refs/heads/master@{#477571}
[modify] https://crrev.com/1be2d90f389c960e6e452d3e4f465d8659050e6e/device/bluetooth/public/interfaces/test/fake_bluetooth.mojom
[modify] https://crrev.com/1be2d90f389c960e6e452d3e4f465d8659050e6e/device/bluetooth/test/fake_central.cc
[modify] https://crrev.com/1be2d90f389c960e6e452d3e4f465d8659050e6e/device/bluetooth/test/fake_central.h
[modify] https://crrev.com/1be2d90f389c960e6e452d3e4f465d8659050e6e/device/bluetooth/test/fake_peripheral.cc
[modify] https://crrev.com/1be2d90f389c960e6e452d3e4f465d8659050e6e/device/bluetooth/test/fake_peripheral.h
[modify] https://crrev.com/1be2d90f389c960e6e452d3e4f465d8659050e6e/third_party/WebKit/LayoutTests/bluetooth/requestDevice/acceptAllDevices/optional-services-missing.html
[modify] https://crrev.com/1be2d90f389c960e6e452d3e4f465d8659050e6e/third_party/WebKit/LayoutTests/bluetooth/requestDevice/blocklisted-service-in-optionalServices.html
[modify] https://crrev.com/1be2d90f389c960e6e452d3e4f465d8659050e6e/third_party/WebKit/LayoutTests/resources/bluetooth/bluetooth-helpers.js
[modify] https://crrev.com/1be2d90f389c960e6e452d3e4f465d8659050e6e/third_party/WebKit/LayoutTests/resources/bluetooth/web-bluetooth-test.js

Project Member

Comment 2 by bugdroid1@chromium.org, Jun 13 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/26a95e626b8ae7d992885a254faaf43bc383f0cf

commit 26a95e626b8ae7d992885a254faaf43bc383f0cf
Author: Giovanni Ortuño Urquidi <ortuno@chromium.org>
Date: Tue Jun 13 03:28:45 2017

bluetooth: Convert getPrimaryService(s) tests to new mocks

The majority of our tests were based on services being discovered already.
But services being discovered already is not that common in practice and
requires quite a bit of setup.

Changes tests to use the new mocks which don't have services discovered
by default.

Also adds a new set of tests for when services have already been discovered.

We perform the following steps for tests that have a
delayed-discovery-* variant:

1. Add a new discovery-complete-[test-case].js test
2. Remove the delayed-discovery-[test-case].js test
3. Convert [test-case].js to use the new mocks.

Bug:  719816 
Change-Id: I508738b919880dde8f2a6059b6b5ca021ced1c66
Reviewed-on: https://chromium-review.googlesource.com/526875
Commit-Queue: Giovanni Ortuño Urquidi <ortuno@chromium.org>
Reviewed-by: Vincent Scheib <scheib@chromium.org>
Cr-Commit-Position: refs/heads/master@{#478888}
[delete] https://crrev.com/2fc3d053221101434dcb5049c3cc90dd9c15d73a/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/delayed-discovery-no-permission-absent-service.js
[delete] https://crrev.com/2fc3d053221101434dcb5049c3cc90dd9c15d73a/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/delayed-discovery-no-permission-for-any-service.js
[delete] https://crrev.com/2fc3d053221101434dcb5049c3cc90dd9c15d73a/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/delayed-discovery-service-not-found.js
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/disconnect-called-before.js
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/disconnect-called-during-error.js
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/disconnected-device.js
[add] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/discovery-complete-no-permission-absent-service.js
[add] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/discovery-complete-service-not-found.js
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/garbage-collection-ran-during-error.js
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/no-permission-absent-service.js
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/service-not-found.js
[delete] https://crrev.com/2fc3d053221101434dcb5049c3cc90dd9c15d73a/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-delayed-discovery-no-permission-for-any-service.html
[delete] https://crrev.com/2fc3d053221101434dcb5049c3cc90dd9c15d73a/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-delayed-discovery-service-not-found.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-disconnect-called-before.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-disconnect-called-during-error.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-disconnected-device.html
[rename] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-discovery-complete-no-permission-absent-service.html
[add] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-discovery-complete-service-not-found.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-garbage-collection-ran-during-error.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-no-permission-absent-service.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-service-not-found.html
[delete] https://crrev.com/2fc3d053221101434dcb5049c3cc90dd9c15d73a/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-delayed-discovery-no-permission-absent-service-with-uuid.html
[delete] https://crrev.com/2fc3d053221101434dcb5049c3cc90dd9c15d73a/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-delayed-discovery-no-permission-for-any-service-with-uuid.html
[delete] https://crrev.com/2fc3d053221101434dcb5049c3cc90dd9c15d73a/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-delayed-discovery-no-permission-for-any-service.html
[delete] https://crrev.com/2fc3d053221101434dcb5049c3cc90dd9c15d73a/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-delayed-discovery-service-not-found-with-uuid.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnect-called-before-with-uuid.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnect-called-before.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-error-with-uuid.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-error.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnected-device-with-uuid.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnected-device.html
[copy] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-discovery-complete-no-permission-absent-service-with-uuid.html
[add] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-discovery-complete-service-not-found-with-uuid.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-error-with-uuid.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-error.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-no-permission-absent-service-with-uuid.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-service-not-found-with-uuid.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/services-not-found.html
[modify] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/resources/bluetooth/bluetooth-helpers.js
[add] https://crrev.com/26a95e626b8ae7d992885a254faaf43bc383f0cf/third_party/WebKit/LayoutTests/resources/bluetooth/health-thermometer-iframe.html

Project Member

Comment 3 by bugdroid1@chromium.org, Jun 16 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3b57fad232eae8f1cdc8868cb858b60f908091b7

commit 3b57fad232eae8f1cdc8868cb858b60f908091b7
Author: Giovanni Ortuño Urquidi <ortuno@chromium.org>
Date: Fri Jun 16 04:12:27 2017

bluetooth: Implement AddFakeService and convert tests

Adds a fake GATT Service with |uuid| to be discovered when discovering
the peripheral's GATT Attributes. Returns a FakeRemoteGATTService
corresponding to this service. |uuid| should be a BluetoothServiceUUIDs
https://webbluetoothcg.github.io/web-bluetooth/#typedefdef-bluetoothserviceuuid

Bug:  719816 
Change-Id: I7192509b94fcc3921c4d9e8d7117dfd325a79c7e
Reviewed-on: https://chromium-review.googlesource.com/527719
Commit-Queue: Giovanni Ortuño Urquidi <ortuno@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Vincent Scheib <scheib@chromium.org>
Cr-Commit-Position: refs/heads/master@{#479943}
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/device/bluetooth/BUILD.gn
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/device/bluetooth/public/interfaces/test/fake_bluetooth.mojom
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/device/bluetooth/test/fake_central.cc
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/device/bluetooth/test/fake_central.h
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/device/bluetooth/test/fake_peripheral.cc
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/device/bluetooth/test/fake_peripheral.h
[add] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/device/bluetooth/test/fake_remote_gatt_service.cc
[add] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/device/bluetooth/test/fake_remote_gatt_service.h
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/disconnect-called-during-success.js
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/disconnect-invalidates-objects.js
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/garbage-collection-ran-during-success.js
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/get-different-service-after-reconnection.js
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/get-same-object.js
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/no-permission-present-service.js
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-disconnect-called-during-success.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-disconnect-invalidates-objects.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-garbage-collection-ran-during-success.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-get-different-service-after-reconnection.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-get-same-object.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-no-permission-present-service.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/service-found.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/two-iframes-from-same-origin.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/blocklisted-services-with-uuid.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/blocklisted-services.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-success-with-uuid.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-success.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects-with-uuid.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-success-with-uuid.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-success.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-get-different-service-after-reconnection-with-uuid.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-get-different-service-after-reconnection.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-get-same-object-with-uuid.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-get-same-object.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-no-permission-present-service-with-uuid.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/services-found-with-uuid.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/services-found.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/service/device-same-from-2-services.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/bluetooth/service/device-same-object.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/resources/bluetooth/bluetooth-helpers.js
[rename] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/resources/bluetooth/health-thermometer-two-iframes.html
[modify] https://crrev.com/3b57fad232eae8f1cdc8868cb858b60f908091b7/third_party/WebKit/LayoutTests/resources/bluetooth/web-bluetooth-test.js

Project Member

Comment 4 by bugdroid1@chromium.org, Jun 17 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0

commit 09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0
Author: Daniel Cheng <dcheng@chromium.org>
Date: Sat Jun 17 07:31:28 2017

Revert "bluetooth: Implement AddFakeService and convert tests"

This reverts commit 3b57fad232eae8f1cdc8868cb858b60f908091b7.

Reason for revert:
uninitialized read failures on WebKit Linux Trusty MSAN

Original change's description:
> bluetooth: Implement AddFakeService and convert tests
> 
> Adds a fake GATT Service with |uuid| to be discovered when discovering
> the peripheral's GATT Attributes. Returns a FakeRemoteGATTService
> corresponding to this service. |uuid| should be a BluetoothServiceUUIDs
> https://webbluetoothcg.github.io/web-bluetooth/#typedefdef-bluetoothserviceuuid
> 
> Bug:  719816 
> Change-Id: I7192509b94fcc3921c4d9e8d7117dfd325a79c7e
> Reviewed-on: https://chromium-review.googlesource.com/527719
> Commit-Queue: Giovanni Ortuño Urquidi <ortuno@chromium.org>
> Reviewed-by: Daniel Cheng <dcheng@chromium.org>
> Reviewed-by: Vincent Scheib <scheib@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#479943}

TBR=dcheng@chromium.org,scheib@chromium.org,ortuno@chromium.org

Bug:  719816 
Change-Id: I63af8a28dc2abb0752c223be4691452dba066e85
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/539096
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#480280}
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/device/bluetooth/BUILD.gn
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/device/bluetooth/public/interfaces/test/fake_bluetooth.mojom
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/device/bluetooth/test/fake_central.cc
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/device/bluetooth/test/fake_central.h
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/device/bluetooth/test/fake_peripheral.cc
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/device/bluetooth/test/fake_peripheral.h
[delete] https://crrev.com/fa127bfc5eca88313e2751b75b14cacff3e00a7f/device/bluetooth/test/fake_remote_gatt_service.cc
[delete] https://crrev.com/fa127bfc5eca88313e2751b75b14cacff3e00a7f/device/bluetooth/test/fake_remote_gatt_service.h
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/disconnect-called-during-success.js
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/disconnect-invalidates-objects.js
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/garbage-collection-ran-during-success.js
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/get-different-service-after-reconnection.js
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/get-same-object.js
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/no-permission-present-service.js
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-disconnect-called-during-success.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-disconnect-invalidates-objects.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-garbage-collection-ran-during-success.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-get-different-service-after-reconnection.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-get-same-object.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-no-permission-present-service.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/service-found.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/two-iframes-from-same-origin.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/blocklisted-services-with-uuid.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/blocklisted-services.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-success-with-uuid.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-success.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects-with-uuid.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-success-with-uuid.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-success.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-get-different-service-after-reconnection-with-uuid.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-get-different-service-after-reconnection.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-get-same-object-with-uuid.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-get-same-object.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-no-permission-present-service-with-uuid.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/services-found-with-uuid.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/services-found.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/service/device-same-from-2-services.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/bluetooth/service/device-same-object.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/resources/bluetooth/bluetooth-helpers.js
[rename] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/resources/bluetooth/heart-rate-two-iframes.html
[modify] https://crrev.com/09ecdc18bd4cc2fdb6b5af94b0f0736616a53bb0/third_party/WebKit/LayoutTests/resources/bluetooth/web-bluetooth-test.js

Project Member

Comment 5 by bugdroid1@chromium.org, Jun 19 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/763aa9ed5d082f0def3f9e3fb54421fc169bef92

commit 763aa9ed5d082f0def3f9e3fb54421fc169bef92
Author: Giovanni Ortuño Urquidi <ortuno@chromium.org>
Date: Mon Jun 19 03:03:11 2017

Reland "bluetooth: Implement AddFakeService and convert tests"

This is a reland of 3b57fad232eae8f1cdc8868cb858b60f908091b7

Initializes last_service_id_ which was causing an msan crash.

TBR=dcheng, scheib

Original change's description:
> bluetooth: Implement AddFakeService and convert tests
> 
> Adds a fake GATT Service with |uuid| to be discovered when discovering
> the peripheral's GATT Attributes. Returns a FakeRemoteGATTService
> corresponding to this service. |uuid| should be a BluetoothServiceUUIDs
> https://webbluetoothcg.github.io/web-bluetooth/#typedefdef-bluetoothserviceuuid
> 
> Bug:  719816 
> Change-Id: I7192509b94fcc3921c4d9e8d7117dfd325a79c7e
> Reviewed-on: https://chromium-review.googlesource.com/527719
> Commit-Queue: Giovanni Ortuño Urquidi <ortuno@chromium.org>
> Reviewed-by: Daniel Cheng <dcheng@chromium.org>
> Reviewed-by: Vincent Scheib <scheib@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#479943}

Bug:  719816 
Change-Id: I809da7475ff4e96b1841d8a9d0cd9c514b5adce4
Reviewed-on: https://chromium-review.googlesource.com/538741
Commit-Queue: Giovanni Ortuño Urquidi <ortuno@chromium.org>
Reviewed-by: Giovanni Ortuño Urquidi <ortuno@chromium.org>
Cr-Commit-Position: refs/heads/master@{#480334}
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/device/bluetooth/BUILD.gn
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/device/bluetooth/public/interfaces/test/fake_bluetooth.mojom
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/device/bluetooth/test/fake_central.cc
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/device/bluetooth/test/fake_central.h
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/device/bluetooth/test/fake_peripheral.cc
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/device/bluetooth/test/fake_peripheral.h
[add] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/device/bluetooth/test/fake_remote_gatt_service.cc
[add] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/device/bluetooth/test/fake_remote_gatt_service.h
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/disconnect-called-during-success.js
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/disconnect-invalidates-objects.js
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/garbage-collection-ran-during-success.js
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/get-different-service-after-reconnection.js
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/get-same-object.js
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/script-tests/server/no-permission-present-service.js
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-disconnect-called-during-success.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-disconnect-invalidates-objects.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-garbage-collection-ran-during-success.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-get-different-service-after-reconnection.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-get-same-object.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/gen-no-permission-present-service.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/service-found.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryService/two-iframes-from-same-origin.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/blocklisted-services-with-uuid.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/blocklisted-services.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-success-with-uuid.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-success.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects-with-uuid.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-success-with-uuid.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-success.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-get-different-service-after-reconnection-with-uuid.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-get-different-service-after-reconnection.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-get-same-object-with-uuid.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-get-same-object.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/gen-no-permission-present-service-with-uuid.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/services-found-with-uuid.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/server/getPrimaryServices/services-found.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/service/device-same-from-2-services.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/bluetooth/service/device-same-object.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/resources/bluetooth/bluetooth-helpers.js
[rename] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/resources/bluetooth/health-thermometer-two-iframes.html
[modify] https://crrev.com/763aa9ed5d082f0def3f9e3fb54421fc169bef92/third_party/WebKit/LayoutTests/resources/bluetooth/web-bluetooth-test.js

Comment 6 by ortuno@chromium.org, Jul 11 2017

Cc: cco3@chromium.org
Owner: ----
Status: Available (was: Assigned)
Project Member

Comment 7 by bugdroid1@chromium.org, Sep 12 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f113a65c94796d2673333c12262bd9b144ffcd18

commit f113a65c94796d2673333c12262bd9b144ffcd18
Author: Conley Owens <cco3@chromium.org>
Date: Tue Sep 12 19:51:18 2017

bluetooth: Add a CCCD to the measurement interval

This change adds a CCCD (Client Characteristic Configuration Descriptor,
as defined in Vol 3, Part G, 3.3.3.3) to the measurement interval of
the fake health thermometer.  This will allow us to call
startNotifications() on the measurement interval.

BUG= 719816 

Change-Id: Ia7b515378be0c66e58c68d10451fbbd600e1c9c5
Reviewed-on: https://chromium-review.googlesource.com/663938
Commit-Queue: Conley Owens <cco3@chromium.org>
Reviewed-by: Vincent Scheib <scheib@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501365}
[modify] https://crrev.com/f113a65c94796d2673333c12262bd9b144ffcd18/third_party/WebKit/LayoutTests/resources/bluetooth/bluetooth-helpers.js

Project Member

Comment 8 by sheriffbot@chromium.org, Sep 13

Labels: Hotlist-Recharge-Cold
Status: Untriaged (was: Available)
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue.

Sorry for the inconvenience if the bug really should have been left as Available.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Status: Fixed (was: Untriaged)
It looks like all the necessary methods have been added.

Sign in to add a comment