| Index: chrome/android/junit/src/org/chromium/chrome/browser/omnibox/geo/PlatformNetworksManagerTest.java
|
| diff --git a/chrome/android/junit/src/org/chromium/chrome/browser/omnibox/geo/PlatformNetworksManagerTest.java b/chrome/android/junit/src/org/chromium/chrome/browser/omnibox/geo/PlatformNetworksManagerTest.java
|
| index 2d668f7539737eff56e858f2266320a98c9aaf6b..1c750820746a6cbac3e7c9e5f69df60eab1ca04e 100644
|
| --- a/chrome/android/junit/src/org/chromium/chrome/browser/omnibox/geo/PlatformNetworksManagerTest.java
|
| +++ b/chrome/android/junit/src/org/chromium/chrome/browser/omnibox/geo/PlatformNetworksManagerTest.java
|
| @@ -7,12 +7,16 @@ package org.chromium.chrome.browser.omnibox.geo;
|
| import static org.junit.Assert.assertEquals;
|
| import static org.junit.Assert.assertNull;
|
| import static org.junit.Assert.assertTrue;
|
| +import static org.mockito.Matchers.argThat;
|
| import static org.mockito.Mockito.any;
|
| import static org.mockito.Mockito.eq;
|
| +import static org.mockito.Mockito.verify;
|
| import static org.mockito.Mockito.when;
|
|
|
| import android.Manifest;
|
| import android.content.Context;
|
| +import android.content.Intent;
|
| +import android.content.IntentFilter;
|
| import android.content.pm.PackageManager;
|
| import android.net.ConnectivityManager;
|
| import android.net.NetworkInfo;
|
| @@ -33,6 +37,7 @@ import android.telephony.TelephonyManager;
|
| import org.junit.Before;
|
| import org.junit.Test;
|
| import org.junit.runner.RunWith;
|
| +import org.mockito.ArgumentMatcher;
|
| import org.mockito.Mock;
|
| import org.mockito.MockitoAnnotations;
|
| import org.robolectric.annotation.Config;
|
| @@ -140,6 +145,8 @@ public class PlatformNetworksManagerTest {
|
| private CellIdentityGsm mCellIdentityGsm;
|
| @Mock
|
| private CellIdentityCdma mCellIdentityCdma;
|
| + @Mock
|
| + private Intent mNetworkStateChangedIntent;
|
|
|
| @Before
|
| public void setUp() {
|
| @@ -220,6 +227,11 @@ public class PlatformNetworksManagerTest {
|
| .thenReturn(
|
| Arrays.asList(mCellInfoLte, mCellInfoWcdma, mCellInfoGsm, mCellInfoCdma));
|
| allPermissionsGranted();
|
| +
|
| + when(mContext.registerReceiver(eq(null), any(IntentFilter.class)))
|
| + .thenReturn(mNetworkStateChangedIntent);
|
| + when(mNetworkStateChangedIntent.getParcelableExtra(eq(WifiManager.EXTRA_WIFI_INFO)))
|
| + .thenReturn(mWifiInfo);
|
| }
|
|
|
| @Test
|
| @@ -368,11 +380,26 @@ public class PlatformNetworksManagerTest {
|
|
|
| @Test
|
| public void testGetConnectedWifi_locationGrantedWifiDenied() {
|
| - ReflectionHelpers.setStaticField(Build.VERSION.class, "SDK_INT", Build.VERSION_CODES.M);
|
| + ReflectionHelpers.setStaticField(
|
| + Build.VERSION.class, "SDK_INT", Build.VERSION_CODES.LOLLIPOP);
|
| locationGrantedWifiDenied();
|
| VisibleWifi visibleWifi = PlatformNetworksManager.getConnectedWifi(mContext, mWifiManager);
|
| + assertEquals(CONNECTED_WIFI, visibleWifi);
|
| + assertEquals(Long.valueOf(CURRENT_TIME_MS), visibleWifi.timestampMs());
|
| + verifyNetworkStateAction();
|
| + }
|
| +
|
| + @Test
|
| + public void testGetConnectedWifi_locationGrantedWifiDenied_noWifiInfo() {
|
| + ReflectionHelpers.setStaticField(
|
| + Build.VERSION.class, "SDK_INT", Build.VERSION_CODES.LOLLIPOP);
|
| + locationGrantedWifiDenied();
|
| + when(mNetworkStateChangedIntent.getParcelableExtra(eq(WifiManager.EXTRA_WIFI_INFO)))
|
| + .thenReturn(null);
|
| + VisibleWifi visibleWifi = PlatformNetworksManager.getConnectedWifi(mContext, mWifiManager);
|
| assertEquals(UNKNOWN_VISIBLE_WIFI, visibleWifi);
|
| assertNull(visibleWifi.timestampMs());
|
| + verifyNetworkStateAction();
|
| }
|
|
|
| @Test
|
| @@ -488,14 +515,15 @@ public class PlatformNetworksManagerTest {
|
| Set<VisibleCell> expectedVisibleCells =
|
| new HashSet<VisibleCell>(Arrays.asList(LTE_CELL, WCDMA_CELL, GSM_CELL, CDMA_CELL));
|
| Set<VisibleWifi> expectedVisibleWifis = Collections.emptySet();
|
| - VisibleNetworks expectedVisibleNetworks =
|
| - VisibleNetworks.create(null, LTE_CELL, expectedVisibleWifis, expectedVisibleCells);
|
| + VisibleNetworks expectedVisibleNetworks = VisibleNetworks.create(
|
| + CONNECTED_WIFI, LTE_CELL, expectedVisibleWifis, expectedVisibleCells);
|
| locationGrantedWifiDenied();
|
|
|
| VisibleNetworks visibleNetworks = PlatformNetworksManager.computeVisibleNetworks(
|
| mContext, true /* includeAllVisibleNotConnectedNetworks */);
|
|
|
| assertEquals(expectedVisibleNetworks, visibleNetworks);
|
| + verifyNetworkStateAction();
|
| }
|
|
|
| @Test
|
| @@ -547,4 +575,13 @@ public class PlatformNetworksManagerTest {
|
| any(Integer.class)))
|
| .thenReturn(wifiStatePermission);
|
| }
|
| +
|
| + private void verifyNetworkStateAction() {
|
| + verify(mContext).registerReceiver(eq(null), argThat(new ArgumentMatcher<IntentFilter>() {
|
| + @Override
|
| + public boolean matches(IntentFilter intentFilter) {
|
| + return intentFilter.hasAction(WifiManager.NETWORK_STATE_CHANGED_ACTION);
|
| + }
|
| + }));
|
| + }
|
| }
|
|
|