В моем модульном тесте я вызываю следующее:
every { connectivityManager.activeNetworkInfo } returns null
но когда я отлаживаю, я получаю объект NetworkInfo, заполненный нулевыми и ложными значениями
networkInfo = {NetworkInfo@9780}"[type: null[null], state: null/null, reason: unspecified), extra: (none), failover: false, available: false, roaming: false]"
поэтому эта нулевая проверка в моей реализации не дает ложного результата, и я не могу проверить "ложный" путь.
val networkInfo = connectivityManager?.activeNetworkInfo
if (networkInfo != null) { ... }
Я вызываю этот устаревший метод getActiveNetworkInfo(), потому что мне нужно поддерживать Android 8.0 8.1 и 9.
что мне не хватает?
Хорошо, я обнаружил проблему, приведенный выше код работает, моя проблема заключалась в том, что я неправильно передал свои издевательские объекты, поэтому издевательский код никогда не выполнялся.