[Provider Model] Don't show Wi-Fi icon if the level is -1

- Since WIFI_LEVEL_UNREACHABLE (-1) is not 100% avoidable

- Don't show Wi-Fi icon if it's no level.

Bug: 198742993
Test: manual test
atest -c InternetDialogControllerTest

Change-Id: I9496d371a4ddfb71fd8e0c742c8e0d60a356a456
This commit is contained in:
Weng Su
2021-09-06 22:32:10 +08:00
parent a0cb9839d2
commit 8447f1a19e
2 changed files with 13 additions and 1 deletions

View File

@@ -337,6 +337,9 @@ public class InternetDialogController implements WifiEntry.DisconnectCallback,
}
Drawable getInternetWifiDrawable(@NonNull WifiEntry wifiEntry) {
if (wifiEntry.getLevel() == WifiEntry.WIFI_LEVEL_UNREACHABLE) {
return null;
}
final Drawable drawable =
mWifiIconInjector.getIcon(wifiEntry.shouldShowXLevelIcon(), wifiEntry.getLevel());
if (drawable == null) {

View File

@@ -259,7 +259,7 @@ public class InternetDialogControllerTest extends SysuiTestCase {
}
@Test
public void getWifiDrawable_withConnectedEntry_returnIntentIconWithCorrectColor() {
public void getInternetWifiDrawable_withConnectedEntry_returnIntentIconWithCorrectColor() {
final Drawable drawable = mock(Drawable.class);
when(mWifiIconInjector.getIcon(anyBoolean(), anyInt())).thenReturn(drawable);
@@ -269,6 +269,15 @@ public class InternetDialogControllerTest extends SysuiTestCase {
verify(drawable).setTint(mContext.getColor(R.color.connected_network_primary_color));
}
@Test
public void getInternetWifiDrawable_withWifiLevelUnreachable_returnNull() {
when(mConnectedEntry.getLevel()).thenReturn(WifiEntry.WIFI_LEVEL_UNREACHABLE);
Drawable drawable = mInternetDialogController.getInternetWifiDrawable(mConnectedEntry);
assertThat(drawable).isNull();
}
@Test
public void launchWifiNetworkDetailsSetting_withNoWifiEntryKey_doNothing() {
mInternetDialogController.launchWifiNetworkDetailsSetting(null /* key */);