Loading wifi/java/android/net/wifi/WifiManager.java +15 −47 Original line number Diff line number Diff line Loading @@ -1620,19 +1620,14 @@ public class WifiManager { } /** * Creates a configuration token describing the current network of MIME type * application/vnd.wfa.wsc. Can be used to configure WiFi networks via NFC. * WPS has been deprecated from Client mode operation. * * @return hex-string encoded configuration token or null if there is no current network * @return null * @hide * @deprecated This API is deprecated */ public String getCurrentNetworkWpsNfcConfigurationToken() { try { return mService.getCurrentNetworkWpsNfcConfigurationToken(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } return null; } /** Loading Loading @@ -2847,36 +2842,6 @@ public class WifiManager { ((ActionListener) listener).onSuccess(); } break; case WifiManager.START_WPS_SUCCEEDED: if (listener != null) { WpsResult result = (WpsResult) message.obj; ((WpsCallback) listener).onStarted(result.pin); //Listener needs to stay until completion or failure synchronized (mListenerMapLock) { mListenerMap.put(message.arg2, listener); } } break; case WifiManager.WPS_COMPLETED: if (listener != null) { ((WpsCallback) listener).onSucceeded(); } break; case WifiManager.WPS_FAILED: if (listener != null) { ((WpsCallback) listener).onFailed(message.arg1); } break; case WifiManager.CANCEL_WPS_SUCCEDED: if (listener != null) { ((WpsCallback) listener).onSucceeded(); } break; case WifiManager.CANCEL_WPS_FAILED: if (listener != null) { ((WpsCallback) listener).onFailed(message.arg1); } break; case WifiManager.RSSI_PKTCNT_FETCH_SUCCEEDED: if (listener != null) { RssiPacketCountInfo info = (RssiPacketCountInfo) message.obj; Loading Loading @@ -3055,29 +3020,32 @@ public class WifiManager { } /** * Start Wi-fi Protected Setup * WPS suport has been deprecated from Client mode and this method will immediately trigger * {@link WpsCallback#onFailed(int)} with a generic error. * * @param config WPS configuration (does not support {@link WpsInfo#LABEL}) * @param listener for callbacks on success or failure. Can be null. * @throws IllegalStateException if the WifiManager instance needs to be * initialized again * @throws IllegalStateException if the WifiManager instance needs to be initialized again * @deprecated This API is deprecated */ public void startWps(WpsInfo config, WpsCallback listener) { if (config == null) throw new IllegalArgumentException("config cannot be null"); getChannel().sendMessage(START_WPS, 0, putListener(listener), config); if (listener != null ) { listener.onFailed(ERROR); } } /** * Cancel any ongoing Wi-fi Protected Setup * WPS support has been deprecated from Client mode and this method will immediately trigger * {@link WpsCallback#onFailed(int)} with a generic error. * * @param listener for callbacks on success or failure. Can be null. * @throws IllegalStateException if the WifiManager instance needs to be * initialized again * @throws IllegalStateException if the WifiManager instance needs to be initialized again * @deprecated This API is deprecated */ public void cancelWps(WpsCallback listener) { getChannel().sendMessage(CANCEL_WPS, 0, putListener(listener)); if (listener != null) { listener.onFailed(ERROR); } } /** Loading wifi/tests/src/android/net/wifi/WifiManagerTest.java +83 −0 Original line number Diff line number Diff line Loading @@ -35,6 +35,7 @@ import static android.net.wifi.WifiManager.WIFI_AP_STATE_FAILED; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; import static org.mockito.Mockito.*; Loading Loading @@ -950,4 +951,86 @@ public class WifiManagerTest { doThrow(new SecurityException()).when(mWifiService).setCountryCode(anyString()); mWifiManager.setCountryCode(TEST_COUNTRY_CODE); } /** * Test that calls to get the current WPS config token return null and do not have any * interactions with WifiServiceImpl. */ @Test public void testGetCurrentNetworkWpsNfcConfigurationTokenReturnsNull() { assertNull(mWifiManager.getCurrentNetworkWpsNfcConfigurationToken()); verifyNoMoreInteractions(mWifiService); } class WpsCallbackTester extends WifiManager.WpsCallback { public boolean mStarted = false; public boolean mSucceeded = false; public boolean mFailed = false; public int mFailureCode = -1; @Override public void onStarted(String pin) { mStarted = true; } @Override public void onSucceeded() { mSucceeded = true; } @Override public void onFailed(int reason) { mFailed = true; mFailureCode = reason; } } /** * Verify that a call to start WPS immediately returns a failure. */ @Test public void testStartWpsImmediatelyFailsWithCallback() { WpsCallbackTester wpsCallback = new WpsCallbackTester(); mWifiManager.startWps(null, wpsCallback); assertTrue(wpsCallback.mFailed); assertEquals(WifiManager.ERROR, wpsCallback.mFailureCode); assertFalse(wpsCallback.mStarted); assertFalse(wpsCallback.mSucceeded); verifyNoMoreInteractions(mWifiService); } /** * Verify that a call to start WPS does not go to WifiServiceImpl if we do not have a callback. */ @Test public void testStartWpsDoesNotCallWifiServiceImpl() { mWifiManager.startWps(null, null); verifyNoMoreInteractions(mWifiService); } /** i * Verify that a call to cancel WPS immediately returns a failure. */ @Test public void testCancelWpsImmediatelyFailsWithCallback() { WpsCallbackTester wpsCallback = new WpsCallbackTester(); mWifiManager.cancelWps(wpsCallback); assertTrue(wpsCallback.mFailed); assertEquals(WifiManager.ERROR, wpsCallback.mFailureCode); assertFalse(wpsCallback.mStarted); assertFalse(wpsCallback.mSucceeded); verifyNoMoreInteractions(mWifiService); } /** * Verify that a call to cancel WPS does not go to WifiServiceImpl if we do not have a callback. */ @Test public void testCancelWpsDoesNotCallWifiServiceImpl() { mWifiManager.cancelWps(null); verifyNoMoreInteractions(mWifiService); } } Loading
wifi/java/android/net/wifi/WifiManager.java +15 −47 Original line number Diff line number Diff line Loading @@ -1620,19 +1620,14 @@ public class WifiManager { } /** * Creates a configuration token describing the current network of MIME type * application/vnd.wfa.wsc. Can be used to configure WiFi networks via NFC. * WPS has been deprecated from Client mode operation. * * @return hex-string encoded configuration token or null if there is no current network * @return null * @hide * @deprecated This API is deprecated */ public String getCurrentNetworkWpsNfcConfigurationToken() { try { return mService.getCurrentNetworkWpsNfcConfigurationToken(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } return null; } /** Loading Loading @@ -2847,36 +2842,6 @@ public class WifiManager { ((ActionListener) listener).onSuccess(); } break; case WifiManager.START_WPS_SUCCEEDED: if (listener != null) { WpsResult result = (WpsResult) message.obj; ((WpsCallback) listener).onStarted(result.pin); //Listener needs to stay until completion or failure synchronized (mListenerMapLock) { mListenerMap.put(message.arg2, listener); } } break; case WifiManager.WPS_COMPLETED: if (listener != null) { ((WpsCallback) listener).onSucceeded(); } break; case WifiManager.WPS_FAILED: if (listener != null) { ((WpsCallback) listener).onFailed(message.arg1); } break; case WifiManager.CANCEL_WPS_SUCCEDED: if (listener != null) { ((WpsCallback) listener).onSucceeded(); } break; case WifiManager.CANCEL_WPS_FAILED: if (listener != null) { ((WpsCallback) listener).onFailed(message.arg1); } break; case WifiManager.RSSI_PKTCNT_FETCH_SUCCEEDED: if (listener != null) { RssiPacketCountInfo info = (RssiPacketCountInfo) message.obj; Loading Loading @@ -3055,29 +3020,32 @@ public class WifiManager { } /** * Start Wi-fi Protected Setup * WPS suport has been deprecated from Client mode and this method will immediately trigger * {@link WpsCallback#onFailed(int)} with a generic error. * * @param config WPS configuration (does not support {@link WpsInfo#LABEL}) * @param listener for callbacks on success or failure. Can be null. * @throws IllegalStateException if the WifiManager instance needs to be * initialized again * @throws IllegalStateException if the WifiManager instance needs to be initialized again * @deprecated This API is deprecated */ public void startWps(WpsInfo config, WpsCallback listener) { if (config == null) throw new IllegalArgumentException("config cannot be null"); getChannel().sendMessage(START_WPS, 0, putListener(listener), config); if (listener != null ) { listener.onFailed(ERROR); } } /** * Cancel any ongoing Wi-fi Protected Setup * WPS support has been deprecated from Client mode and this method will immediately trigger * {@link WpsCallback#onFailed(int)} with a generic error. * * @param listener for callbacks on success or failure. Can be null. * @throws IllegalStateException if the WifiManager instance needs to be * initialized again * @throws IllegalStateException if the WifiManager instance needs to be initialized again * @deprecated This API is deprecated */ public void cancelWps(WpsCallback listener) { getChannel().sendMessage(CANCEL_WPS, 0, putListener(listener)); if (listener != null) { listener.onFailed(ERROR); } } /** Loading
wifi/tests/src/android/net/wifi/WifiManagerTest.java +83 −0 Original line number Diff line number Diff line Loading @@ -35,6 +35,7 @@ import static android.net.wifi.WifiManager.WIFI_AP_STATE_FAILED; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; import static org.mockito.Mockito.*; Loading Loading @@ -950,4 +951,86 @@ public class WifiManagerTest { doThrow(new SecurityException()).when(mWifiService).setCountryCode(anyString()); mWifiManager.setCountryCode(TEST_COUNTRY_CODE); } /** * Test that calls to get the current WPS config token return null and do not have any * interactions with WifiServiceImpl. */ @Test public void testGetCurrentNetworkWpsNfcConfigurationTokenReturnsNull() { assertNull(mWifiManager.getCurrentNetworkWpsNfcConfigurationToken()); verifyNoMoreInteractions(mWifiService); } class WpsCallbackTester extends WifiManager.WpsCallback { public boolean mStarted = false; public boolean mSucceeded = false; public boolean mFailed = false; public int mFailureCode = -1; @Override public void onStarted(String pin) { mStarted = true; } @Override public void onSucceeded() { mSucceeded = true; } @Override public void onFailed(int reason) { mFailed = true; mFailureCode = reason; } } /** * Verify that a call to start WPS immediately returns a failure. */ @Test public void testStartWpsImmediatelyFailsWithCallback() { WpsCallbackTester wpsCallback = new WpsCallbackTester(); mWifiManager.startWps(null, wpsCallback); assertTrue(wpsCallback.mFailed); assertEquals(WifiManager.ERROR, wpsCallback.mFailureCode); assertFalse(wpsCallback.mStarted); assertFalse(wpsCallback.mSucceeded); verifyNoMoreInteractions(mWifiService); } /** * Verify that a call to start WPS does not go to WifiServiceImpl if we do not have a callback. */ @Test public void testStartWpsDoesNotCallWifiServiceImpl() { mWifiManager.startWps(null, null); verifyNoMoreInteractions(mWifiService); } /** i * Verify that a call to cancel WPS immediately returns a failure. */ @Test public void testCancelWpsImmediatelyFailsWithCallback() { WpsCallbackTester wpsCallback = new WpsCallbackTester(); mWifiManager.cancelWps(wpsCallback); assertTrue(wpsCallback.mFailed); assertEquals(WifiManager.ERROR, wpsCallback.mFailureCode); assertFalse(wpsCallback.mStarted); assertFalse(wpsCallback.mSucceeded); verifyNoMoreInteractions(mWifiService); } /** * Verify that a call to cancel WPS does not go to WifiServiceImpl if we do not have a callback. */ @Test public void testCancelWpsDoesNotCallWifiServiceImpl() { mWifiManager.cancelWps(null); verifyNoMoreInteractions(mWifiService); } }