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

Issue 719827 link

Starred by 1 user

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac
Pri: 2
Type: Feature

Blocked on:
issue 821496
issue 824704

Blocking:
issue 569709



Sign in to add a comment

bluetooth: Implement FakeBluetoothChooser

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

Issue description

Allow tests to receive events that a Device Chooser would as well as simulate Chooser actions e.g. restart scan.
 

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

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

Comment 2 by bugdroid1@chromium.org, Mar 10 2018

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

commit f193d0287c82d2ebf589556493d134fde9edefde
Author: Ovidio Henriquez <odejesush@chromium.org>
Date: Sat Mar 10 06:22:22 2018

bluetooth: Add discovery sessions to FakeCentral

This change adds discovery session support to FakeCentral in order to
allow Bluetooth scanning to be simulated.

BUG=719826,719827

Change-Id: Ia5150cc14924e9e03e5361797068db6718b26595
Reviewed-on: https://chromium-review.googlesource.com/954231
Reviewed-by: Giovanni Ortuño Urquidi <ortuno@chromium.org>
Commit-Queue: Ovidio Henriquez <odejesush@chromium.org>
Cr-Commit-Position: refs/heads/master@{#542349}
[modify] https://crrev.com/f193d0287c82d2ebf589556493d134fde9edefde/device/bluetooth/test/fake_central.cc
[modify] https://crrev.com/f193d0287c82d2ebf589556493d134fde9edefde/device/bluetooth/test/fake_central.h

Blockedon: 821496
Project Member

Comment 4 by bugdroid1@chromium.org, Mar 15 2018

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

commit d42a5bc88d98edf9aafe5dd52e8041f478b15391
Author: Ovidio Henriquez <odejesush@chromium.org>
Date: Thu Mar 15 20:16:45 2018

bluetooth: FakeBluetoothChooser stub impl.

This change adds a new FakeBluetoothChooser interface stub to expand on.
The design for this class is detailed in the following document:
https://docs.google.com/document/d/1XFl_4ZAgO8ddM6U53A9AfUuZeWgJnlYD5wtbXqEpzeg

BUG=719827

Change-Id: I34169ce62dd5b35796639b7643d899b8315cc4c7
Reviewed-on: https://chromium-review.googlesource.com/909726
Commit-Queue: Ovidio Henriquez <odejesush@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Conley Owens <cco3@chromium.org>
Reviewed-by: Giovanni Ortuño Urquidi <ortuno@chromium.org>
Cr-Commit-Position: refs/heads/master@{#543479}
[modify] https://crrev.com/d42a5bc88d98edf9aafe5dd52e8041f478b15391/content/shell/BUILD.gn
[modify] https://crrev.com/d42a5bc88d98edf9aafe5dd52e8041f478b15391/content/shell/browser/content_shell_browser_manifest_overlay.json
[modify] https://crrev.com/d42a5bc88d98edf9aafe5dd52e8041f478b15391/content/shell/browser/layout_test/blink_test_controller.cc
[add] https://crrev.com/d42a5bc88d98edf9aafe5dd52e8041f478b15391/content/shell/browser/layout_test/fake_bluetooth_chooser.cc
[add] https://crrev.com/d42a5bc88d98edf9aafe5dd52e8041f478b15391/content/shell/browser/layout_test/fake_bluetooth_chooser.h
[modify] https://crrev.com/d42a5bc88d98edf9aafe5dd52e8041f478b15391/content/shell/browser/layout_test/layout_test_content_browser_client.cc
[modify] https://crrev.com/d42a5bc88d98edf9aafe5dd52e8041f478b15391/content/shell/browser/layout_test/layout_test_content_browser_client.h
[modify] https://crrev.com/d42a5bc88d98edf9aafe5dd52e8041f478b15391/content/shell/common/layout_test/OWNERS
[add] https://crrev.com/d42a5bc88d98edf9aafe5dd52e8041f478b15391/content/shell/common/layout_test/fake_bluetooth_chooser.mojom
[add] https://crrev.com/d42a5bc88d98edf9aafe5dd52e8041f478b15391/third_party/WebKit/LayoutTests/bluetooth/requestDevice/chooser/fake-bluetooth-chooser-test.html
[modify] https://crrev.com/d42a5bc88d98edf9aafe5dd52e8041f478b15391/third_party/WebKit/LayoutTests/external/wpt/bluetooth/resources/bluetooth-helpers.js
[add] https://crrev.com/d42a5bc88d98edf9aafe5dd52e8041f478b15391/third_party/WebKit/LayoutTests/external/wpt/resources/chromium/fake_bluetooth_chooser.mojom.js
[add] https://crrev.com/d42a5bc88d98edf9aafe5dd52e8041f478b15391/third_party/WebKit/LayoutTests/external/wpt/resources/chromium/fake_bluetooth_chooser.mojom.js.headers
[modify] https://crrev.com/d42a5bc88d98edf9aafe5dd52e8041f478b15391/third_party/WebKit/LayoutTests/external/wpt/resources/chromium/web-bluetooth-test.js

Project Member

Comment 6 by bugdroid1@chromium.org, Mar 28 2018

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

commit 188adfb51a7c4ca1ab0cbeaffdec4f7cd76857f7
Author: Ovidio Henriquez <odejesush@chromium.org>
Date: Wed Mar 28 16:07:28 2018

bluetooth: FakeBluetoothChooser impl.

Implements the interfaces that FakeBluetoothChooser overrides. The
mojom::FakeBluetoothChooser overrides are implemented by running
|event_handler_| with the appropriate arguments. The BluetoothChooser
overrides do nothing at the moment, since the base class is only meant
to update the chooser user interface.

This change also begins to partially convert a Bluetooth chooser test to test
the interface and deletes the temporary tests that were created to test this
API.

BUG=719827,719826, 824704 

Change-Id: I56a04e6bdb2de38d9163d7bc350db578deeb9ba3
Reviewed-on: https://chromium-review.googlesource.com/962983
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Conley Owens <cco3@chromium.org>
Reviewed-by: Giovanni Ortuño Urquidi <ortuno@chromium.org>
Commit-Queue: Ovidio Henriquez <odejesush@chromium.org>
Cr-Commit-Position: refs/heads/master@{#546509}
[modify] https://crrev.com/188adfb51a7c4ca1ab0cbeaffdec4f7cd76857f7/content/shell/browser/layout_test/fake_bluetooth_chooser.cc
[modify] https://crrev.com/188adfb51a7c4ca1ab0cbeaffdec4f7cd76857f7/content/shell/browser/layout_test/fake_bluetooth_chooser.h
[modify] https://crrev.com/188adfb51a7c4ca1ab0cbeaffdec4f7cd76857f7/content/shell/common/layout_test/fake_bluetooth_chooser.mojom
[modify] https://crrev.com/188adfb51a7c4ca1ab0cbeaffdec4f7cd76857f7/device/bluetooth/bluetooth_device.h
[modify] https://crrev.com/188adfb51a7c4ca1ab0cbeaffdec4f7cd76857f7/device/bluetooth/test/fake_central.cc
[modify] https://crrev.com/188adfb51a7c4ca1ab0cbeaffdec4f7cd76857f7/device/bluetooth/test/fake_peripheral.cc
[delete] https://crrev.com/796a52c1d07285b09a47bad7049ecaafcfb40aa0/third_party/WebKit/LayoutTests/bluetooth/requestDevice/chooser/fake-bluetooth-chooser-test.html
[delete] https://crrev.com/796a52c1d07285b09a47bad7049ecaafcfb40aa0/third_party/WebKit/LayoutTests/bluetooth/requestDevice/chooser/fake-bluetooth-simulate-advertisement-received-test.html
[modify] https://crrev.com/188adfb51a7c4ca1ab0cbeaffdec4f7cd76857f7/third_party/WebKit/LayoutTests/bluetooth/requestDevice/chooser/new-scan-device-added.html
[modify] https://crrev.com/188adfb51a7c4ca1ab0cbeaffdec4f7cd76857f7/third_party/WebKit/LayoutTests/external/wpt/bluetooth/resources/bluetooth-helpers.js
[modify] https://crrev.com/188adfb51a7c4ca1ab0cbeaffdec4f7cd76857f7/third_party/WebKit/LayoutTests/external/wpt/resources/chromium/fake_bluetooth_chooser.mojom.js
[modify] https://crrev.com/188adfb51a7c4ca1ab0cbeaffdec4f7cd76857f7/third_party/WebKit/LayoutTests/external/wpt/resources/chromium/web-bluetooth-test.js

Project Member

Comment 7 by bugdroid1@chromium.org, Mar 28 2018

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

commit 42624492cd5e80855f1dd3a5a8146b258def2c2a
Author: François Doray <fdoray@chromium.org>
Date: Wed Mar 28 19:48:22 2018

Revert "bluetooth: FakeBluetoothChooser impl."

This reverts commit 188adfb51a7c4ca1ab0cbeaffdec4f7cd76857f7.

Reason for revert:  https://crbug.com/826787 

Original change's description:
> bluetooth: FakeBluetoothChooser impl.
>
> Implements the interfaces that FakeBluetoothChooser overrides. The
> mojom::FakeBluetoothChooser overrides are implemented by running
> |event_handler_| with the appropriate arguments. The BluetoothChooser
> overrides do nothing at the moment, since the base class is only meant
> to update the chooser user interface.
>
> This change also begins to partially convert a Bluetooth chooser test to test
> the interface and deletes the temporary tests that were created to test this
> API.
>
> BUG=719827,719826, 824704 
>
> Change-Id: I56a04e6bdb2de38d9163d7bc350db578deeb9ba3
> Reviewed-on: https://chromium-review.googlesource.com/962983
> Reviewed-by: Daniel Cheng <dcheng@chromium.org>
> Reviewed-by: Conley Owens <cco3@chromium.org>
> Reviewed-by: Giovanni Ortuño Urquidi <ortuno@chromium.org>
> Commit-Queue: Ovidio Henriquez <odejesush@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#546509}

TBR=dcheng@chromium.org,cco3@chromium.org,ortuno@chromium.org,odejesush@chromium.org

Change-Id: I0597151ec5878d41ac631b72296203bc99b1f2c8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 719827, 719826,  824704 ,  826787 
Reviewed-on: https://chromium-review.googlesource.com/984299
Commit-Queue: François Doray <fdoray@chromium.org>
Reviewed-by: François Doray <fdoray@chromium.org>
Cr-Commit-Position: refs/heads/master@{#546572}
[modify] https://crrev.com/42624492cd5e80855f1dd3a5a8146b258def2c2a/content/shell/browser/layout_test/fake_bluetooth_chooser.cc
[modify] https://crrev.com/42624492cd5e80855f1dd3a5a8146b258def2c2a/content/shell/browser/layout_test/fake_bluetooth_chooser.h
[modify] https://crrev.com/42624492cd5e80855f1dd3a5a8146b258def2c2a/content/shell/common/layout_test/fake_bluetooth_chooser.mojom
[modify] https://crrev.com/42624492cd5e80855f1dd3a5a8146b258def2c2a/device/bluetooth/bluetooth_device.h
[modify] https://crrev.com/42624492cd5e80855f1dd3a5a8146b258def2c2a/device/bluetooth/test/fake_central.cc
[modify] https://crrev.com/42624492cd5e80855f1dd3a5a8146b258def2c2a/device/bluetooth/test/fake_peripheral.cc
[add] https://crrev.com/42624492cd5e80855f1dd3a5a8146b258def2c2a/third_party/WebKit/LayoutTests/bluetooth/requestDevice/chooser/fake-bluetooth-chooser-test.html
[add] https://crrev.com/42624492cd5e80855f1dd3a5a8146b258def2c2a/third_party/WebKit/LayoutTests/bluetooth/requestDevice/chooser/fake-bluetooth-simulate-advertisement-received-test.html
[modify] https://crrev.com/42624492cd5e80855f1dd3a5a8146b258def2c2a/third_party/WebKit/LayoutTests/bluetooth/requestDevice/chooser/new-scan-device-added.html
[modify] https://crrev.com/42624492cd5e80855f1dd3a5a8146b258def2c2a/third_party/WebKit/LayoutTests/external/wpt/bluetooth/resources/bluetooth-helpers.js
[modify] https://crrev.com/42624492cd5e80855f1dd3a5a8146b258def2c2a/third_party/WebKit/LayoutTests/external/wpt/resources/chromium/fake_bluetooth_chooser.mojom.js
[modify] https://crrev.com/42624492cd5e80855f1dd3a5a8146b258def2c2a/third_party/WebKit/LayoutTests/external/wpt/resources/chromium/web-bluetooth-test.js

Project Member

Comment 8 by bugdroid1@chromium.org, Mar 29 2018

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

commit 6a337f19713e049cd42969b0c909c59aff4146cd
Author: Ovidio Henriquez <odejesush@chromium.org>
Date: Thu Mar 29 05:16:26 2018

bluetooth: FakeBluetoothChooser impl.

Implements the interfaces that FakeBluetoothChooser overrides. The
mojom::FakeBluetoothChooser overrides are implemented by running
|event_handler_| with the appropriate arguments. The BluetoothChooser
overrides do nothing at the moment, since the base class is only meant
to update the chooser user interface.

This change also begins to partially convert a Bluetooth chooser test to test
the interface and deletes the temporary tests that were created to test this
API.

This change reverts commit 42624492cd5e80855f1dd3a5a8146b258def2c2a, which
reverted the original change. The original change caused the
new-scan-device-added.html test to fail because of a Mojo validation error
resulting from not updating the
third_party/.../external/wpt/resources/chromium/fake_bluetooth_chooser.mojom.js
file needed by the test.

Bug: 719827, 719826,  824704 ,  826787 
Change-Id: I5e5cce7e809b4d71216c2d074a417ea822d5e527
Reviewed-on: https://chromium-review.googlesource.com/985195
Commit-Queue: Ovidio Henriquez <odejesush@chromium.org>
Reviewed-by: Giovanni Ortuño Urquidi <ortuno@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#546729}
[modify] https://crrev.com/6a337f19713e049cd42969b0c909c59aff4146cd/content/shell/browser/layout_test/fake_bluetooth_chooser.cc
[modify] https://crrev.com/6a337f19713e049cd42969b0c909c59aff4146cd/content/shell/browser/layout_test/fake_bluetooth_chooser.h
[modify] https://crrev.com/6a337f19713e049cd42969b0c909c59aff4146cd/content/shell/common/layout_test/fake_bluetooth_chooser.mojom
[modify] https://crrev.com/6a337f19713e049cd42969b0c909c59aff4146cd/device/bluetooth/bluetooth_device.h
[modify] https://crrev.com/6a337f19713e049cd42969b0c909c59aff4146cd/device/bluetooth/test/fake_central.cc
[modify] https://crrev.com/6a337f19713e049cd42969b0c909c59aff4146cd/device/bluetooth/test/fake_peripheral.cc
[delete] https://crrev.com/fad0f0ae8508c3df9a7eed21de48065117c7a753/third_party/WebKit/LayoutTests/bluetooth/requestDevice/chooser/fake-bluetooth-chooser-test.html
[delete] https://crrev.com/fad0f0ae8508c3df9a7eed21de48065117c7a753/third_party/WebKit/LayoutTests/bluetooth/requestDevice/chooser/fake-bluetooth-simulate-advertisement-received-test.html
[modify] https://crrev.com/6a337f19713e049cd42969b0c909c59aff4146cd/third_party/WebKit/LayoutTests/bluetooth/requestDevice/chooser/new-scan-device-added.html
[modify] https://crrev.com/6a337f19713e049cd42969b0c909c59aff4146cd/third_party/WebKit/LayoutTests/external/wpt/bluetooth/resources/bluetooth-helpers.js
[modify] https://crrev.com/6a337f19713e049cd42969b0c909c59aff4146cd/third_party/WebKit/LayoutTests/external/wpt/resources/chromium/fake_bluetooth_chooser.mojom.js
[modify] https://crrev.com/6a337f19713e049cd42969b0c909c59aff4146cd/third_party/WebKit/LayoutTests/external/wpt/resources/chromium/web-bluetooth-test.js

Project Member

Comment 9 by bugdroid1@chromium.org, Mar 29 2018

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

commit d04a1e5256a9fdd78f40cbdb73355408614e14f3
Author: François Doray <fdoray@chromium.org>
Date: Thu Mar 29 16:27:57 2018

Revert "bluetooth: FakeBluetoothChooser impl."

This reverts commit 6a337f19713e049cd42969b0c909c59aff4146cd.

Reason for revert:  https://crbug.com/824704 

These tests are failing:

external/wpt/bluetooth/server/getPrimaryServices/blocklisted-services-with-uuid.https.html
external/wpt/bluetooth/server/getPrimaryServices/blocklisted-services.https.html
external/wpt/bluetooth/service/getCharacteristic/gen-blocklisted-characteristic.https.html
external/wpt/bluetooth/service/getCharacteristics/blocklisted-characteristics.https.html
external/wpt/bluetooth/service/getCharacteristics/gen-blocklisted-characteristic-with-uuid.https.html

Original change's description:
> bluetooth: FakeBluetoothChooser impl.
> 
> Implements the interfaces that FakeBluetoothChooser overrides. The
> mojom::FakeBluetoothChooser overrides are implemented by running
> |event_handler_| with the appropriate arguments. The BluetoothChooser
> overrides do nothing at the moment, since the base class is only meant
> to update the chooser user interface.
> 
> This change also begins to partially convert a Bluetooth chooser test to test
> the interface and deletes the temporary tests that were created to test this
> API.
> 
> This change reverts commit 42624492cd5e80855f1dd3a5a8146b258def2c2a, which
> reverted the original change. The original change caused the
> new-scan-device-added.html test to fail because of a Mojo validation error
> resulting from not updating the
> third_party/.../external/wpt/resources/chromium/fake_bluetooth_chooser.mojom.js
> file needed by the test.
> 
> Bug: 719827, 719826,  824704 ,  826787 
> Change-Id: I5e5cce7e809b4d71216c2d074a417ea822d5e527
> Reviewed-on: https://chromium-review.googlesource.com/985195
> Commit-Queue: Ovidio Henriquez <odejesush@chromium.org>
> Reviewed-by: Giovanni Ortuño Urquidi <ortuno@chromium.org>
> Reviewed-by: Daniel Cheng <dcheng@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#546729}

TBR=dcheng@chromium.org,cco3@chromium.org,ortuno@chromium.org,odejesush@chromium.org

Change-Id: Ie2ef2af1ae74e8dd5ca01441027adaa59e6e0c0f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 719827, 719826,  824704 ,  826787 
Reviewed-on: https://chromium-review.googlesource.com/986592
Reviewed-by: François Doray <fdoray@chromium.org>
Commit-Queue: François Doray <fdoray@chromium.org>
Cr-Commit-Position: refs/heads/master@{#546851}
[modify] https://crrev.com/d04a1e5256a9fdd78f40cbdb73355408614e14f3/content/shell/browser/layout_test/fake_bluetooth_chooser.cc
[modify] https://crrev.com/d04a1e5256a9fdd78f40cbdb73355408614e14f3/content/shell/browser/layout_test/fake_bluetooth_chooser.h
[modify] https://crrev.com/d04a1e5256a9fdd78f40cbdb73355408614e14f3/content/shell/common/layout_test/fake_bluetooth_chooser.mojom
[modify] https://crrev.com/d04a1e5256a9fdd78f40cbdb73355408614e14f3/device/bluetooth/bluetooth_device.h
[modify] https://crrev.com/d04a1e5256a9fdd78f40cbdb73355408614e14f3/device/bluetooth/test/fake_central.cc
[modify] https://crrev.com/d04a1e5256a9fdd78f40cbdb73355408614e14f3/device/bluetooth/test/fake_peripheral.cc
[add] https://crrev.com/d04a1e5256a9fdd78f40cbdb73355408614e14f3/third_party/WebKit/LayoutTests/bluetooth/requestDevice/chooser/fake-bluetooth-chooser-test.html
[add] https://crrev.com/d04a1e5256a9fdd78f40cbdb73355408614e14f3/third_party/WebKit/LayoutTests/bluetooth/requestDevice/chooser/fake-bluetooth-simulate-advertisement-received-test.html
[modify] https://crrev.com/d04a1e5256a9fdd78f40cbdb73355408614e14f3/third_party/WebKit/LayoutTests/bluetooth/requestDevice/chooser/new-scan-device-added.html
[modify] https://crrev.com/d04a1e5256a9fdd78f40cbdb73355408614e14f3/third_party/WebKit/LayoutTests/external/wpt/bluetooth/resources/bluetooth-helpers.js
[modify] https://crrev.com/d04a1e5256a9fdd78f40cbdb73355408614e14f3/third_party/WebKit/LayoutTests/external/wpt/resources/chromium/fake_bluetooth_chooser.mojom.js
[modify] https://crrev.com/d04a1e5256a9fdd78f40cbdb73355408614e14f3/third_party/WebKit/LayoutTests/external/wpt/resources/chromium/web-bluetooth-test.js

Blockedon: 824704

Sign in to add a comment