summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/wifitests/src/com/android/server/wifi/SupplicantStaIfaceHalTest.java46
1 files changed, 42 insertions, 4 deletions
diff --git a/tests/wifitests/src/com/android/server/wifi/SupplicantStaIfaceHalTest.java b/tests/wifitests/src/com/android/server/wifi/SupplicantStaIfaceHalTest.java
index 95f88bbf1..762691184 100644
--- a/tests/wifitests/src/com/android/server/wifi/SupplicantStaIfaceHalTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/SupplicantStaIfaceHalTest.java
@@ -1040,9 +1040,11 @@ public class SupplicantStaIfaceHalTest extends WifiBaseTest {
* Tests the handling of incorrect network passwords.
*/
@Test
- public void testAuthFailurePassword() throws Exception {
+ public void testAuthFailurePasswordOnDisconnect() throws Exception {
executeAndValidateInitializationSequence();
assertNotNull(mISupplicantStaIfaceCallback);
+ executeAndValidateConnectSequenceWithKeyMgmt(
+ 0, false, WifiConfiguration.KeyMgmt.WPA_PSK, null);
int reasonCode = 3;
mISupplicantStaIfaceCallback.onDisconnected(
@@ -1061,13 +1063,49 @@ public class SupplicantStaIfaceHalTest extends WifiBaseTest {
SUPPLICANT_NETWORK_ID,
NativeUtil.decodeSsid(SUPPLICANT_SSID));
mISupplicantStaIfaceCallback.onDisconnected(
+ NativeUtil.macAddressToByteArray(BSSID), false, reasonCode);
+
+ verify(mWifiMonitor).broadcastAuthenticationFailureEvent(
+ eq(WLAN0_IFACE_NAME), eq(WifiManager.ERROR_AUTH_FAILURE_WRONG_PSWD), eq(-1));
+ }
+
+ /**
+ * Tests the handling of EAP failure disconnects.
+ */
+ @Test
+ public void testAuthFailureEapOnDisconnect() throws Exception {
+ executeAndValidateInitializationSequence();
+ assertNotNull(mISupplicantStaIfaceCallback);
+ executeAndValidateConnectSequenceWithKeyMgmt(
+ 0, false, WifiConfiguration.KeyMgmt.WPA_EAP, null);
+
+ int reasonCode = 3;
+ mISupplicantStaIfaceCallback.onDisconnected(
NativeUtil.macAddressToByteArray(BSSID), true, reasonCode);
+ verify(mWifiMonitor, times(0))
+ .broadcastAuthenticationFailureEvent(any(), anyInt(), anyInt());
+
mISupplicantStaIfaceCallback.onDisconnected(
NativeUtil.macAddressToByteArray(BSSID), false, reasonCode);
+ verify(mWifiMonitor, times(0))
+ .broadcastAuthenticationFailureEvent(any(), anyInt(), anyInt());
- verify(mWifiMonitor, times(2))
- .broadcastAuthenticationFailureEvent(eq(WLAN0_IFACE_NAME),
- eq(WifiManager.ERROR_AUTH_FAILURE_WRONG_PSWD), eq(-1));
+ mISupplicantStaIfaceCallback.onStateChanged(
+ ISupplicantStaIfaceCallback.State.ASSOCIATED,
+ NativeUtil.macAddressToByteArray(BSSID),
+ SUPPLICANT_NETWORK_ID,
+ NativeUtil.decodeSsid(SUPPLICANT_SSID));
+ // Ensure we don't lose our prev state with this state changed event.
+ mISupplicantStaIfaceCallback.onStateChanged(
+ ISupplicantStaIfaceCallback.State.DISCONNECTED,
+ NativeUtil.macAddressToByteArray(BSSID),
+ SUPPLICANT_NETWORK_ID,
+ NativeUtil.decodeSsid(SUPPLICANT_SSID));
+ mISupplicantStaIfaceCallback.onDisconnected(
+ NativeUtil.macAddressToByteArray(BSSID), false, reasonCode);
+
+ verify(mWifiMonitor).broadcastAuthenticationFailureEvent(
+ eq(WLAN0_IFACE_NAME), eq(WifiManager.ERROR_AUTH_FAILURE_EAP_FAILURE), eq(-1));
}
/**