diff options
author | Matt Walliser <mattwalliser@google.com> | 2023-09-18 22:58:53 +0000 |
---|---|---|
committer | Matt Walliser <mattwalliser@google.com> | 2023-09-19 15:59:07 +0000 |
commit | ac656b737ca7bd14f3f6a26f61eeb568fdcb3699 (patch) | |
tree | 713d439293a37ab242362157e7f02916c7d9042f | |
parent | a51b136bd1d89d138bfc749e4a6fd42031aec5ee (diff) | |
download | wifi-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.java | 8 | ||||
-rw-r--r-- | libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/HotspotNetworkEntryTest.java | 17 |
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, |