Как проверить результаты подсмотренной функции (callThrough)

В Котлине:

recyclerView.viewTreeObserver.addOnGlobalLayoutListener { scrollToEnd() }

private fun scrollToEnd() =
        (adapter.itemCount - 1).takeIf { it > 0 }?.let(recyclerView::smoothScrollToPosition)
1
задан maricn 4 March 2019 в 12:27
поделиться

1 ответ

toThrow нельзя использовать для шпионов. Вы можете использовать шпионов, чтобы смоделировать поведение или использовать фактическое поведение с callThrough, а затем убедиться, что метод был вызван с определенными параметрами. Но у шпиона не будет информации о полученном результате (значение или ошибка), поэтому вы не можете установить на него ожидания.

Если вы хотите проверить поведение onDocumentDeleted, вы должны либо проверить его косвенно, наблюдая за эффектами метода. В вашем случае (с @CatchAndLogAnyException), кажется, что запись в журнал !? Таким образом, вы можете следить за журналом и ожидать, что он будет вызван с сообщением об ошибке. Или же вы можете протестировать метод напрямую, сделав его открытым

.
0
ответ дан Kim Kern 4 March 2019 в 12:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: