summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorJong Wook Kim <jongwook@google.com>2018-05-04 19:25:29 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2018-05-04 19:25:29 +0000
commit295a9401b82a849a2449b3853bfcbd1fddcd04f6 (patch)
tree9c969f599eb323abb9447db61620d72e1bddb0c9 /tests
parent50459a1203d1ebdc3fa6c824111006ffdbbe939e (diff)
parent28a6c752451084392a71b3c70d984ef9e066d4e2 (diff)
Merge "Wifi Framework Connected MAC Randomization Metrics" into pi-dev
Diffstat (limited to 'tests')
-rw-r--r--tests/wifitests/src/com/android/server/wifi/WifiMetricsTest.java12
-rw-r--r--tests/wifitests/src/com/android/server/wifi/WifiStateMachineTest.java24
2 files changed, 33 insertions, 3 deletions
diff --git a/tests/wifitests/src/com/android/server/wifi/WifiMetricsTest.java b/tests/wifitests/src/com/android/server/wifi/WifiMetricsTest.java
index 8212169dc..91f58c451 100644
--- a/tests/wifitests/src/com/android/server/wifi/WifiMetricsTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/WifiMetricsTest.java
@@ -307,6 +307,7 @@ public class WifiMetricsTest {
private static final int NUM_SOFT_AP_ASSOCIATED_STATIONS = 3;
private static final int SOFT_AP_CHANNEL_FREQUENCY = 2437;
private static final int SOFT_AP_CHANNEL_BANDWIDTH = SoftApConnectedClientsEvent.BANDWIDTH_20;
+ private static final boolean IS_MAC_RANDOMIZATION_ON = true;
private ScanDetail buildMockScanDetail(boolean hidden, NetworkDetail.HSRelease hSRelease,
String capabilities) {
@@ -662,6 +663,7 @@ public class WifiMetricsTest {
}
mWifiMetrics.setWatchdogSuccessTimeDurationMs(NUM_WATCHDOG_SUCCESS_DURATION_MS);
+ mWifiMetrics.setIsMacRandomizationOn(IS_MAC_RANDOMIZATION_ON);
}
private void addSoftApEventsToMetrics() {
@@ -930,6 +932,7 @@ public class WifiMetricsTest {
assertEquals(NUM_WATCHDOG_SUCCESS_DURATION_MS,
mDecodedProto.watchdogTriggerToConnectionSuccessDurationMs);
+ assertEquals(IS_MAC_RANDOMIZATION_ON, mDecodedProto.isMacRandomizationOn);
}
/**
@@ -1299,7 +1302,7 @@ public class WifiMetricsTest {
private static final int ASSOC_TIMEOUT = 1;
private static final int LOCAL_GEN = 1;
private static final int AUTH_FAILURE_REASON = WifiManager.ERROR_AUTH_FAILURE_WRONG_PSWD;
- private static final int NUM_TEST_STA_EVENTS = 15;
+ private static final int NUM_TEST_STA_EVENTS = 16;
private static final String sSSID = "\"SomeTestSsid\"";
private static final WifiSsid sWifiSsid = WifiSsid.createFromAsciiEncoded(sSSID);
private static final String sBSSID = "01:02:03:04:05:06";
@@ -1348,7 +1351,8 @@ public class WifiMetricsTest {
{StaEvent.TYPE_CONNECT_NETWORK, 0, 1},
{StaEvent.TYPE_NETWORK_AGENT_VALID_NETWORK, 0, 0},
{StaEvent.TYPE_FRAMEWORK_DISCONNECT, StaEvent.DISCONNECT_API, 0},
- {StaEvent.TYPE_SCORE_BREACH, 0, 0}
+ {StaEvent.TYPE_SCORE_BREACH, 0, 0},
+ {StaEvent.TYPE_MAC_CHANGE, 0, 1}
};
// Values used to generate the StaEvent log calls from WifiMonitor
// <type>, <reason>, <status>, <local_gen>,
@@ -1383,7 +1387,9 @@ public class WifiMetricsTest {
{StaEvent.TYPE_FRAMEWORK_DISCONNECT, -1, -1, 0,
/**/ 0, 0, 0, 0}, /**/
{StaEvent.TYPE_SCORE_BREACH, -1, -1, 0,
- /**/ 0, 0, 0, 0} /**/
+ /**/ 0, 0, 0, 0}, /**/
+ {StaEvent.TYPE_MAC_CHANGE, -1, -1, 0,
+ /**/ 0, 0, 0, 1} /**/
};
/**
diff --git a/tests/wifitests/src/com/android/server/wifi/WifiStateMachineTest.java b/tests/wifitests/src/com/android/server/wifi/WifiStateMachineTest.java
index 002969aa3..86692c8ce 100644
--- a/tests/wifitests/src/com/android/server/wifi/WifiStateMachineTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/WifiStateMachineTest.java
@@ -91,6 +91,7 @@ import com.android.internal.util.StateMachine;
import com.android.server.wifi.hotspot2.NetworkDetail;
import com.android.server.wifi.hotspot2.PasspointManager;
import com.android.server.wifi.hotspot2.PasspointProvisioningTestUtil;
+import com.android.server.wifi.nano.WifiMetricsProto.StaEvent;
import com.android.server.wifi.p2p.WifiP2pServiceImpl;
import com.android.server.wifi.util.WifiPermissionsUtil;
import com.android.server.wifi.util.WifiPermissionsWrapper;
@@ -2163,6 +2164,8 @@ public class WifiStateMachineTest {
assertNotEquals(TEST_GLOBAL_MAC_ADDRESS, newMac);
verify(mWifiConfigManager).setNetworkRandomizedMacAddress(eq(0), eq(newMac));
verify(mWifiNative).setMacAddress(eq(WIFI_IFACE_NAME), eq(newMac));
+ verify(mWifiMetrics)
+ .logStaEvent(eq(StaEvent.TYPE_MAC_CHANGE), any(WifiConfiguration.class));
assertEquals(mWsm.getWifiInfo().getMacAddress(), newMac.toString());
}
@@ -2209,6 +2212,8 @@ public class WifiStateMachineTest {
verify(mWifiConfigManager, never())
.setNetworkRandomizedMacAddress(eq(0), any(MacAddress.class));
verify(mWifiNative, never()).setMacAddress(eq(WIFI_IFACE_NAME), any(MacAddress.class));
+ verify(mWifiMetrics, never())
+ .logStaEvent(eq(StaEvent.TYPE_MAC_CHANGE), any(WifiConfiguration.class));
assertEquals(mWsm.getWifiInfo().getMacAddress(), oldMac);
}
@@ -2242,6 +2247,25 @@ public class WifiStateMachineTest {
}
/**
+ * Verifies that turning on/off Connected MAC Randomization correctly updates metrics.
+ */
+ @Test
+ public void testUpdateConnectedMacRandomizationSettingMetrics() throws Exception {
+ // Called during setUp
+ verify(mWifiMetrics).setIsMacRandomizationOn(false);
+
+ when(mFrameworkFacade.getIntegerSetting(mContext,
+ Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, 0)).thenReturn(1);
+ mContentObserver.onChange(false);
+ verify(mWifiMetrics).setIsMacRandomizationOn(true);
+
+ when(mFrameworkFacade.getIntegerSetting(mContext,
+ Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, 0)).thenReturn(0);
+ mContentObserver.onChange(false);
+ verify(mWifiMetrics, times(2)).setIsMacRandomizationOn(false);
+ }
+
+ /**
* Verify that we do not crash on quick toggling wifi on/off
*/
@Test