| Index: device/bluetooth/test/README.md
|
| diff --git a/device/bluetooth/README.md b/device/bluetooth/test/README.md
|
| similarity index 62%
|
| copy from device/bluetooth/README.md
|
| copy to device/bluetooth/test/README.md
|
| index f3c0ed8939fe811a3fa248b596cae8c584f85e38..df057950e85b082e00f05cc113e9ac7365b693c7 100644
|
| --- a/device/bluetooth/README.md
|
| +++ b/device/bluetooth/test/README.md
|
| @@ -1,56 +1,18 @@
|
| -# Bluetooth
|
| -
|
| -`device/bluetooth` abstracts
|
| -[Bluetooth Classic](https://en.wikipedia.org/wiki/Bluetooth) and
|
| -[Low Energy](https://en.wikipedia.org/wiki/Bluetooth_low_energy) features
|
| -across multiple platforms.
|
| -
|
| -Classic and Low Energy based profiles differ substantially. Platform
|
| -implementations may support only one or the other, even though several classes
|
| -have interfaces for both, e.g. `BluetoothAdapter` & `BluetoothDevice`.
|
| -
|
| -| | Classic | Low Energy |
|
| -|-----------|:-------:|:-----------:|
|
| -| Android | no | yes |
|
| -| Chrome OS | yes | yes |
|
| -| Linux | yes | yes |
|
| -| Mac | yes | yes |
|
| -| Windows | some | nearly |
|
| -
|
| -Chrome OS and Linux are supported via BlueZ, see `*_bluez` files.
|
| -
|
| -[Mojo](https://www.chromium.org/developers/design-documents/mojo)
|
| -interfaces in [public/interfaces](public/interfaces) have been started
|
| -but are *not* ready for production use.
|
| -
|
| -
|
| -## Maintainer History
|
| -
|
| -Initial implementation OWNERS were youngki@chromium.org, keybuk@chromium.org,
|
| -armansito@chromium.org, and rpaquay@chromium.org. They no longer contribute to
|
| -chromium fulltime. They were responsible for support for Chrome OS Bluetooth
|
| -features and the Chrome Apps APIs:
|
| -
|
| -* [chrome.bluetooth](https://developer.chrome.com/apps/bluetooth)
|
| -* [chrome.bluetoothLowEnergy](https://developer.chrome.com/apps/bluetoothLowEnergy)
|
| -* [chrome.bluetoothSocket](https://developer.chrome.com/apps/bluetoothSocket)
|
| -
|
| -Active development in 2015 & 2016 is focused on enabling GATT features for:
|
| -
|
| -* [Web Bluetooth](https://crbug.com/419413)
|
| -* Peripheral mode for Chrome OS.
|
| -
|
| -Known future work is tracked in the
|
| -[Refactoring meta issue](https://crbug.com/580406).
|
| -
|
| -
|
| -## Testing
|
| +# Testing
|
|
|
| Implementation of the Bluetooth component is tested via unittests. Client code
|
| uses Mock Bluetooth objects:
|
|
|
| +## Mojo Testing Interface Implementation
|
| +See [//public/interfaces/test/README.md](//device/bluetooth/public/interfaces/test/README.md)
|
| +for details about the interface. The current implementation of this interface
|
| +creates a fake implementation of the current non-mojo C++ Bluetooth interface.
|
| +This interface is implemented across files with a "fake_" prefix.
|
| +*This interface may be removed when a Bluetooth Mojo Service is introduced, if
|
| +Web Bluetooth remains its only client. Testing code would implement the service
|
| +as needed for tests.*
|
|
|
| -### Cross Platform Unit Tests
|
| +## Cross Platform Unit Tests
|
|
|
| New feature development uses cross platform unit tests. This reduces test code
|
| redundancy and produces consistency across all implementations.
|
| @@ -67,7 +29,7 @@ operating system APIs as possible.
|
|
|
| [More testing information](https://docs.google.com/document/d/1mBipxn1sJu6jMqP0RQZpkYXC1o601bzLCpCxwTA2yGA/edit?usp=sharing)
|
|
|
| -### Legacy Platform Specific Unit Tests
|
| +## Legacy Platform Specific Unit Tests
|
|
|
| Early code (Classic on most platforms, and Low Energy on BlueZ) was tested with
|
| platform specific unit tests, e.g. `bluetooth_bluez_unittest.cc` &
|
| @@ -79,13 +41,13 @@ place. Long term these tests should be [refactored into cross platform
|
| tests](https://crbug.com/580403).
|
|
|
|
|
| -### Mock Bluetooth Objects
|
| +## Mock Bluetooth Objects
|
|
|
| `test/mock_bluetooth_*` files provide GoogleMock based fake objects for use in
|
| client code.
|
|
|
|
|
| -### Chrome OS Blueooth Controller Tests
|
| +## Chrome OS Blueooth Controller Tests
|
|
|
| Bluetooth controller system tests generating radio signals are run and managed
|
| by the Chrome OS team. See:
|
| @@ -94,7 +56,7 @@ https://chromium.googlesource.com/chromiumos/third_party/autotest/+/master/serve
|
| https://chromium.googlesource.com/chromiumos/third_party/autotest/+/master/client/cros/bluetooth/
|
|
|
|
|
| -## Android
|
| +# Android
|
|
|
| The android implementation requires crossing from C++ to Java using
|
| [__JNI__](https://www.chromium.org/developers/design-documents/android-jni).
|
| @@ -129,10 +91,3 @@ Fake objects are controlled by `bluetooth_test_android.cc`.
|
| See also: [Class Diagram of Web Bluetooth through Bluetooth Android][Class]
|
|
|
| [Class]: https://sites.google.com/a/chromium.org/dev/developers/design-documents/bluetooth-design-docs/web-bluetooth-through-bluetooth-android-class-diagram
|
| -
|
| -
|
| -## Design Documents
|
| -
|
| -* [Bluetooth Notifications](https://docs.google.com/document/d/1guBtAnQUP8ZoZre4VQGrjR5uX0ZYxfK-lwKNeqY0-z4/edit?usp=sharing) 2016-08-26
|
| - * Web Bluetooth through Android implementation details, class diagram and
|
| - call flow.
|
|
|