summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Walliser <mattwalliser@google.com>2023-09-18 22:58:53 +0000
committerMatt Walliser <mattwalliser@google.com>2023-09-19 15:59:07 +0000
commitac656b737ca7bd14f3f6a26f61eeb568fdcb3699 (patch)
tree713d439293a37ab242362157e7f02916c7d9042f
parenta51b136bd1d89d138bfc749e4a6fd42031aec5ee (diff)
downloadwifi-ac656b737ca7bd14f3f6a26f61eeb568fdcb3699.tar.gz
Fix bug where HotspotNetworkEntry displays connecting after disconnect.
This is caused by the connecting flag not getting reset on connection. Changing HotspotNetworkEntry to use mCalledConnect from base class. Test: atest -c com.android.wifitrackerlib.HotspotNetworkEntryTest Bug: 300996213 Fixes: 300996213 Change-Id: Iaafdcab97dc8457b4d79c4eb7187209a2c6bdc86
-rw-r--r--libs/WifiTrackerLib/src/com/android/wifitrackerlib/HotspotNetworkEntry.java8
-rw-r--r--libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/HotspotNetworkEntryTest.java17
2 files changed, 20 insertions, 5 deletions
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/HotspotNetworkEntry.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/HotspotNetworkEntry.java
index 3edf33d34..9da34caa0 100644
--- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/HotspotNetworkEntry.java
+++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/HotspotNetworkEntry.java
@@ -62,8 +62,6 @@ public class HotspotNetworkEntry extends WifiEntry {
@Nullable private HotspotNetwork mHotspotNetworkData;
@NonNull private HotspotNetworkEntryKey mKey;
- private boolean mServerInitiatedConnection = false;
-
/**
* If editing this IntDef also edit the definition in:
* {@link android.net.wifi.sharedconnectivity.app.HotspotNetwork}
@@ -204,7 +202,7 @@ public class HotspotNetworkEntry extends WifiEntry {
if (mHotspotNetworkData == null) {
return "";
}
- if (getConnectedState() != CONNECTED_STATE_CONNECTED && mServerInitiatedConnection) {
+ if (mCalledConnect) {
return mContext.getString(R.string.wifitrackerlib_hotspot_network_connecting);
}
return mContext.getString(R.string.wifitrackerlib_hotspot_network_summary,
@@ -397,7 +395,7 @@ public class HotspotNetworkEntry extends WifiEntry {
if (mConnectCallback == null) return;
switch (status) {
case HotspotNetworkConnectionStatus.CONNECTION_STATUS_ENABLING_HOTSPOT:
- mServerInitiatedConnection = true;
+ mCalledConnect = true;
notifyOnUpdated();
break;
case HotspotNetworkConnectionStatus.CONNECTION_STATUS_UNKNOWN_ERROR:
@@ -410,7 +408,7 @@ public class HotspotNetworkEntry extends WifiEntry {
case HotspotNetworkConnectionStatus.CONNECTION_STATUS_CONNECT_TO_HOTSPOT_FAILED:
mCallbackHandler.post(() -> mConnectCallback.onConnectResult(
ConnectCallback.CONNECT_STATUS_FAILURE_UNKNOWN));
- mServerInitiatedConnection = false;
+ mCalledConnect = false;
notifyOnUpdated();
break;
default:
diff --git a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/HotspotNetworkEntryTest.java b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/HotspotNetworkEntryTest.java
index 01a56b48b..4bb599480 100644
--- a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/HotspotNetworkEntryTest.java
+++ b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/HotspotNetworkEntryTest.java
@@ -248,6 +248,23 @@ public class HotspotNetworkEntryTest {
}
@Test
+ public void testGetSummary_connectionSuccess_resetsConnectingString() {
+ final HotspotNetworkEntry entry = new HotspotNetworkEntry(
+ mMockInjector, mMockContext, mTestHandler,
+ mMockWifiManager, mMockSharedConnectivityManager, TEST_HOTSPOT_NETWORK_DATA);
+ entry.setListener(mMockListener);
+ entry.connect(mMockConnectCallback);
+ entry.onConnectionStatusChanged(
+ HotspotNetworkConnectionStatus.CONNECTION_STATUS_ENABLING_HOTSPOT);
+ mTestLooper.dispatchAll();
+
+ entry.onNetworkCapabilitiesChanged(mMockNetwork, mMockNetworkCapabilities);
+ entry.onNetworkLost(mMockNetwork);
+
+ assertThat(entry.getSummary()).isNotEqualTo("Connecting…");
+ }
+
+ @Test
public void testGetSsid_usesHotspotNetworkData() {
final HotspotNetworkEntry entry = new HotspotNetworkEntry(
mMockInjector, mMockContext, mTestHandler,