При использовании Mockito с Kotlin, если я пытаюсь проверить ложные вызовы, он работает нормально, как (это в тесте Spring):
@MockBean
lateinit var fragmentProcessor: FragmentProcessor
verify(fragmentProcessor, timeout(20000)).processFragment(expectedFragment)
, что дает ожидаемое поведение ... но просто сделать что-то вроде:
verify(fragmentProcessor, timeout(20000)).processFragment(Mockito.eq(expectedFragment))
выдаст следующую ошибку:
Missing method call for verify(mock) here:
-> at uk.co.argos.productapi.services.kafka.KafkaConsumerServiceTest.testFragmentProcessorReceivesMessages(KafkaConsumerServiceTest.kt:47)
Example of correct verification:
verify(mock).doSomething()
Also, this error might show up because you verify either of: final/private/equals()/hashCode() methods.
Those methods *cannot* be stubbed/verified.
Mocking methods declared on non-public parent classes is not supported.
то же самое происходит с ArgumentCaptor или другими сопоставителями