Я новичок в модульном тестировании.У меня есть метод в классе, который приведен ниже,
public static Boolean isConnected(Activity activity) {
try {
ConnectivityManager conMgr = (ConnectivityManager) activity.getApplicationContext().getSystemService(Context.CONNECTIVITY_SERVICE);
if (conMgr == null)
return false;
NetworkInfo netInfo = conMgr.getActiveNetworkInfo();
return netInfo != null && netInfo.isConnected() && netInfo.isAvailable();
} catch (Exception e) {
return false;
}
}
Я немного запутался, как написать тест для этого метода.Так как в этом методе используются функции библиотеки Android, нужно ли мне писать тесты?
Я попытался написать тест, как указано ниже:
@Mock
private Activity activity;
@Mock
private ConnectivityManager connectivityManager;
@Override
public void setUp() throws Exception {
super.setUp();
MockitoAnnotations.initMocks(this);
}
@Test
public void testIsConnected() {
final NetworkInfo netInfo = this.connectivityManager.getActiveNetworkInfo();
final boolean status = netInfo != null && netInfo.isConnected() && netInfo.isAvailable();
assertTrue("Connectivity Check",Utilities.isConnected(this.activity)== status);
}
Тест пройден, однако яя не уверен, правильно ли я двигаюсь.