Fix VibratorManagerService cleanup for repeating/long effects

- Update VibratorManagerService to cancel pending vibrations from the
  tear down method to prevent failing tests to skip cleanup. Also add
  the configured ramp down duration to the cleanup timeout.

- Fix flaky assertions on noteVibratorOn calls by ensuring the test has
  finished the first vibrate step before asserting on the IBatteryStats
  mock.

- Remove uses of CLEANUP_TIMEOUT_MILLIS from tests.

- Add request callback to FakeVibratorController to reduce test latency
  while waiting for vibration params.

Bug: 300415728
Bug: 300416616
Bug: 300419180
Test: atest --rerun-until-failure 1000 VibratorManagerServiceTest
Change-Id: Ie2b179243a617f74e6ad8852ab87503e0a26b96d
4 files changed