[Provider Model] Move the Internet unavailable Wi-Fi down
- Check the Wifi network have both INTERNET and VALIDATED capabilities to achieve effective network access - Move the Internet unavailable Wi-Fi down to the top of Wi-Fi list - Don't paint color for the Internet unavailable Wi-Fi - Screenshot: https://screenshot.googleplex.com/w82kbALssdTZmg4 Bug: 178457619 Bug: 178926547 Bug: 178978070 Test: manual test on device atest -c InternetUpdaterTest \ NetworkProviderWorkerTest \ ProviderModelSliceTest Change-Id: Idf04e556ab5a87abc5bc96d1934f5e8fd91fbfaa
This commit is contained in:
@@ -142,13 +142,13 @@ public class InternetUpdater implements AirplaneModeEnabler.OnAirplaneModeChange
|
|||||||
private NetworkCallback mNetworkCallback = new NetworkCallback() {
|
private NetworkCallback mNetworkCallback = new NetworkCallback() {
|
||||||
public void onCapabilitiesChanged(@NonNull Network network,
|
public void onCapabilitiesChanged(@NonNull Network network,
|
||||||
@NonNull NetworkCapabilities networkCapabilities) {
|
@NonNull NetworkCapabilities networkCapabilities) {
|
||||||
checkNetworkCapabilities(networkCapabilities);
|
updateInternetAvailable(networkCapabilities);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onLost(@NonNull Network network) {
|
public void onLost(@NonNull Network network) {
|
||||||
mInternetAvailable = false;
|
mInternetAvailable = false;
|
||||||
update();
|
updateInternetType();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -203,7 +203,7 @@ public class InternetUpdater implements AirplaneModeEnabler.OnAirplaneModeChange
|
|||||||
Network activeNetwork = mConnectivityManager.getActiveNetwork();
|
Network activeNetwork = mConnectivityManager.getActiveNetwork();
|
||||||
if (activeNetwork == null) {
|
if (activeNetwork == null) {
|
||||||
mInternetAvailable = false;
|
mInternetAvailable = false;
|
||||||
update();
|
updateInternetType();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -211,36 +211,34 @@ public class InternetUpdater implements AirplaneModeEnabler.OnAirplaneModeChange
|
|||||||
mConnectivityManager.getNetworkCapabilities(activeNetwork);
|
mConnectivityManager.getNetworkCapabilities(activeNetwork);
|
||||||
if (activeNetworkCapabilities == null) {
|
if (activeNetworkCapabilities == null) {
|
||||||
mInternetAvailable = false;
|
mInternetAvailable = false;
|
||||||
update();
|
updateInternetType();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
checkNetworkCapabilities(activeNetworkCapabilities);
|
updateInternetAvailable(activeNetworkCapabilities);
|
||||||
}
|
|
||||||
|
|
||||||
private void checkNetworkCapabilities(@NonNull NetworkCapabilities networkCapabilities) {
|
|
||||||
if (!networkCapabilities.hasCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)) {
|
|
||||||
mInternetAvailable = false;
|
|
||||||
update();
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@VisibleForTesting
|
||||||
|
void updateInternetAvailable(@NonNull NetworkCapabilities capabilities) {
|
||||||
boolean internetAvailable = false;
|
boolean internetAvailable = false;
|
||||||
for (int transport : networkCapabilities.getTransportTypes()) {
|
if (capabilities.hasCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
|
||||||
|
&& capabilities.hasCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED)) {
|
||||||
|
for (int transport : capabilities.getTransportTypes()) {
|
||||||
if (sTransportMap.containsKey(transport)) {
|
if (sTransportMap.containsKey(transport)) {
|
||||||
mTransport = transport;
|
mTransport = transport;
|
||||||
internetAvailable = true;
|
internetAvailable = true;
|
||||||
Log.i(TAG, "Detect an internet capability network with transport type: "
|
Log.i(TAG, "Detect an internet available network with transport type: "
|
||||||
+ mTransport);
|
+ mTransport);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
mInternetAvailable = internetAvailable;
|
mInternetAvailable = internetAvailable;
|
||||||
update();
|
updateInternetType();
|
||||||
}
|
}
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
void update() {
|
void updateInternetType() {
|
||||||
@InternetType int internetType = INTERNET_NETWORKS_AVAILABLE;
|
@InternetType int internetType = INTERNET_NETWORKS_AVAILABLE;
|
||||||
if (mInternetAvailable) {
|
if (mInternetAvailable) {
|
||||||
internetType = sTransportMap.get(mTransport);
|
internetType = sTransportMap.get(mTransport);
|
||||||
|
@@ -21,6 +21,7 @@ import static android.app.slice.Slice.EXTRA_TOGGLE_STATE;
|
|||||||
|
|
||||||
import static com.android.settings.slices.CustomSliceRegistry.PROVIDER_MODEL_SLICE_URI;
|
import static com.android.settings.slices.CustomSliceRegistry.PROVIDER_MODEL_SLICE_URI;
|
||||||
|
|
||||||
|
import android.annotation.ColorInt;
|
||||||
import android.app.settings.SettingsEnums;
|
import android.app.settings.SettingsEnums;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
@@ -30,6 +31,7 @@ import android.telephony.SubscriptionManager;
|
|||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
import androidx.annotation.VisibleForTesting;
|
import androidx.annotation.VisibleForTesting;
|
||||||
|
import androidx.core.graphics.drawable.IconCompat;
|
||||||
import androidx.slice.Slice;
|
import androidx.slice.Slice;
|
||||||
import androidx.slice.builders.ListBuilder;
|
import androidx.slice.builders.ListBuilder;
|
||||||
|
|
||||||
@@ -83,9 +85,10 @@ public class ProviderModelSlice extends WifiSlice {
|
|||||||
// Second section: Add a carrier item.
|
// Second section: Add a carrier item.
|
||||||
// Third section: Add the Wi-Fi items which are not connected.
|
// Third section: Add the Wi-Fi items which are not connected.
|
||||||
// Fourth section: If device has connection problem, this row show the message for user.
|
// Fourth section: If device has connection problem, this row show the message for user.
|
||||||
boolean hasEthernet = isEthernetConnected();
|
@InternetUpdater.InternetType int internetType = getInternetType();
|
||||||
final ListBuilder listBuilder = mHelper.createListBuilder(getUri());
|
final ListBuilder listBuilder = mHelper.createListBuilder(getUri());
|
||||||
if (mHelper.isAirplaneModeEnabled() && !mWifiManager.isWifiEnabled() && !hasEthernet) {
|
if (mHelper.isAirplaneModeEnabled() && !mWifiManager.isWifiEnabled()
|
||||||
|
&& internetType != InternetUpdater.INTERNET_ETHERNET) {
|
||||||
log("Airplane mode is enabled.");
|
log("Airplane mode is enabled.");
|
||||||
return listBuilder.build();
|
return listBuilder.build();
|
||||||
}
|
}
|
||||||
@@ -105,15 +108,17 @@ public class ProviderModelSlice extends WifiSlice {
|
|||||||
log("hasCarrier: " + hasCarrier);
|
log("hasCarrier: " + hasCarrier);
|
||||||
|
|
||||||
// First section: Add a Ethernet or Wi-Fi item which state is connected.
|
// First section: Add a Ethernet or Wi-Fi item which state is connected.
|
||||||
|
boolean isConnectedWifiAddedTop = false;
|
||||||
final WifiSliceItem connectedWifiItem = mHelper.getConnectedWifiItem(wifiList);
|
final WifiSliceItem connectedWifiItem = mHelper.getConnectedWifiItem(wifiList);
|
||||||
if (hasEthernet) {
|
if (internetType == InternetUpdater.INTERNET_ETHERNET) {
|
||||||
log("get Ethernet item which is connected");
|
log("get Ethernet item which is connected");
|
||||||
listBuilder.addRow(createEthernetRow());
|
listBuilder.addRow(createEthernetRow());
|
||||||
maxListSize--;
|
maxListSize--;
|
||||||
} else {
|
} else {
|
||||||
if (connectedWifiItem != null) {
|
if (connectedWifiItem != null && internetType == InternetUpdater.INTERNET_WIFI) {
|
||||||
log("get Wi-Fi item which is connected");
|
log("get Wi-Fi item which is connected to internet");
|
||||||
listBuilder.addRow(getWifiSliceItemRow(connectedWifiItem));
|
listBuilder.addRow(getWifiSliceItemRow(connectedWifiItem));
|
||||||
|
isConnectedWifiAddedTop = true;
|
||||||
maxListSize--;
|
maxListSize--;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -128,7 +133,7 @@ public class ProviderModelSlice extends WifiSlice {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Third section: Add the connected Wi-Fi item to Wi-Fi list if the Ethernet is connected.
|
// Third section: Add the connected Wi-Fi item to Wi-Fi list if the Ethernet is connected.
|
||||||
if (connectedWifiItem != null && hasEthernet) {
|
if (connectedWifiItem != null && !isConnectedWifiAddedTop) {
|
||||||
log("get Wi-Fi item which is connected");
|
log("get Wi-Fi item which is connected");
|
||||||
listBuilder.addRow(getWifiSliceItemRow(connectedWifiItem));
|
listBuilder.addRow(getWifiSliceItemRow(connectedWifiItem));
|
||||||
maxListSize--;
|
maxListSize--;
|
||||||
@@ -222,12 +227,12 @@ public class ProviderModelSlice extends WifiSlice {
|
|||||||
return SliceBackgroundWorker.getInstance(getUri());
|
return SliceBackgroundWorker.getInstance(getUri());
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean isEthernetConnected() {
|
private @InternetUpdater.InternetType int getInternetType() {
|
||||||
final NetworkProviderWorker worker = getWorker();
|
final NetworkProviderWorker worker = getWorker();
|
||||||
if (worker == null) {
|
if (worker == null) {
|
||||||
return false;
|
return InternetUpdater.INTERNET_NETWORKS_AVAILABLE;
|
||||||
}
|
}
|
||||||
return worker.isEthernetConnected();
|
return worker.getInternetType();
|
||||||
}
|
}
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
@@ -243,6 +248,20 @@ public class ProviderModelSlice extends WifiSlice {
|
|||||||
.setSubtitle(mContext.getText(R.string.to_switch_networks_disconnect_ethernet));
|
.setSubtitle(mContext.getText(R.string.to_switch_networks_disconnect_ethernet));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected IconCompat getWifiSliceItemLevelIcon(WifiSliceItem wifiSliceItem) {
|
||||||
|
if (wifiSliceItem.getConnectedState() == WifiEntry.CONNECTED_STATE_CONNECTED
|
||||||
|
&& getInternetType() != InternetUpdater.INTERNET_WIFI) {
|
||||||
|
final @ColorInt int tint = Utils.getColorAttrDefaultColor(mContext,
|
||||||
|
android.R.attr.colorControlNormal);
|
||||||
|
final Drawable drawable = mContext.getDrawable(
|
||||||
|
Utils.getWifiIconResource(wifiSliceItem.getLevel()));
|
||||||
|
drawable.setTint(tint);
|
||||||
|
return Utils.createIconWithDrawable(drawable);
|
||||||
|
}
|
||||||
|
return super.getWifiSliceItemLevelIcon(wifiSliceItem);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Wrap the subscriptionManager call for test mocking.
|
* Wrap the subscriptionManager call for test mocking.
|
||||||
*/
|
*/
|
||||||
|
@@ -288,9 +288,9 @@ public class NetworkProviderWorker extends WifiScanWorker implements
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns true, if the ethernet network is connected.
|
* Returns the internet type.
|
||||||
*/
|
*/
|
||||||
public boolean isEthernetConnected() {
|
public @InternetUpdater.InternetType int getInternetType() {
|
||||||
return mInternetType == INTERNET_ETHERNET;
|
return mInternetType;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -164,7 +164,7 @@ public class WifiSlice implements CustomSliceable {
|
|||||||
return rowBuilder;
|
return rowBuilder;
|
||||||
}
|
}
|
||||||
|
|
||||||
private IconCompat getWifiSliceItemLevelIcon(WifiSliceItem wifiSliceItem) {
|
protected IconCompat getWifiSliceItemLevelIcon(WifiSliceItem wifiSliceItem) {
|
||||||
final @ColorInt int tint;
|
final @ColorInt int tint;
|
||||||
if (wifiSliceItem.getConnectedState() == WifiEntry.CONNECTED_STATE_CONNECTED) {
|
if (wifiSliceItem.getConnectedState() == WifiEntry.CONNECTED_STATE_CONNECTED) {
|
||||||
tint = Utils.getColorAccentDefaultColor(mContext);
|
tint = Utils.getColorAccentDefaultColor(mContext);
|
||||||
|
@@ -38,6 +38,7 @@ import android.content.BroadcastReceiver;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.IntentFilter;
|
import android.content.IntentFilter;
|
||||||
import android.net.ConnectivityManager;
|
import android.net.ConnectivityManager;
|
||||||
|
import android.net.NetworkCapabilities;
|
||||||
import android.net.wifi.WifiManager;
|
import android.net.wifi.WifiManager;
|
||||||
|
|
||||||
import androidx.lifecycle.Lifecycle;
|
import androidx.lifecycle.Lifecycle;
|
||||||
@@ -107,57 +108,80 @@ public class InternetUpdaterTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void update_apmOnWifiOff_getInternetApm() {
|
public void updateInternetAvailable_wifiConnectedAndNoValidated_internetUnavailable() {
|
||||||
|
final NetworkCapabilities networkCapabilities = new NetworkCapabilities();
|
||||||
|
networkCapabilities.addTransportType(TRANSPORT_WIFI);
|
||||||
|
networkCapabilities.addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET);
|
||||||
|
|
||||||
|
mInternetUpdater.updateInternetAvailable(networkCapabilities);
|
||||||
|
|
||||||
|
assertThat(mInternetUpdater.mInternetAvailable).isEqualTo(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void updateInternetAvailable_wifiConnectedAndValidated_internetAvailable() {
|
||||||
|
final NetworkCapabilities networkCapabilities = new NetworkCapabilities();
|
||||||
|
networkCapabilities.addTransportType(TRANSPORT_WIFI);
|
||||||
|
networkCapabilities.addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET);
|
||||||
|
networkCapabilities.addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED);
|
||||||
|
|
||||||
|
mInternetUpdater.updateInternetAvailable(networkCapabilities);
|
||||||
|
|
||||||
|
assertThat(mInternetUpdater.mInternetAvailable).isEqualTo(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void updateInternetType_apmOnWifiOff_getInternetApm() {
|
||||||
doReturn(true).when(mAirplaneModeEnabler).isAirplaneModeOn();
|
doReturn(true).when(mAirplaneModeEnabler).isAirplaneModeOn();
|
||||||
doReturn(WifiManager.WIFI_STATE_DISABLED).when(mWifiManager).getWifiState();
|
doReturn(WifiManager.WIFI_STATE_DISABLED).when(mWifiManager).getWifiState();
|
||||||
mInternetUpdater.mInternetAvailable = false;
|
mInternetUpdater.mInternetAvailable = false;
|
||||||
|
|
||||||
mInternetUpdater.update();
|
mInternetUpdater.updateInternetType();
|
||||||
|
|
||||||
assertThat(mInternetUpdater.getInternetType()).isEqualTo(INTERNET_OFF);
|
assertThat(mInternetUpdater.getInternetType()).isEqualTo(INTERNET_OFF);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void update_apmOnWifiOnNotConnected_getInternetNetworksAvailable() {
|
public void updateInternetType_apmOnWifiOnNotConnected_getInternetNetworksAvailable() {
|
||||||
doReturn(true).when(mAirplaneModeEnabler).isAirplaneModeOn();
|
doReturn(true).when(mAirplaneModeEnabler).isAirplaneModeOn();
|
||||||
doReturn(WifiManager.WIFI_STATE_ENABLED).when(mWifiManager).getWifiState();
|
doReturn(WifiManager.WIFI_STATE_ENABLED).when(mWifiManager).getWifiState();
|
||||||
mInternetUpdater.mInternetAvailable = false;
|
mInternetUpdater.mInternetAvailable = false;
|
||||||
|
|
||||||
mInternetUpdater.update();
|
mInternetUpdater.updateInternetType();
|
||||||
|
|
||||||
assertThat(mInternetUpdater.getInternetType()).isEqualTo(INTERNET_NETWORKS_AVAILABLE);
|
assertThat(mInternetUpdater.getInternetType()).isEqualTo(INTERNET_NETWORKS_AVAILABLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void update_apmOnWifiConnected_getInternetWifi() {
|
public void updateInternetType_apmOnWifiConnected_getInternetWifi() {
|
||||||
doReturn(true).when(mAirplaneModeEnabler).isAirplaneModeOn();
|
doReturn(true).when(mAirplaneModeEnabler).isAirplaneModeOn();
|
||||||
doReturn(true).when(mWifiManager).isWifiEnabled();
|
doReturn(true).when(mWifiManager).isWifiEnabled();
|
||||||
mInternetUpdater.mInternetAvailable = true;
|
mInternetUpdater.mInternetAvailable = true;
|
||||||
mInternetUpdater.mTransport = TRANSPORT_WIFI;
|
mInternetUpdater.mTransport = TRANSPORT_WIFI;
|
||||||
|
|
||||||
mInternetUpdater.update();
|
mInternetUpdater.updateInternetType();
|
||||||
|
|
||||||
assertThat(mInternetUpdater.getInternetType()).isEqualTo(INTERNET_WIFI);
|
assertThat(mInternetUpdater.getInternetType()).isEqualTo(INTERNET_WIFI);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void update_apmOnCellularConnected_getInternetCellular() {
|
public void updateInternetType_apmOnCellularConnected_getInternetCellular() {
|
||||||
doReturn(true).when(mAirplaneModeEnabler).isAirplaneModeOn();
|
doReturn(true).when(mAirplaneModeEnabler).isAirplaneModeOn();
|
||||||
mInternetUpdater.mInternetAvailable = true;
|
mInternetUpdater.mInternetAvailable = true;
|
||||||
mInternetUpdater.mTransport = TRANSPORT_CELLULAR;
|
mInternetUpdater.mTransport = TRANSPORT_CELLULAR;
|
||||||
|
|
||||||
mInternetUpdater.update();
|
mInternetUpdater.updateInternetType();
|
||||||
|
|
||||||
assertThat(mInternetUpdater.getInternetType()).isEqualTo(INTERNET_CELLULAR);
|
assertThat(mInternetUpdater.getInternetType()).isEqualTo(INTERNET_CELLULAR);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void update_apmOnEthernetConnected_getInternetEthernet() {
|
public void updateInternetType_apmOnEthernetConnected_getInternetEthernet() {
|
||||||
doReturn(true).when(mAirplaneModeEnabler).isAirplaneModeOn();
|
doReturn(true).when(mAirplaneModeEnabler).isAirplaneModeOn();
|
||||||
mInternetUpdater.mInternetAvailable = true;
|
mInternetUpdater.mInternetAvailable = true;
|
||||||
mInternetUpdater.mTransport = TRANSPORT_ETHERNET;
|
mInternetUpdater.mTransport = TRANSPORT_ETHERNET;
|
||||||
|
|
||||||
mInternetUpdater.update();
|
mInternetUpdater.updateInternetType();
|
||||||
|
|
||||||
assertThat(mInternetUpdater.getInternetType()).isEqualTo(INTERNET_ETHERNET);
|
assertThat(mInternetUpdater.getInternetType()).isEqualTo(INTERNET_ETHERNET);
|
||||||
}
|
}
|
||||||
|
@@ -236,7 +236,8 @@ public class ProviderModelSliceTest {
|
|||||||
mWifiList.add(mMockWifiSliceItem2);
|
mWifiList.add(mMockWifiSliceItem2);
|
||||||
mMockNetworkProviderWorker.updateSelfResults(mWifiList);
|
mMockNetworkProviderWorker.updateSelfResults(mWifiList);
|
||||||
mockHelperCondition(false, true, true, null);
|
mockHelperCondition(false, true, true, null);
|
||||||
when(mMockNetworkProviderWorker.isEthernetConnected()).thenReturn(true);
|
when(mMockNetworkProviderWorker.getInternetType())
|
||||||
|
.thenReturn(InternetUpdater.INTERNET_ETHERNET);
|
||||||
|
|
||||||
final Slice slice = mMockProviderModelSlice.getSlice();
|
final Slice slice = mMockProviderModelSlice.getSlice();
|
||||||
|
|
||||||
@@ -258,7 +259,8 @@ public class ProviderModelSliceTest {
|
|||||||
mWifiList.add(mMockWifiSliceItem2);
|
mWifiList.add(mMockWifiSliceItem2);
|
||||||
mMockNetworkProviderWorker.updateSelfResults(mWifiList);
|
mMockNetworkProviderWorker.updateSelfResults(mWifiList);
|
||||||
mockHelperCondition(false, true, true, mWifiList.get(0));
|
mockHelperCondition(false, true, true, mWifiList.get(0));
|
||||||
when(mMockNetworkProviderWorker.isEthernetConnected()).thenReturn(true);
|
when(mMockNetworkProviderWorker.getInternetType())
|
||||||
|
.thenReturn(InternetUpdater.INTERNET_ETHERNET);
|
||||||
|
|
||||||
final Slice slice = mMockProviderModelSlice.getSlice();
|
final Slice slice = mMockProviderModelSlice.getSlice();
|
||||||
|
|
||||||
|
@@ -261,24 +261,24 @@ public class NetworkProviderWorkerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void isEthernetConnected_connectedEthernet_shouldBeTrue() {
|
public void getInternetType_connectedEthernet_returnInternetEthernet() {
|
||||||
mMockNetworkProviderWorker.onInternetTypeChanged(INTERNET_ETHERNET);
|
mMockNetworkProviderWorker.onInternetTypeChanged(INTERNET_ETHERNET);
|
||||||
|
|
||||||
assertThat(mMockNetworkProviderWorker.isEthernetConnected()).isTrue();
|
assertThat(mMockNetworkProviderWorker.getInternetType()).isEqualTo(INTERNET_ETHERNET);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void isEthernetConnected_connectedWifi_shouldBeFalse() {
|
public void getInternetType_connectedWifi_returnInternetWifi() {
|
||||||
mMockNetworkProviderWorker.onInternetTypeChanged(INTERNET_WIFI);
|
mMockNetworkProviderWorker.onInternetTypeChanged(INTERNET_WIFI);
|
||||||
|
|
||||||
assertThat(mMockNetworkProviderWorker.isEthernetConnected()).isFalse();
|
assertThat(mMockNetworkProviderWorker.getInternetType()).isEqualTo(INTERNET_WIFI);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void isEthernetConnected_connectedCarrier_shouldBeFalse() {
|
public void getInternetType__connectedCarrier_returnInternetCellular() {
|
||||||
mMockNetworkProviderWorker.onInternetTypeChanged(INTERNET_CELLULAR);
|
mMockNetworkProviderWorker.onInternetTypeChanged(INTERNET_CELLULAR);
|
||||||
|
|
||||||
assertThat(mMockNetworkProviderWorker.isEthernetConnected()).isFalse();
|
assertThat(mMockNetworkProviderWorker.getInternetType()).isEqualTo(INTERNET_CELLULAR);
|
||||||
}
|
}
|
||||||
|
|
||||||
public class MockNetworkProviderWorker extends NetworkProviderWorker {
|
public class MockNetworkProviderWorker extends NetworkProviderWorker {
|
||||||
|
Reference in New Issue
Block a user