summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--service/java/com/android/server/wifi/WifiServiceImpl.java6
-rw-r--r--service/tests/wifitests/src/com/android/server/wifi/WifiServiceImplTest.java16
2 files changed, 20 insertions, 2 deletions
diff --git a/service/java/com/android/server/wifi/WifiServiceImpl.java b/service/java/com/android/server/wifi/WifiServiceImpl.java
index 34368afed2..b8271006ba 100644
--- a/service/java/com/android/server/wifi/WifiServiceImpl.java
+++ b/service/java/com/android/server/wifi/WifiServiceImpl.java
@@ -7322,8 +7322,10 @@ public class WifiServiceImpl extends BaseWifiService {
);
}
- private boolean isPnoSupported() {
- return (getSupportedFeatures() & WifiManager.WIFI_FEATURE_PNO) != 0;
+ @VisibleForTesting
+ public boolean isPnoSupported() {
+ return mWifiGlobals.isBackgroundScanSupported()
+ || (getSupportedFeatures() & WifiManager.WIFI_FEATURE_PNO) != 0;
}
/**
diff --git a/service/tests/wifitests/src/com/android/server/wifi/WifiServiceImplTest.java b/service/tests/wifitests/src/com/android/server/wifi/WifiServiceImplTest.java
index bbd4d4e659..4f3e97d9ac 100644
--- a/service/tests/wifitests/src/com/android/server/wifi/WifiServiceImplTest.java
+++ b/service/tests/wifitests/src/com/android/server/wifi/WifiServiceImplTest.java
@@ -12048,4 +12048,20 @@ public class WifiServiceImplTest extends WifiBaseTest {
verify(mWifiGlobals, times(2)).getSendDhcpHostnameRestriction();
inOrder.verify(listener).onResult(SEND_DHCP_HOSTNAME_RESTRICTION_ALL);
}
+
+ /*
+ * Verify that Pno is supported.
+ */
+ @Test
+ public void testIsPnoSupported() {
+ when(mWifiGlobals.isBackgroundScanSupported()).thenReturn(false);
+ assertFalse(mWifiServiceImpl.isPnoSupported());
+ when(mActiveModeWarden.getSupportedFeatureSet()).thenReturn(0L);
+ assertFalse(mWifiServiceImpl.isPnoSupported());
+
+ when(mActiveModeWarden.getSupportedFeatureSet()).thenReturn(WifiManager.WIFI_FEATURE_PNO);
+ assertTrue(mWifiServiceImpl.isPnoSupported());
+ when(mWifiGlobals.isBackgroundScanSupported()).thenReturn(true);
+ assertTrue(mWifiServiceImpl.isPnoSupported());
+ }
}