Fetch the WiFiInfo from NetworkCapabilities
Bug: 176812688 Test: atest NetworkControllerWifiTest, Manual tests Change-Id: Ie3655f044bda020b51e8342efea58757b8b7cbc4
This commit is contained in:
@@ -66,31 +66,40 @@ public class WifiStatusTracker {
|
|||||||
@Override
|
@Override
|
||||||
public void onCapabilitiesChanged(
|
public void onCapabilitiesChanged(
|
||||||
Network network, NetworkCapabilities networkCapabilities) {
|
Network network, NetworkCapabilities networkCapabilities) {
|
||||||
|
WifiInfo wifiInfo = (WifiInfo) networkCapabilities.getTransportInfo();
|
||||||
|
updateWifiInfo(wifiInfo);
|
||||||
|
updateStatusLabel();
|
||||||
|
mCallback.run();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onLost(Network network) {
|
||||||
|
updateWifiInfo(null);
|
||||||
updateStatusLabel();
|
updateStatusLabel();
|
||||||
mCallback.run();
|
mCallback.run();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
private final NetworkCallback mDefaultNetworkCallback = new NetworkCallback() {
|
private final NetworkCallback mDefaultNetworkCallback = new NetworkCallback() {
|
||||||
@Override
|
@Override
|
||||||
public void onCapabilitiesChanged(Network network, NetworkCapabilities nc) {
|
public void onCapabilitiesChanged(Network network, NetworkCapabilities nc) {
|
||||||
// network is now the default network, and its capabilities are nc.
|
// network is now the default network, and its capabilities are nc.
|
||||||
// This method will always be called immediately after the network becomes the
|
// This method will always be called immediately after the network becomes the
|
||||||
// default, in addition to any time the capabilities change while the network is
|
// default, in addition to any time the capabilities change while the network is
|
||||||
// the default.
|
// the default.
|
||||||
mDefaultNetwork = network;
|
mDefaultNetwork = network;
|
||||||
mDefaultNetworkCapabilities = nc;
|
mDefaultNetworkCapabilities = nc;
|
||||||
updateStatusLabel();
|
updateStatusLabel();
|
||||||
mCallback.run();
|
mCallback.run();
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public void onLost(Network network) {
|
public void onLost(Network network) {
|
||||||
// The system no longer has a default network.
|
// The system no longer has a default network.
|
||||||
mDefaultNetwork = null;
|
mDefaultNetwork = null;
|
||||||
mDefaultNetworkCapabilities = null;
|
mDefaultNetworkCapabilities = null;
|
||||||
updateStatusLabel();
|
updateStatusLabel();
|
||||||
mCallback.run();
|
mCallback.run();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
private Network mDefaultNetwork = null;
|
private Network mDefaultNetwork = null;
|
||||||
private NetworkCapabilities mDefaultNetworkCapabilities = null;
|
private NetworkCapabilities mDefaultNetworkCapabilities = null;
|
||||||
private final Runnable mCallback;
|
private final Runnable mCallback;
|
||||||
@@ -170,32 +179,22 @@ public class WifiStatusTracker {
|
|||||||
String action = intent.getAction();
|
String action = intent.getAction();
|
||||||
if (action.equals(WifiManager.WIFI_STATE_CHANGED_ACTION)) {
|
if (action.equals(WifiManager.WIFI_STATE_CHANGED_ACTION)) {
|
||||||
updateWifiState();
|
updateWifiState();
|
||||||
} else if (action.equals(WifiManager.NETWORK_STATE_CHANGED_ACTION)) {
|
}
|
||||||
updateWifiState();
|
}
|
||||||
final NetworkInfo networkInfo =
|
|
||||||
intent.getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);
|
private void updateWifiInfo(WifiInfo wifiInfo) {
|
||||||
connected = networkInfo != null && networkInfo.isConnected();
|
updateWifiState();
|
||||||
mWifiInfo = null;
|
connected = wifiInfo != null;
|
||||||
ssid = null;
|
mWifiInfo = wifiInfo;
|
||||||
if (connected) {
|
ssid = null;
|
||||||
mWifiInfo = mWifiManager.getConnectionInfo();
|
if (mWifiInfo != null) {
|
||||||
if (mWifiInfo != null) {
|
if (mWifiInfo.isPasspointAp() || mWifiInfo.isOsuAp()) {
|
||||||
if (mWifiInfo.isPasspointAp() || mWifiInfo.isOsuAp()) {
|
ssid = mWifiInfo.getPasspointProviderFriendlyName();
|
||||||
ssid = mWifiInfo.getPasspointProviderFriendlyName();
|
} else {
|
||||||
} else {
|
ssid = getValidSsid(mWifiInfo);
|
||||||
ssid = getValidSsid(mWifiInfo);
|
|
||||||
}
|
|
||||||
updateRssi(mWifiInfo.getRssi());
|
|
||||||
maybeRequestNetworkScore();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
updateStatusLabel();
|
updateRssi(mWifiInfo.getRssi());
|
||||||
mCallback.run();
|
maybeRequestNetworkScore();
|
||||||
} else if (action.equals(WifiManager.RSSI_CHANGED_ACTION)) {
|
|
||||||
// Default to -200 as its below WifiManager.MIN_RSSI.
|
|
||||||
updateRssi(intent.getIntExtra(WifiManager.EXTRA_NEW_RSSI, -200));
|
|
||||||
updateStatusLabel();
|
|
||||||
mCallback.run();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -359,8 +359,6 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
|
|
||||||
// broadcasts
|
// broadcasts
|
||||||
IntentFilter filter = new IntentFilter();
|
IntentFilter filter = new IntentFilter();
|
||||||
filter.addAction(WifiManager.RSSI_CHANGED_ACTION);
|
|
||||||
filter.addAction(WifiManager.WIFI_STATE_CHANGED_ACTION);
|
|
||||||
filter.addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION);
|
filter.addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION);
|
||||||
filter.addAction(Intent.ACTION_SIM_STATE_CHANGED);
|
filter.addAction(Intent.ACTION_SIM_STATE_CHANGED);
|
||||||
filter.addAction(TelephonyManager.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED);
|
filter.addAction(TelephonyManager.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED);
|
||||||
|
|||||||
@@ -104,11 +104,7 @@ public class WifiSignalController extends
|
|||||||
wifiDesc, mCurrentState.isTransient, mCurrentState.statusLabel);
|
wifiDesc, mCurrentState.isTransient, mCurrentState.statusLabel);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
private void copyWifiStates() {
|
||||||
* Fetches wifi initial state replacing the initial sticky broadcast.
|
|
||||||
*/
|
|
||||||
public void fetchInitialState() {
|
|
||||||
mWifiTracker.fetchInitialState();
|
|
||||||
mCurrentState.enabled = mWifiTracker.enabled;
|
mCurrentState.enabled = mWifiTracker.enabled;
|
||||||
mCurrentState.isDefault = mWifiTracker.isDefaultNetwork;
|
mCurrentState.isDefault = mWifiTracker.isDefaultNetwork;
|
||||||
mCurrentState.connected = mWifiTracker.connected;
|
mCurrentState.connected = mWifiTracker.connected;
|
||||||
@@ -116,6 +112,14 @@ public class WifiSignalController extends
|
|||||||
mCurrentState.rssi = mWifiTracker.rssi;
|
mCurrentState.rssi = mWifiTracker.rssi;
|
||||||
mCurrentState.level = mWifiTracker.level;
|
mCurrentState.level = mWifiTracker.level;
|
||||||
mCurrentState.statusLabel = mWifiTracker.statusLabel;
|
mCurrentState.statusLabel = mWifiTracker.statusLabel;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fetches wifi initial state replacing the initial sticky broadcast.
|
||||||
|
*/
|
||||||
|
public void fetchInitialState() {
|
||||||
|
mWifiTracker.fetchInitialState();
|
||||||
|
copyWifiStates();
|
||||||
notifyListenersIfNecessary();
|
notifyListenersIfNecessary();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -124,19 +128,12 @@ public class WifiSignalController extends
|
|||||||
*/
|
*/
|
||||||
public void handleBroadcast(Intent intent) {
|
public void handleBroadcast(Intent intent) {
|
||||||
mWifiTracker.handleBroadcast(intent);
|
mWifiTracker.handleBroadcast(intent);
|
||||||
mCurrentState.enabled = mWifiTracker.enabled;
|
copyWifiStates();
|
||||||
mCurrentState.isDefault = mWifiTracker.isDefaultNetwork;
|
|
||||||
mCurrentState.connected = mWifiTracker.connected;
|
|
||||||
mCurrentState.ssid = mWifiTracker.ssid;
|
|
||||||
mCurrentState.rssi = mWifiTracker.rssi;
|
|
||||||
mCurrentState.level = mWifiTracker.level;
|
|
||||||
mCurrentState.statusLabel = mWifiTracker.statusLabel;
|
|
||||||
notifyListenersIfNecessary();
|
notifyListenersIfNecessary();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void handleStatusUpdated() {
|
private void handleStatusUpdated() {
|
||||||
mCurrentState.statusLabel = mWifiTracker.statusLabel;
|
copyWifiStates();
|
||||||
mCurrentState.isDefault = mWifiTracker.isDefaultNetwork;
|
|
||||||
notifyListenersIfNecessary();
|
notifyListenersIfNecessary();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -40,7 +40,9 @@ import android.content.Intent;
|
|||||||
import android.net.ConnectivityManager;
|
import android.net.ConnectivityManager;
|
||||||
import android.net.Network;
|
import android.net.Network;
|
||||||
import android.net.NetworkCapabilities;
|
import android.net.NetworkCapabilities;
|
||||||
|
import android.net.NetworkRequest;
|
||||||
import android.net.NetworkScoreManager;
|
import android.net.NetworkScoreManager;
|
||||||
|
import android.net.wifi.WifiInfo;
|
||||||
import android.net.wifi.WifiManager;
|
import android.net.wifi.WifiManager;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
@@ -119,6 +121,7 @@ public class NetworkControllerBaseTest extends SysuiTestCase {
|
|||||||
protected int mSubId;
|
protected int mSubId;
|
||||||
|
|
||||||
private NetworkCapabilities mNetCapabilities;
|
private NetworkCapabilities mNetCapabilities;
|
||||||
|
private ConnectivityManager.NetworkCallback mDefaultNetworkCallback;
|
||||||
private ConnectivityManager.NetworkCallback mNetworkCallback;
|
private ConnectivityManager.NetworkCallback mNetworkCallback;
|
||||||
|
|
||||||
@Rule
|
@Rule
|
||||||
@@ -232,6 +235,10 @@ public class NetworkControllerBaseTest extends SysuiTestCase {
|
|||||||
ArgumentCaptor.forClass(ConnectivityManager.NetworkCallback.class);
|
ArgumentCaptor.forClass(ConnectivityManager.NetworkCallback.class);
|
||||||
verify(mMockCm, atLeastOnce())
|
verify(mMockCm, atLeastOnce())
|
||||||
.registerDefaultNetworkCallback(callbackArg.capture(), isA(Handler.class));
|
.registerDefaultNetworkCallback(callbackArg.capture(), isA(Handler.class));
|
||||||
|
mDefaultNetworkCallback = callbackArg.getValue();
|
||||||
|
assertNotNull(mDefaultNetworkCallback);
|
||||||
|
verify(mMockCm, atLeastOnce()).registerNetworkCallback(
|
||||||
|
isA(NetworkRequest.class), callbackArg.capture(), isA(Handler.class));
|
||||||
mNetworkCallback = callbackArg.getValue();
|
mNetworkCallback = callbackArg.getValue();
|
||||||
assertNotNull(mNetworkCallback);
|
assertNotNull(mNetworkCallback);
|
||||||
}
|
}
|
||||||
@@ -288,10 +295,19 @@ public class NetworkControllerBaseTest extends SysuiTestCase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void setConnectivityViaCallback(
|
public void setConnectivityViaCallback(
|
||||||
int networkType, boolean validated, boolean isConnected){
|
int networkType, boolean validated, boolean isConnected, WifiInfo wifiInfo) {
|
||||||
|
mNetCapabilities.setTransportInfo(wifiInfo);
|
||||||
setConnectivityCommon(networkType, validated, isConnected);
|
setConnectivityCommon(networkType, validated, isConnected);
|
||||||
mNetworkCallback.onCapabilitiesChanged(
|
mDefaultNetworkCallback.onCapabilitiesChanged(
|
||||||
mock(Network.class), new NetworkCapabilities(mNetCapabilities));
|
mock(Network.class), new NetworkCapabilities(mNetCapabilities));
|
||||||
|
if (networkType == NetworkCapabilities.TRANSPORT_WIFI) {
|
||||||
|
if (isConnected) {
|
||||||
|
mNetworkCallback.onCapabilitiesChanged(
|
||||||
|
mock(Network.class), new NetworkCapabilities(mNetCapabilities));
|
||||||
|
} else {
|
||||||
|
mNetworkCallback.onLost(mock(Network.class));
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setConnectivityCommon(
|
private void setConnectivityCommon(
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest {
|
|||||||
// These match the constants in WifiManager and need to be kept up to date.
|
// These match the constants in WifiManager and need to be kept up to date.
|
||||||
private static final int MIN_RSSI = -100;
|
private static final int MIN_RSSI = -100;
|
||||||
private static final int MAX_RSSI = -55;
|
private static final int MAX_RSSI = -55;
|
||||||
|
private WifiInfo mWifiInfo = mock(WifiInfo.class);
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testWifiIcon() {
|
public void testWifiIcon() {
|
||||||
@@ -41,15 +42,16 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest {
|
|||||||
|
|
||||||
setWifiState(true, testSsid);
|
setWifiState(true, testSsid);
|
||||||
setWifiLevel(0);
|
setWifiLevel(0);
|
||||||
|
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_WIFI, false, true, mWifiInfo);
|
||||||
// Connected, but still not validated - does not show
|
// Connected, but still not validated - does not show
|
||||||
verifyLastWifiIcon(false, WifiIcons.WIFI_SIGNAL_STRENGTH[0][0]);
|
verifyLastWifiIcon(false, WifiIcons.WIFI_SIGNAL_STRENGTH[0][0]);
|
||||||
|
|
||||||
for (int testLevel = 0; testLevel < WifiIcons.WIFI_LEVEL_COUNT; testLevel++) {
|
for (int testLevel = 0; testLevel < WifiIcons.WIFI_LEVEL_COUNT; testLevel++) {
|
||||||
setWifiLevel(testLevel);
|
setWifiLevel(testLevel);
|
||||||
|
|
||||||
setConnectivityViaBroadcast(NetworkCapabilities.TRANSPORT_WIFI, true, true);
|
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_WIFI, true, true, mWifiInfo);
|
||||||
verifyLastWifiIcon(true, WifiIcons.WIFI_SIGNAL_STRENGTH[1][testLevel]);
|
verifyLastWifiIcon(true, WifiIcons.WIFI_SIGNAL_STRENGTH[1][testLevel]);
|
||||||
setConnectivityViaBroadcast(NetworkCapabilities.TRANSPORT_WIFI, false, true);
|
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_WIFI, false, true, mWifiInfo);
|
||||||
// Icon does not show if not validated
|
// Icon does not show if not validated
|
||||||
verifyLastWifiIcon(false, WifiIcons.WIFI_SIGNAL_STRENGTH[0][testLevel]);
|
verifyLastWifiIcon(false, WifiIcons.WIFI_SIGNAL_STRENGTH[0][testLevel]);
|
||||||
}
|
}
|
||||||
@@ -69,10 +71,10 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest {
|
|||||||
for (int testLevel = 0; testLevel < WifiIcons.WIFI_LEVEL_COUNT; testLevel++) {
|
for (int testLevel = 0; testLevel < WifiIcons.WIFI_LEVEL_COUNT; testLevel++) {
|
||||||
setWifiLevel(testLevel);
|
setWifiLevel(testLevel);
|
||||||
|
|
||||||
setConnectivityViaBroadcast(NetworkCapabilities.TRANSPORT_WIFI, true, true);
|
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_WIFI, true, true, mWifiInfo);
|
||||||
verifyLastQsWifiIcon(true, true, WifiIcons.QS_WIFI_SIGNAL_STRENGTH[1][testLevel],
|
verifyLastQsWifiIcon(true, true, WifiIcons.QS_WIFI_SIGNAL_STRENGTH[1][testLevel],
|
||||||
testSsid);
|
testSsid);
|
||||||
setConnectivityViaBroadcast(NetworkCapabilities.TRANSPORT_WIFI, false, true);
|
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_WIFI, false, true, mWifiInfo);
|
||||||
verifyLastQsWifiIcon(true, true, WifiIcons.QS_WIFI_SIGNAL_STRENGTH[0][testLevel],
|
verifyLastQsWifiIcon(true, true, WifiIcons.QS_WIFI_SIGNAL_STRENGTH[0][testLevel],
|
||||||
testSsid);
|
testSsid);
|
||||||
}
|
}
|
||||||
@@ -86,7 +88,7 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest {
|
|||||||
setWifiEnabled(true);
|
setWifiEnabled(true);
|
||||||
setWifiState(true, testSsid);
|
setWifiState(true, testSsid);
|
||||||
setWifiLevel(testLevel);
|
setWifiLevel(testLevel);
|
||||||
setConnectivityViaBroadcast(NetworkCapabilities.TRANSPORT_WIFI, true, true);
|
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_WIFI, true, true, mWifiInfo);
|
||||||
verifyLastQsWifiIcon(true, true,
|
verifyLastQsWifiIcon(true, true,
|
||||||
WifiIcons.QS_WIFI_SIGNAL_STRENGTH[1][testLevel], testSsid);
|
WifiIcons.QS_WIFI_SIGNAL_STRENGTH[1][testLevel], testSsid);
|
||||||
|
|
||||||
@@ -111,14 +113,14 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest {
|
|||||||
setWifiEnabled(true);
|
setWifiEnabled(true);
|
||||||
setWifiState(true, testSsid);
|
setWifiState(true, testSsid);
|
||||||
setWifiLevel(testLevel);
|
setWifiLevel(testLevel);
|
||||||
setConnectivityViaBroadcast(NetworkCapabilities.TRANSPORT_WIFI, true, true);
|
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_WIFI, true, true, mWifiInfo);
|
||||||
verifyLastWifiIcon(true, WifiIcons.WIFI_SIGNAL_STRENGTH[1][testLevel]);
|
verifyLastWifiIcon(true, WifiIcons.WIFI_SIGNAL_STRENGTH[1][testLevel]);
|
||||||
|
|
||||||
setupDefaultSignal();
|
setupDefaultSignal();
|
||||||
setGsmRoaming(true);
|
setGsmRoaming(true);
|
||||||
// Still be on wifi though.
|
// Still be on wifi though.
|
||||||
setConnectivityViaBroadcast(NetworkCapabilities.TRANSPORT_WIFI, true, true);
|
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_WIFI, true, true, mWifiInfo);
|
||||||
setConnectivityViaBroadcast(NetworkCapabilities.TRANSPORT_CELLULAR, false, false);
|
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_CELLULAR, false, false, mWifiInfo);
|
||||||
verifyLastMobileDataIndicators(true,
|
verifyLastMobileDataIndicators(true,
|
||||||
DEFAULT_LEVEL,
|
DEFAULT_LEVEL,
|
||||||
0, true);
|
0, true);
|
||||||
@@ -132,10 +134,10 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest {
|
|||||||
setWifiEnabled(true);
|
setWifiEnabled(true);
|
||||||
setWifiState(true, testSsid);
|
setWifiState(true, testSsid);
|
||||||
setWifiLevel(testLevel);
|
setWifiLevel(testLevel);
|
||||||
setConnectivityViaBroadcast(NetworkCapabilities.TRANSPORT_WIFI, true, true);
|
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_WIFI, true, true, mWifiInfo);
|
||||||
verifyLastWifiIcon(true, WifiIcons.WIFI_SIGNAL_STRENGTH[1][testLevel]);
|
verifyLastWifiIcon(true, WifiIcons.WIFI_SIGNAL_STRENGTH[1][testLevel]);
|
||||||
|
|
||||||
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_WIFI, false, true);
|
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_WIFI, false, true, mWifiInfo);
|
||||||
verifyLastWifiIcon(false, WifiIcons.WIFI_SIGNAL_STRENGTH[0][testLevel]);
|
verifyLastWifiIcon(false, WifiIcons.WIFI_SIGNAL_STRENGTH[0][testLevel]);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -147,11 +149,11 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest {
|
|||||||
setWifiEnabled(true);
|
setWifiEnabled(true);
|
||||||
setWifiState(true, testSsid);
|
setWifiState(true, testSsid);
|
||||||
setWifiLevel(testLevel);
|
setWifiLevel(testLevel);
|
||||||
setConnectivityViaBroadcast(NetworkCapabilities.TRANSPORT_WIFI, true, true);
|
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_WIFI, true, true, mWifiInfo);
|
||||||
verifyLastWifiIcon(true, WifiIcons.WIFI_SIGNAL_STRENGTH[1][testLevel]);
|
verifyLastWifiIcon(true, WifiIcons.WIFI_SIGNAL_STRENGTH[1][testLevel]);
|
||||||
|
|
||||||
setWifiState(false, testSsid);
|
setWifiState(false, testSsid);
|
||||||
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_WIFI, false, false);
|
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_WIFI, false, false, mWifiInfo);
|
||||||
verifyLastWifiIcon(false, WifiIcons.WIFI_NO_NETWORK);
|
verifyLastWifiIcon(false, WifiIcons.WIFI_NO_NETWORK);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -162,14 +164,14 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest {
|
|||||||
setWifiEnabled(true);
|
setWifiEnabled(true);
|
||||||
verifyLastWifiIcon(false, WifiIcons.WIFI_NO_NETWORK);
|
verifyLastWifiIcon(false, WifiIcons.WIFI_NO_NETWORK);
|
||||||
|
|
||||||
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_VPN, false, true);
|
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_VPN, false, true, mWifiInfo);
|
||||||
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_VPN, true, true);
|
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_VPN, true, true, mWifiInfo);
|
||||||
verifyLastWifiIcon(false, WifiIcons.WIFI_NO_NETWORK);
|
verifyLastWifiIcon(false, WifiIcons.WIFI_NO_NETWORK);
|
||||||
|
|
||||||
// Mock calling setUnderlyingNetworks.
|
// Mock calling setUnderlyingNetworks.
|
||||||
setWifiState(true, testSsid);
|
setWifiState(true, testSsid);
|
||||||
setWifiLevel(testLevel);
|
setWifiLevel(testLevel);
|
||||||
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_WIFI, true, true);
|
setConnectivityViaCallback(NetworkCapabilities.TRANSPORT_WIFI, true, true, mWifiInfo);
|
||||||
verifyLastWifiIcon(true, WifiIcons.WIFI_SIGNAL_STRENGTH[1][testLevel]);
|
verifyLastWifiIcon(true, WifiIcons.WIFI_SIGNAL_STRENGTH[1][testLevel]);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -209,6 +211,7 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest {
|
|||||||
int rssi = (int)(MIN_RSSI + level * amountPerLevel);
|
int rssi = (int)(MIN_RSSI + level * amountPerLevel);
|
||||||
// Put RSSI in the middle of the range.
|
// Put RSSI in the middle of the range.
|
||||||
rssi += amountPerLevel / 2;
|
rssi += amountPerLevel / 2;
|
||||||
|
when(mWifiInfo.getRssi()).thenReturn(rssi);
|
||||||
Intent i = new Intent(WifiManager.RSSI_CHANGED_ACTION);
|
Intent i = new Intent(WifiManager.RSSI_CHANGED_ACTION);
|
||||||
i.putExtra(WifiManager.EXTRA_NEW_RSSI, rssi);
|
i.putExtra(WifiManager.EXTRA_NEW_RSSI, rssi);
|
||||||
mNetworkController.onReceive(mContext, i);
|
mNetworkController.onReceive(mContext, i);
|
||||||
@@ -224,10 +227,8 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest {
|
|||||||
Intent i = new Intent(WifiManager.NETWORK_STATE_CHANGED_ACTION);
|
Intent i = new Intent(WifiManager.NETWORK_STATE_CHANGED_ACTION);
|
||||||
NetworkInfo networkInfo = mock(NetworkInfo.class);
|
NetworkInfo networkInfo = mock(NetworkInfo.class);
|
||||||
when(networkInfo.isConnected()).thenReturn(connected);
|
when(networkInfo.isConnected()).thenReturn(connected);
|
||||||
|
when(mWifiInfo.getSSID()).thenReturn(ssid);
|
||||||
WifiInfo wifiInfo = mock(WifiInfo.class);
|
when(mMockWm.getConnectionInfo()).thenReturn(mWifiInfo);
|
||||||
when(wifiInfo.getSSID()).thenReturn(ssid);
|
|
||||||
when(mMockWm.getConnectionInfo()).thenReturn(wifiInfo);
|
|
||||||
|
|
||||||
i.putExtra(WifiManager.EXTRA_NETWORK_INFO, networkInfo);
|
i.putExtra(WifiManager.EXTRA_NETWORK_INFO, networkInfo);
|
||||||
mNetworkController.onReceive(mContext, i);
|
mNetworkController.onReceive(mContext, i);
|
||||||
|
|||||||
Reference in New Issue
Block a user