@Test(expected = IllegalArgumentException.class) public void checkInternetConnectivityShouldThrowAnExceptionWhenStrategyIsNull() { // given final ErrorHandler errorHandler = new DefaultErrorHandler(); // when ReactiveNetwork.checkInternetConnectivity(null, TEST_VALID_HOST, TEST_VALID_PORT, TEST_VALID_TIMEOUT, TEST_VALID_HTTP_RESPONSE, errorHandler); // then an exception is thrown }
@Test public void checkInternetConnectivityShouldNotThrowAnExceptionWhenStrategyIsNotNull() { // given final InternetObservingStrategy strategy = new SocketInternetObservingStrategy(); final ErrorHandler errorHandler = new DefaultErrorHandler(); // when final Single<Boolean> single = ReactiveNetwork.checkInternetConnectivity(strategy, TEST_VALID_HOST, TEST_VALID_PORT, TEST_VALID_TIMEOUT, TEST_VALID_HTTP_RESPONSE, errorHandler); // then assertThat(single).isNotNull(); }
/** * Checks connectivity with the Internet. This operation is performed only once. * * @param settings Internet Observing Settings created via Builder pattern * @return RxJava Single with Boolean - true, when we have connection with host and false if * not */ @RequiresPermission(Manifest.permission.INTERNET) public static Single<Boolean> checkInternetConnectivity(InternetObservingSettings settings) { return checkInternetConnectivity(settings.strategy(), settings.host(), settings.port(), settings.timeout(), settings.httpResponse(), settings.errorHandler()); }
/** * Checks connectivity with the Internet. This operation is performed only once. * * @return RxJava Single with Boolean - true, when we have an access to the Internet * and false if not */ @RequiresPermission(Manifest.permission.INTERNET) public static Single<Boolean> checkInternetConnectivity() { InternetObservingSettings settings = InternetObservingSettings.create(); return checkInternetConnectivity(settings.strategy(), settings.host(), settings.port(), settings.timeout(), settings.httpResponse(), settings.errorHandler()); }
@Test public void shouldCheckInternetConnectivityWithCustomSettings() { // given final int initialInterval = 1; final int interval = 2; final String host = "www.test.com"; int port = 90; int timeout = 3; int httpResponse = 200; ErrorHandler testErrorHandler = createTestErrorHandler(); InternetObservingStrategy strategy = createTestInternetObservingStrategy(); // when InternetObservingSettings settings = InternetObservingSettings.builder() .initialInterval(initialInterval) .interval(interval) .host(host) .port(port) .timeout(timeout) .httpResponse(httpResponse) .errorHandler(testErrorHandler) .strategy(strategy) .build(); // then Single<Boolean> single = ReactiveNetwork.checkInternetConnectivity(settings); assertThat(single).isNotNull(); }