ArgumentMatchers.any не должен иметь значение null. ⇐ Android
-
Anonymous
ArgumentMatchers.any не должен иметь значение null.
Я пытаюсь протестировать ViewModel, чтобы убедиться, что живые данные обновляются правильно. Однако при использовании ArgumentMatchers.any() происходит сбой с IllegalStateException, говорящим:
ArgumentMatchers.any(mViewModel.CountSubscriber::class.java) не должен быть нулевым
@Test весело испускатьValueIfCountIs7() { doAnswer {вызов: InvocationOnMock -> подписчик val: mViewModel.CountSubscriber = invoction.getArgument(0) подписчик.onNext(7) нулевой }.`when`(countUseCase).execute( ArgumentMatchers.any(mViewModel.CountSubscriber::class.java), ArgumentMatchers.any(Параметры::class.java) ) // Когда mViewModel.getCount() // Проверять Assert (mViewModel.countResponse.value! = ноль) } Я использую Kotlin и имею следующие зависимости:
testImplementation 'junit:junit:4.12' testImplementation "org.mockito:mockito-inline:2.23.4" testImplementation "com.nhaarman.mockitokotlin2:mockito-kotlin:2.1.0" Вот мой импорт:
import androidx.arch.core.executor.testing.InstantTaskExecutorRule импортировать com.nhaarman.mockitokotlin2.doAnswer импортировать io.reactivex.Observable импортировать org.junit.Before импортировать org.junit.Rule импортировать org.junit.Test импортировать org.mockito.ArgumentMatchers.any импортировать org.mockito.Mock импортировать org.mockito.Mockito импортировать org.mockito.MockitoAnnotations импортировать org.mockito.invocation.InvocationOnMock Странно, что раньше это работало, и я не знаю, что произошло, что могло на это повлиять.
Я пытаюсь протестировать ViewModel, чтобы убедиться, что живые данные обновляются правильно. Однако при использовании ArgumentMatchers.any() происходит сбой с IllegalStateException, говорящим:
ArgumentMatchers.any(mViewModel.CountSubscriber::class.java) не должен быть нулевым
@Test весело испускатьValueIfCountIs7() { doAnswer {вызов: InvocationOnMock -> подписчик val: mViewModel.CountSubscriber = invoction.getArgument(0) подписчик.onNext(7) нулевой }.`when`(countUseCase).execute( ArgumentMatchers.any(mViewModel.CountSubscriber::class.java), ArgumentMatchers.any(Параметры::class.java) ) // Когда mViewModel.getCount() // Проверять Assert (mViewModel.countResponse.value! = ноль) } Я использую Kotlin и имею следующие зависимости:
testImplementation 'junit:junit:4.12' testImplementation "org.mockito:mockito-inline:2.23.4" testImplementation "com.nhaarman.mockitokotlin2:mockito-kotlin:2.1.0" Вот мой импорт:
import androidx.arch.core.executor.testing.InstantTaskExecutorRule импортировать com.nhaarman.mockitokotlin2.doAnswer импортировать io.reactivex.Observable импортировать org.junit.Before импортировать org.junit.Rule импортировать org.junit.Test импортировать org.mockito.ArgumentMatchers.any импортировать org.mockito.Mock импортировать org.mockito.Mockito импортировать org.mockito.MockitoAnnotations импортировать org.mockito.invocation.InvocationOnMock Странно, что раньше это работало, и я не знаю, что произошло, что могло на это повлиять.
Мобильная версия