From 6c2158edefebf86c10de2a2746c2f785665c7071 Mon Sep 17 00:00:00 2001 From: Weng Su Date: Wed, 14 Aug 2024 17:01:27 +0800 Subject: [PATCH] Get available channels allowed by Hotspot - Use getAllowedChannels API instead of getUsableChannels API to avoid corner cases Bug: 352267181 Flag: EXEMPT bugfix Test: Manual testing atest -c WifiHotspotRepositoryTest Change-Id: I5ae4a4d429924ac2b8676bbbb27016a93ccd9a1b --- .../wifi/repository/WifiHotspotRepository.java | 2 +- .../wifi/repository/WifiHotspotRepositoryTest.java | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/com/android/settings/wifi/repository/WifiHotspotRepository.java b/src/com/android/settings/wifi/repository/WifiHotspotRepository.java index 7a001caedc6..e523831d229 100644 --- a/src/com/android/settings/wifi/repository/WifiHotspotRepository.java +++ b/src/com/android/settings/wifi/repository/WifiHotspotRepository.java @@ -473,7 +473,7 @@ public class WifiHotspotRepository { boolean isChannelAvailable(SapBand sapBand) { try { List channels = - mWifiManager.getUsableChannels(sapBand.band, OP_MODE_SAP); + mWifiManager.getAllowedChannels(sapBand.band, OP_MODE_SAP); log("isChannelAvailable(), band:" + sapBand.band + ", channels:" + channels); sapBand.hasUsableChannels = (channels != null && channels.size() > 0); sapBand.isUsableChannelsUnsupported = false; diff --git a/tests/unit/src/com/android/settings/wifi/repository/WifiHotspotRepositoryTest.java b/tests/unit/src/com/android/settings/wifi/repository/WifiHotspotRepositoryTest.java index a97b1a04e68..3571a36bde7 100644 --- a/tests/unit/src/com/android/settings/wifi/repository/WifiHotspotRepositoryTest.java +++ b/tests/unit/src/com/android/settings/wifi/repository/WifiHotspotRepositoryTest.java @@ -109,10 +109,10 @@ public class WifiHotspotRepositoryTest { doReturn(SPEED_6GHZ).when(mSpeedType).getValue(); doReturn(true).when(mWifiManager).is5GHzBandSupported(); doReturn(Arrays.asList(new WifiAvailableChannel(FREQ_5GHZ, OP_MODE_SAP))).when(mWifiManager) - .getUsableChannels(WifiScanner.WIFI_BAND_5_GHZ_WITH_DFS, OP_MODE_SAP); + .getAllowedChannels(WifiScanner.WIFI_BAND_5_GHZ_WITH_DFS, OP_MODE_SAP); doReturn(true).when(mWifiManager).is6GHzBandSupported(); doReturn(Arrays.asList(new WifiAvailableChannel(FREQ_6GHZ, OP_MODE_SAP))).when(mWifiManager) - .getUsableChannels(WifiScanner.WIFI_BAND_6_GHZ, OP_MODE_SAP); + .getAllowedChannels(WifiScanner.WIFI_BAND_6_GHZ, OP_MODE_SAP); mRepository = new WifiHotspotRepository(mContext, mWifiManager, mTetheringManager); mRepository.mSecurityType = mSecurityType; @@ -575,7 +575,7 @@ public class WifiHotspotRepositoryTest { mRepository.mIs5gBandSupported = true; // Reset m5gBand to trigger an update mRepository.mBand5g.isUsableChannelsReady = false; - when(mWifiManager.getUsableChannels(WifiScanner.WIFI_BAND_5_GHZ_WITH_DFS, OP_MODE_SAP)) + when(mWifiManager.getAllowedChannels(WifiScanner.WIFI_BAND_5_GHZ_WITH_DFS, OP_MODE_SAP)) .thenReturn(null); assertThat(mRepository.is5gAvailable()).isFalse(); @@ -619,7 +619,7 @@ public class WifiHotspotRepositoryTest { mRepository.mIs6gBandSupported = true; // Reset m6gBand to trigger an update mRepository.mBand6g.isUsableChannelsReady = false; - when(mWifiManager.getUsableChannels(WifiScanner.WIFI_BAND_6_GHZ, OP_MODE_SAP)) + when(mWifiManager.getAllowedChannels(WifiScanner.WIFI_BAND_6_GHZ, OP_MODE_SAP)) .thenReturn(null); assertThat(mRepository.is6gAvailable()).isFalse(); @@ -660,7 +660,7 @@ public class WifiHotspotRepositoryTest { @Test public void isChannelAvailable_throwIllegalArgumentException_hasUsableChannelsFalse() { doThrow(IllegalArgumentException.class).when(mWifiManager) - .getUsableChannels(WifiScanner.WIFI_BAND_6_GHZ, OP_MODE_SAP); + .getAllowedChannels(WifiScanner.WIFI_BAND_6_GHZ, OP_MODE_SAP); mRepository.isChannelAvailable(mRepository.mBand6g); @@ -671,7 +671,7 @@ public class WifiHotspotRepositoryTest { @Test public void isChannelAvailable_throwUnsupportedOperationException_hasUsableChannelsFalse() { doThrow(UnsupportedOperationException.class).when(mWifiManager) - .getUsableChannels(WifiScanner.WIFI_BAND_6_GHZ, OP_MODE_SAP); + .getAllowedChannels(WifiScanner.WIFI_BAND_6_GHZ, OP_MODE_SAP); mRepository.isChannelAvailable(mRepository.mBand6g);