Loading packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java +1 −1 Original line number Original line Diff line number Diff line Loading @@ -1084,7 +1084,7 @@ public class AccessPoint implements Comparable<AccessPoint> { // are still seen, we will investigate further. // are still seen, we will investigate further. update(config); // Notifies the AccessPointListener of the change update(config); // Notifies the AccessPointListener of the change } } if (mRssi != info.getRssi()) { if (mRssi != info.getRssi() && info.getRssi() != WifiInfo.INVALID_RSSI) { mRssi = info.getRssi(); mRssi = info.getRssi(); updated = true; updated = true; } else if (mNetworkInfo != null && networkInfo != null } else if (mNetworkInfo != null && networkInfo != null Loading packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java +51 −0 Original line number Original line Diff line number Diff line Loading @@ -654,6 +654,57 @@ public class AccessPointTest { assertThat(ap.update(config, wifiInfo, newInfo)).isFalse(); assertThat(ap.update(config, wifiInfo, newInfo)).isFalse(); } } @Test public void testUpdateWithDifferentRssi_returnsTrue() { int networkId = 123; int rssi = -55; WifiConfiguration config = new WifiConfiguration(); config.networkId = networkId; WifiInfo wifiInfo = new WifiInfo(); wifiInfo.setNetworkId(networkId); wifiInfo.setRssi(rssi); NetworkInfo networkInfo = new NetworkInfo(ConnectivityManager.TYPE_WIFI, 0 /* subtype */, "WIFI", ""); networkInfo.setDetailedState(NetworkInfo.DetailedState.CONNECTING, "", ""); AccessPoint ap = new TestAccessPointBuilder(mContext) .setNetworkInfo(networkInfo) .setNetworkId(networkId) .setRssi(rssi) .setWifiInfo(wifiInfo) .build(); NetworkInfo newInfo = new NetworkInfo(networkInfo); // same values wifiInfo.setRssi(rssi + 1); assertThat(ap.update(config, wifiInfo, newInfo)).isTrue(); } @Test public void testUpdateWithInvalidRssi_returnsFalse() { int networkId = 123; int rssi = -55; WifiConfiguration config = new WifiConfiguration(); config.networkId = networkId; WifiInfo wifiInfo = new WifiInfo(); wifiInfo.setNetworkId(networkId); wifiInfo.setRssi(rssi); NetworkInfo networkInfo = new NetworkInfo(ConnectivityManager.TYPE_WIFI, 0 /* subtype */, "WIFI", ""); networkInfo.setDetailedState(NetworkInfo.DetailedState.CONNECTING, "", ""); AccessPoint ap = new TestAccessPointBuilder(mContext) .setNetworkInfo(networkInfo) .setNetworkId(networkId) .setRssi(rssi) .setWifiInfo(wifiInfo) .build(); NetworkInfo newInfo = new NetworkInfo(networkInfo); // same values wifiInfo.setRssi(WifiInfo.INVALID_RSSI); assertThat(ap.update(config, wifiInfo, newInfo)).isFalse(); } @Test @Test public void testUpdateWithConfigChangeOnly_returnsFalseButInvokesListener() { public void testUpdateWithConfigChangeOnly_returnsFalseButInvokesListener() { int networkId = 123; int networkId = 123; Loading Loading
packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java +1 −1 Original line number Original line Diff line number Diff line Loading @@ -1084,7 +1084,7 @@ public class AccessPoint implements Comparable<AccessPoint> { // are still seen, we will investigate further. // are still seen, we will investigate further. update(config); // Notifies the AccessPointListener of the change update(config); // Notifies the AccessPointListener of the change } } if (mRssi != info.getRssi()) { if (mRssi != info.getRssi() && info.getRssi() != WifiInfo.INVALID_RSSI) { mRssi = info.getRssi(); mRssi = info.getRssi(); updated = true; updated = true; } else if (mNetworkInfo != null && networkInfo != null } else if (mNetworkInfo != null && networkInfo != null Loading
packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java +51 −0 Original line number Original line Diff line number Diff line Loading @@ -654,6 +654,57 @@ public class AccessPointTest { assertThat(ap.update(config, wifiInfo, newInfo)).isFalse(); assertThat(ap.update(config, wifiInfo, newInfo)).isFalse(); } } @Test public void testUpdateWithDifferentRssi_returnsTrue() { int networkId = 123; int rssi = -55; WifiConfiguration config = new WifiConfiguration(); config.networkId = networkId; WifiInfo wifiInfo = new WifiInfo(); wifiInfo.setNetworkId(networkId); wifiInfo.setRssi(rssi); NetworkInfo networkInfo = new NetworkInfo(ConnectivityManager.TYPE_WIFI, 0 /* subtype */, "WIFI", ""); networkInfo.setDetailedState(NetworkInfo.DetailedState.CONNECTING, "", ""); AccessPoint ap = new TestAccessPointBuilder(mContext) .setNetworkInfo(networkInfo) .setNetworkId(networkId) .setRssi(rssi) .setWifiInfo(wifiInfo) .build(); NetworkInfo newInfo = new NetworkInfo(networkInfo); // same values wifiInfo.setRssi(rssi + 1); assertThat(ap.update(config, wifiInfo, newInfo)).isTrue(); } @Test public void testUpdateWithInvalidRssi_returnsFalse() { int networkId = 123; int rssi = -55; WifiConfiguration config = new WifiConfiguration(); config.networkId = networkId; WifiInfo wifiInfo = new WifiInfo(); wifiInfo.setNetworkId(networkId); wifiInfo.setRssi(rssi); NetworkInfo networkInfo = new NetworkInfo(ConnectivityManager.TYPE_WIFI, 0 /* subtype */, "WIFI", ""); networkInfo.setDetailedState(NetworkInfo.DetailedState.CONNECTING, "", ""); AccessPoint ap = new TestAccessPointBuilder(mContext) .setNetworkInfo(networkInfo) .setNetworkId(networkId) .setRssi(rssi) .setWifiInfo(wifiInfo) .build(); NetworkInfo newInfo = new NetworkInfo(networkInfo); // same values wifiInfo.setRssi(WifiInfo.INVALID_RSSI); assertThat(ap.update(config, wifiInfo, newInfo)).isFalse(); } @Test @Test public void testUpdateWithConfigChangeOnly_returnsFalseButInvokesListener() { public void testUpdateWithConfigChangeOnly_returnsFalseButInvokesListener() { int networkId = 123; int networkId = 123; Loading