Merge remote-tracking branch 'aosp/upstream-main' am: df1127a803 am: 825bb42748 am: 3910f2dafc am: 5e1ba2da76

Original change: https://android-review.googlesource.com/c/platform/external/pandora/avatar/+/2458728

Change-Id: If4a088ced111bb219798c03afb86f9d732ea258b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
tree: 28ef172f84d305e00912c1339d3232a828e65d81
  1. avatar/
  2. examples/
  3. third-party/
  4. .gitignore
  5. Android.bp
  6. CONTRIBUTING.md
  7. LICENSE
  8. METADATA
  9. MODULE_LICENSE_APACHE2
  10. OWNERS
  11. pyproject.toml
  12. README.md
README.md

Avatar

Avatar aims to provide a scalable multi-platform Bluetooth testing tool capable of running any Bluetooth test cases virtually and physically. It aims to complete PTS-bot in the Pandora testing suite.

Install

git submodule update --init
python -m venv venv
source venv/bin/activate.fish # or any other shell
pip install [-e] bt-test-interfaces/python
pip install [-e] third-party/bumble
pip install [-e] .

Rebuild gRPC Bluetooth test interfaces

pip install grpcio-tools==1.46.3
./bt-test-interfaces/python/_build/grpc.py

Usage

python examples/example.py -c examples/simulated_bumble_android.yml --verbose

Development

  1. Make sure to have a root-canal instance running somewhere.
root-canal
  1. Run the example using Bumble vs Bumble config file. The default 6402 HCI port of root-canal may be changed in this config file.
python examples/example.py -c examples/simulated_bumble_bumble.yml --verbose
  1. Lint with pyright and mypy
pyright
mypy
  1. Format & imports style
black avatar/ examples/
isort avatar/ examples/