From b81c3d5f9a86e4e1f90be2ffaa81ea5df8fce684 Mon Sep 17 00:00:00 2001 From: Roshan Pius Date: Mon, 23 Apr 2018 11:00:17 -0700 Subject: [PATCH] WifiManager: Return status from startScan() Bug: 77297012 Test: Ensured that scans from settings are still running. Test: Unit tests Change-Id: I0ffea57c48ad2ef5312dd90462b4b707cbf2368c --- wifi/java/android/net/wifi/IWifiManager.aidl | 2 +- wifi/java/android/net/wifi/WifiManager.java | 3 +-- wifi/tests/src/android/net/wifi/WifiManagerTest.java | 12 ++++++++++++ 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/wifi/java/android/net/wifi/IWifiManager.aidl b/wifi/java/android/net/wifi/IWifiManager.aidl index b3331264aa176..a7fffca8e4ef1 100644 --- a/wifi/java/android/net/wifi/IWifiManager.aidl +++ b/wifi/java/android/net/wifi/IWifiManager.aidl @@ -85,7 +85,7 @@ interface IWifiManager boolean disableNetwork(int netId, String packageName); - void startScan(String packageName); + boolean startScan(String packageName); List getScanResults(String callingPackage); diff --git a/wifi/java/android/net/wifi/WifiManager.java b/wifi/java/android/net/wifi/WifiManager.java index 9c6c8a90369d3..a19965d24c3e9 100644 --- a/wifi/java/android/net/wifi/WifiManager.java +++ b/wifi/java/android/net/wifi/WifiManager.java @@ -1635,8 +1635,7 @@ public class WifiManager { public boolean startScan(WorkSource workSource) { try { String packageName = mContext.getOpPackageName(); - mService.startScan(packageName); - return true; + return mService.startScan(packageName); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } diff --git a/wifi/tests/src/android/net/wifi/WifiManagerTest.java b/wifi/tests/src/android/net/wifi/WifiManagerTest.java index f3ffcadf25463..20e49cd9e6a2e 100644 --- a/wifi/tests/src/android/net/wifi/WifiManagerTest.java +++ b/wifi/tests/src/android/net/wifi/WifiManagerTest.java @@ -1070,4 +1070,16 @@ i * Verify that a call to cancel WPS immediately returns a failure. fail("setWifiApConfiguration should rethrow Exceptions from WifiService"); } catch (SecurityException e) { } } + + /** + * Check the call to startScan calls WifiService. + */ + @Test + public void testStartScan() throws Exception { + when(mWifiService.startScan(TEST_PACKAGE_NAME)).thenReturn(true); + assertTrue(mWifiManager.startScan()); + + when(mWifiService.startScan(TEST_PACKAGE_NAME)).thenReturn(false); + assertFalse(mWifiManager.startScan()); + } }