У меня довольно простой тест. Я жду, когда список транзакций будет получен и назначен представлению списка.
@Test
fun testTransactionsLoad(){
val listView: ListView? = fragment!!.findView(R.id.listView)
assertNotNull(listView)
await().atMost(20, TimeUnit.SECONDS).until(transactionsLoad(listView!!))
assert(listView.adapter.count > 0)
}
Но по какой-то причине ожидаемая возможность всегда отправляет false для этого вызываемого объекта:
private fun transactionsLoad(listView: ListView): Callable<Boolean> {
return if (listView.adapter == null){
Callable { false }
} else {
Callable { true }
}
}
Это не первый раз, когда Awaitility возвращает неправильную вещь. На моем устройстве загружается представление списка, подтверждающее, что оно также должно иметь адаптер. Адаптер по-прежнему отображается как ноль в вызываемом.
Есть идеи?