diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/util/mockito/KotlinMockitoHelpers.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/util/mockito/KotlinMockitoHelpers.kt index f539dbdf76a00..d058053c606c3 100644 --- a/packages/SystemUI/tests/utils/src/com/android/systemui/util/mockito/KotlinMockitoHelpers.kt +++ b/packages/SystemUI/tests/utils/src/com/android/systemui/util/mockito/KotlinMockitoHelpers.kt @@ -118,3 +118,17 @@ inline fun kotlinArgumentCaptor(): KotlinArgumentCaptor = */ inline fun withArgCaptor(block: KotlinArgumentCaptor.() -> Unit): T = kotlinArgumentCaptor().apply { block() }.value + +/** + * Variant of [withArgCaptor] for capturing multiple arguments. + * + * val captor = argumentCaptor() + * verify(...).someMethod(captor.capture()) + * val captured: List = captor.allValues + * + * becomes: + * + * val capturedList = captureMany { verify(...).someMethod(capture()) } + */ +inline fun captureMany(block: KotlinArgumentCaptor.() -> Unit): List = + kotlinArgumentCaptor().apply{ block() }.allValues