Я работаю над простым макетом, который возвращает значение, когда вызывается функция с коллекцией, у которой есть заданная запись.
НО, когда я строю сопоставитель
import org.mockito.hamcrest.MockitoHamcrest.argThat
import org.hamcrest.collection.IsMapContaining.hasEntry
val matcher : Matcher<Map<String, String>> = hasEntry("key", "value") as Matcher<Map<String, String>>
val args : Map<String, String> = argThat(matcher)
в конечном итоге он становится нулевым из-за того, что дженерики, насколько я вижу, неправильно выводятся, и дует во время выполнения с
java.lang.IllegalStateException: argThat(matcher) must not be null
В конце концов, я просто хочу настроить макет, как показано ниже:
doReturn(returnValue).`when`(referenceObj).functionName(args)
Мои зависимости включают в себя:
- mockito-core 2.16.0
- Hamcrest-all 1,3
- Котлин-Рефлекс 1.2.30
- kotlin-stdlib 1.2.30
- kotlin-stdlib-jdk7 1.2.30
- kotlin-stdlib-jdk8 1.2.30
Я что-то не так делаю? Можете ли вы предложить обходной путь?