Add a test to execute CarPropertyService.registerListener for all the registered properties.

- Spy on CarPropertyService and capture property IDs passed to registerListener call so the test can verify whether these IDs match the expected IDs. If not, the test throws errors.
- The default values for the expected properties will trigger listener.onEvent() in CarPropertyService.registerListener thus not properly initialized listeners will crash (eg: b/137761936#comment2) during presubmit.

Bug: 139063341
Test: Reverted ag/9110456 and confirmed the test is reproducing the crash. And also verified that the test complains when the regsitered properties are not assigned default values.

Change-Id: I5f09a46602b997463998f1b2966b8c20b34895a5
3 files changed
tree: 104af191a2850878eb62fa50e22b0a91df28ab5e
  1. car-bugreportd/
  2. car-default-input-service/
  3. car-lib/
  4. car-maps-placeholder/
  5. car-systemtest-lib/
  6. car-test-lib/
  7. car-usb-handler/
  8. car_product/
  9. computepipe/
  10. EncryptionRunner/
  11. evs/
  12. FrameworkPackageStubs/
  13. obd2-lib/
  14. procfs-inspector/
  15. service/
  16. tests/
  17. tools/
  18. user/
  19. vehicle-hal-support-lib/
  20. .clang-format
  21. .gitignore
  22. Android.mk
  23. CleanSpec.mk
  24. OWNERS
  25. PREUPLOAD.cfg
  26. README.md
README.md

Native (C++) code format is required to be compatible with .clang-format file. Run

git clang-format --style=file --extension='h,cpp,cc' HEAD~

Note that clang-format is not desirable for Android java files. Therefore the command line above is limited to specific extensions.