diff options
| -rw-r--r-- | services/inputflinger/tests/FakeInputReaderPolicy.cpp | 15 | ||||
| -rw-r--r-- | services/inputflinger/tests/TestConstants.h | 3 |
2 files changed, 15 insertions, 3 deletions
diff --git a/services/inputflinger/tests/FakeInputReaderPolicy.cpp b/services/inputflinger/tests/FakeInputReaderPolicy.cpp index d2cb0ac3df..6099c91daf 100644 --- a/services/inputflinger/tests/FakeInputReaderPolicy.cpp +++ b/services/inputflinger/tests/FakeInputReaderPolicy.cpp @@ -16,6 +16,7 @@ #include "FakeInputReaderPolicy.h" +#include <android-base/properties.h> #include <android-base/thread_annotations.h> #include <gtest/gtest.h> @@ -24,6 +25,12 @@ namespace android { +namespace { + +static const int HW_TIMEOUT_MULTIPLIER = base::GetIntProperty("ro.hw_timeout_multiplier", 1); + +} // namespace + void FakeInputReaderPolicy::assertInputDevicesChanged() { waitForInputDevices([](bool devicesChanged) { if (!devicesChanged) { @@ -241,9 +248,11 @@ void FakeInputReaderPolicy::waitForInputDevices(std::function<void(bool)> proces base::ScopedLockAssertion assumeLocked(mLock); const bool devicesChanged = - mDevicesChangedCondition.wait_for(lock, WAIT_TIMEOUT, [this]() REQUIRES(mLock) { - return mInputDevicesChanged; - }); + mDevicesChangedCondition.wait_for(lock, + ADD_INPUT_DEVICE_TIMEOUT * HW_TIMEOUT_MULTIPLIER, + [this]() REQUIRES(mLock) { + return mInputDevicesChanged; + }); ASSERT_NO_FATAL_FAILURE(processDevicesChanged(devicesChanged)); mInputDevicesChanged = false; } diff --git a/services/inputflinger/tests/TestConstants.h b/services/inputflinger/tests/TestConstants.h index ad48b0fbe0..082bbb8136 100644 --- a/services/inputflinger/tests/TestConstants.h +++ b/services/inputflinger/tests/TestConstants.h @@ -24,6 +24,9 @@ namespace android { using std::chrono_literals::operator""ms; +// Timeout for waiting for an input device to be added and processed +static constexpr std::chrono::duration ADD_INPUT_DEVICE_TIMEOUT = 500ms; + // Timeout for waiting for an expected event static constexpr std::chrono::duration WAIT_TIMEOUT = 100ms; |