Articles of Mockito

Как назвать конкретную лямбду в макет класса?

У меня есть следующий текстовый файл с параметрами: @Test fun lostClick() { //setup parameters val func0 : (Unit) -> Unit = { println("fun0")} val func1 : (String) -> Unit = { println("fun1")} val func2 : (Int) -> Unit = { println("fun2")} whenever(deviceInteractor.reserveBadCaseDevice( //equals `when` eq(workerId), eq(DeviceCondition.LOST), eq(func0), eq(func1), eq(func2))).then({ func0.invoke(Unit) }) presenter.lostClick() //view reaction verify(viewState).showLoad(true) […]

Использование Mockito, Как мне отобразить класс Kotlin с декларацией поля интерфейса val?

Я пытался проверить класс api клиента retrofit в Kotlin, используя Mockito в Android, который выглядит так: class SomeApiClient : SomeApi { private val service: SomeApiService constructor(service: SomeApiService) { this.service = service } } он реализует интерфейс SomeApi и содержит один интерфейс для SomeApi качестве параметра конструктора. При spy классах с Mockito классы должны иметь конструкторы […]

Анонимный параметр функции Kotlin

В соответствии с тестированием модуля Kotlin для параметра функции и объекта мы можем проверить функциональную переменную funcParam , так как она является переменной функции объекта. Однако, если код написан с использованием параметра анонимной / вложенной функции (что является очень приятной функцией Kotlin, которая позволяет нам исключить ненужную временную переменную для нее) … class MyClass1(val myObject: […]

Как вручную подключить Kotlin fun с помощью <reified T: Any>

У меня есть тест прохождения ниже, который использует встроенную забаву. class SimpleClassTest { private inline fun <reified T: Any> anyObject(): T { return Mockito.anyObject<T>() } lateinit var simpleObject: SimpleClass @Mock lateinit var injectedObject: InjectedClass @Before fun setUp() { MockitoAnnotations.initMocks(this) } @Test fun testSimpleFunction() { simpleObject = SimpleClass(injectedObject) simpleObject.simpleFunction() verify(injectedObject).settingDependentObject(anyObject()) } } Но теперь я хочу […]

MissingMethodInvocationException тестирование открытого класса в Котлине

Я пытаюсь сделать некоторые интеграционные тесты с Kotlin + RxJava и MockWebServer. Я новичок в плане тестирования, и я ученик Котлин. Я знаю об ограничениях Mockito и финальных классов, но я не должен издеваться над классом, который я пытаюсь проверить, поэтому я не знаю, где реальная проблема: Ошибка следующая: Apr 16, 2016 9:59:49 PM okhttp3.mockwebserver.MockWebServer$3 […]

Захват ArgumentCaptor, возвращающий значение null

У меня есть ситуация, когда мне нужно проверить один объект, который создается внутри общедоступного метода, и у меня нет доступа к нему, поэтому я пытаюсь использовать ArgumentCaptor . Проблема в том, что я всегда получаю null . Вот мой код, поэтому было бы более очевидно, что я делаю неправильно: class ActivityStarterClass(val c: Context) { public […]

смеющийся отложенный ответ сервера

У меня есть следующие модели Json: /** * Json model of room response */ open class JsonRoom(val BookingData: JsonRoomBookingData, val GeneralData: JsonRoomGeneralData) /** * Json model of room booking data */ open class JsonRoomBookingData(val BookingId: Int, val BookingStatus: Int, val RoomId: Int, val RoomName: String, val TimeFrom: Date, val TimeTo: Date, val TimeFromUtc: Date, val […]

Предоставлять насмешливый объект другому конструктору конструктивного объекта?

Первоначальное модульное тестирование и использование Mockito. Я не уверен, думаю ли я об этом правильно. Вот ситуация: В моем приложении для Android я использую Model-View-Presenter. Я пытаюсь проверить метод в моем классе презентатора под названием validateCredential(serviceManager: ServiceManager, email: String, password: String) чтобы узнать, будет ли диспетчер службы, который я передаю ему, в конечном итоге вызвать […]

Отказываясь от ответов API с помощью Mockito

вот часть кода от ведущего fun getCustomers (pageNumber: Int?) { api.getCustomers(Constants.Pagination.PAGE_SIZE.toString(),pageNumber.toString()) .enqueue(object : Callback<com.ecm.realpad.contacts.network.model.Customers> { override fun onResponse(call: Call<Customers>, response: Response<Customers>) { val customers = response.body() response.body()?.let { if (pageNumber == Constants.Pagination.START_PAGE) { customers?.let { customersData = it } } else { customers?.let { view?.render(CustomersModel.GoToCustomersNextData(it)) } } } ?: run { view?.render(ErrorModel.ErrorState()) } } override […]

NoSuchMethodError: Нет статического метода beforeCheckcastToFunctionOfArity

У меня есть тесты для моего приложения для Android, написанного на Java с помощью JUnit4 , Mockito и Espresso . Я попытался преобразовать их в Kotlin , но мои тесты терпят неудачу с этим Исключением: java.lang.NoSuchMethodError: No static method beforeCheckcastToFunctionOfArity(Ljava/lang/Object;I)Ljava/lang/Object; in class Lkotlin/jvm/internal/TypeIntrinsics; or its super classes (declaration of 'kotlin.jvm.internal.TypeIntrinsics' appears in /data/app/com.takhfifan.takhfifan-2/base.apk) at com.takhfifan.takhfifan.activity.AddressSelectActivityTest$configApiToReturnAddresses$1.answer(AddressSelectActivityTest.kt:131) […]

Intereting Posts
Котлин, обращающийся к константе во внутреннем классе с Java Как скрыть навигационную панель андроида или квадратную кнопку в навигационной панели try-with-resources: функция «использовать» в Kotlin не всегда работает Почему я вынужден использовать !! в сочетании с нулевыми проверками? Реализовать Hashmap с разными типами значений в Котлине Уведомления Android не отображаются на эмуляторе, запущенном API 27 Kotlin / anko несколько асинхронных задач Экземпляр Kotlin KClass внутри функции расширения Есть ли способ ссылаться на класс Java для функции верхнего уровня Kotlin? Объект «val» на уровне пакета Kotlin не работает из модуля библиотеки Android, если он оснащен JaCoCo Методы Java ошибочно автоматически перегружаются в котлин Возможность вызова статического метода Java в Котлине Как вводить в варт в Котлин? Применение плагина «kotlin-android» в мгновенном приложении приводит к тому, что «null не может быть применено к ненулевому типу com.android.build.gradleBasePlugin» Ошибка изображения элемента RecyclerView