Loading packages/SettingsLib/src/com/android/settingslib/wifi/WifiUtils.java +23 −0 Original line number Original line Diff line number Diff line Loading @@ -21,6 +21,7 @@ import static android.net.wifi.WifiConfiguration.NetworkSelectionStatus.getMaxNe import android.content.Context; import android.content.Context; import android.content.Intent; import android.content.Intent; import android.graphics.drawable.Drawable; import android.net.wifi.ScanResult; import android.net.wifi.ScanResult; import android.net.wifi.WifiConfiguration; import android.net.wifi.WifiConfiguration; import android.net.wifi.WifiConfiguration.NetworkSelectionStatus; import android.net.wifi.WifiConfiguration.NetworkSelectionStatus; Loading Loading @@ -294,6 +295,28 @@ public class WifiUtils { return noInternet ? NO_INTERNET_WIFI_PIE[level] : WIFI_PIE[level]; return noInternet ? NO_INTERNET_WIFI_PIE[level] : WIFI_PIE[level]; } } /** * Wrapper the {@link #getInternetIconResource} for testing compatibility. */ public static class InternetIconInjector { protected final Context mContext; public InternetIconInjector(Context context) { mContext = context; } /** * Returns the Internet icon for a given RSSI level. * * @param noInternet True if a connected Wi-Fi network cannot access the Internet * @param level The number of bars to show (0-4) */ public Drawable getIcon(boolean noInternet, int level) { return mContext.getDrawable(WifiUtils.getInternetIconResource(level, noInternet)); } } public static boolean isMeteredOverridden(WifiConfiguration config) { public static boolean isMeteredOverridden(WifiConfiguration config) { return config.meteredOverride != WifiConfiguration.METERED_OVERRIDE_NONE; return config.meteredOverride != WifiConfiguration.METERED_OVERRIDE_NONE; } } Loading packages/SettingsLib/tests/robotests/src/com/android/settingslib/wifi/WifiUtilsTest.java +20 −2 Original line number Original line Diff line number Diff line Loading @@ -20,6 +20,8 @@ import static com.google.common.truth.Truth.assertThat; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.Mockito.any; import static org.mockito.Mockito.any; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import static org.mockito.Mockito.when; import android.content.Context; import android.content.Context; Loading @@ -37,6 +39,8 @@ import android.os.SystemClock; import android.text.format.DateUtils; import android.text.format.DateUtils; import android.util.ArraySet; import android.util.ArraySet; import androidx.test.core.app.ApplicationProvider; import com.android.settingslib.R; import com.android.settingslib.R; import org.junit.Before; import org.junit.Before; Loading @@ -45,7 +49,6 @@ import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.mockito.MockitoAnnotations; import org.robolectric.RobolectricTestRunner; import org.robolectric.RobolectricTestRunner; import org.robolectric.RuntimeEnvironment; import java.util.ArrayList; import java.util.ArrayList; import java.util.Set; import java.util.Set; Loading @@ -70,7 +73,7 @@ public class WifiUtilsTest { @Before @Before public void setUp() { public void setUp() { MockitoAnnotations.initMocks(this); MockitoAnnotations.initMocks(this); mContext = RuntimeEnvironment.application; mContext = spy(ApplicationProvider.getApplicationContext()); } } @Test @Test Loading Loading @@ -160,6 +163,21 @@ public class WifiUtilsTest { assertThat(bundle.getString(WifiUtils.KEY_CHOSEN_WIFIENTRY_KEY)).isEqualTo(key); assertThat(bundle.getString(WifiUtils.KEY_CHOSEN_WIFIENTRY_KEY)).isEqualTo(key); } } @Test public void testInternetIconInjector_getIcon_returnsCorrectValues() { WifiUtils.InternetIconInjector iconInjector = new WifiUtils.InternetIconInjector(mContext); for (int level = 0; level <= 4; level++) { iconInjector.getIcon(false /* noInternet */, level); verify(mContext).getDrawable( WifiUtils.getInternetIconResource(level, false /* noInternet */)); iconInjector.getIcon(true /* noInternet */, level); verify(mContext).getDrawable( WifiUtils.getInternetIconResource(level, true /* noInternet */)); } } private static ArrayList<ScanResult> buildScanResultCache() { private static ArrayList<ScanResult> buildScanResultCache() { ArrayList<ScanResult> scanResults = new ArrayList<>(); ArrayList<ScanResult> scanResults = new ArrayList<>(); for (int i = 0; i < 5; i++) { for (int i = 0; i < 5; i++) { Loading Loading
packages/SettingsLib/src/com/android/settingslib/wifi/WifiUtils.java +23 −0 Original line number Original line Diff line number Diff line Loading @@ -21,6 +21,7 @@ import static android.net.wifi.WifiConfiguration.NetworkSelectionStatus.getMaxNe import android.content.Context; import android.content.Context; import android.content.Intent; import android.content.Intent; import android.graphics.drawable.Drawable; import android.net.wifi.ScanResult; import android.net.wifi.ScanResult; import android.net.wifi.WifiConfiguration; import android.net.wifi.WifiConfiguration; import android.net.wifi.WifiConfiguration.NetworkSelectionStatus; import android.net.wifi.WifiConfiguration.NetworkSelectionStatus; Loading Loading @@ -294,6 +295,28 @@ public class WifiUtils { return noInternet ? NO_INTERNET_WIFI_PIE[level] : WIFI_PIE[level]; return noInternet ? NO_INTERNET_WIFI_PIE[level] : WIFI_PIE[level]; } } /** * Wrapper the {@link #getInternetIconResource} for testing compatibility. */ public static class InternetIconInjector { protected final Context mContext; public InternetIconInjector(Context context) { mContext = context; } /** * Returns the Internet icon for a given RSSI level. * * @param noInternet True if a connected Wi-Fi network cannot access the Internet * @param level The number of bars to show (0-4) */ public Drawable getIcon(boolean noInternet, int level) { return mContext.getDrawable(WifiUtils.getInternetIconResource(level, noInternet)); } } public static boolean isMeteredOverridden(WifiConfiguration config) { public static boolean isMeteredOverridden(WifiConfiguration config) { return config.meteredOverride != WifiConfiguration.METERED_OVERRIDE_NONE; return config.meteredOverride != WifiConfiguration.METERED_OVERRIDE_NONE; } } Loading
packages/SettingsLib/tests/robotests/src/com/android/settingslib/wifi/WifiUtilsTest.java +20 −2 Original line number Original line Diff line number Diff line Loading @@ -20,6 +20,8 @@ import static com.google.common.truth.Truth.assertThat; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.Mockito.any; import static org.mockito.Mockito.any; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import static org.mockito.Mockito.when; import android.content.Context; import android.content.Context; Loading @@ -37,6 +39,8 @@ import android.os.SystemClock; import android.text.format.DateUtils; import android.text.format.DateUtils; import android.util.ArraySet; import android.util.ArraySet; import androidx.test.core.app.ApplicationProvider; import com.android.settingslib.R; import com.android.settingslib.R; import org.junit.Before; import org.junit.Before; Loading @@ -45,7 +49,6 @@ import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.mockito.MockitoAnnotations; import org.robolectric.RobolectricTestRunner; import org.robolectric.RobolectricTestRunner; import org.robolectric.RuntimeEnvironment; import java.util.ArrayList; import java.util.ArrayList; import java.util.Set; import java.util.Set; Loading @@ -70,7 +73,7 @@ public class WifiUtilsTest { @Before @Before public void setUp() { public void setUp() { MockitoAnnotations.initMocks(this); MockitoAnnotations.initMocks(this); mContext = RuntimeEnvironment.application; mContext = spy(ApplicationProvider.getApplicationContext()); } } @Test @Test Loading Loading @@ -160,6 +163,21 @@ public class WifiUtilsTest { assertThat(bundle.getString(WifiUtils.KEY_CHOSEN_WIFIENTRY_KEY)).isEqualTo(key); assertThat(bundle.getString(WifiUtils.KEY_CHOSEN_WIFIENTRY_KEY)).isEqualTo(key); } } @Test public void testInternetIconInjector_getIcon_returnsCorrectValues() { WifiUtils.InternetIconInjector iconInjector = new WifiUtils.InternetIconInjector(mContext); for (int level = 0; level <= 4; level++) { iconInjector.getIcon(false /* noInternet */, level); verify(mContext).getDrawable( WifiUtils.getInternetIconResource(level, false /* noInternet */)); iconInjector.getIcon(true /* noInternet */, level); verify(mContext).getDrawable( WifiUtils.getInternetIconResource(level, true /* noInternet */)); } } private static ArrayList<ScanResult> buildScanResultCache() { private static ArrayList<ScanResult> buildScanResultCache() { ArrayList<ScanResult> scanResults = new ArrayList<>(); ArrayList<ScanResult> scanResults = new ArrayList<>(); for (int i = 0; i < 5; i++) { for (int i = 0; i < 5; i++) { Loading