Подтвердить что ты не робот

Тестирование AsyncTaskLoaders с Robolectric

Кому-нибудь удавалось писать модульные тесты для AsyncTaskLoaders в Robolectric? Я попробовал модифицированную версию этого примера для AsyncTask, но он не проявляет такого же поведения. В частности, onLoadFinished никогда не вызывается. Существуют ли какие-либо обоснованные примеры для тестирования Loaders с Robolectric?

4b9b3361

Ответ 1

Не используйте Loaders. Их непросто проверить, и они тесно связаны с фрагментами и действиями, которые их используют. Вместо этого используйте RxJava Observables для ваших асинхронных потоков данных. Вы можете отключить планирование и протестировать их синхронно в своих модульных тестах. Он намного чище и гораздо более прост.

Ответ 2

Я только что опубликовал способ, которым я получил его в этом билете: Тестирование CursorLoader с помощью Robolectric и Mockito

Это связано с написанием нескольких дополнительных теневых классов. Я могу вставить исправление здесь, если это запрошено, но я не был уверен, что это соглашение для дублирующего ответа.