diff options
author | Jong Wook Kim <jongwook@google.com> | 2018-05-04 19:25:29 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2018-05-04 19:25:29 +0000 |
commit | 295a9401b82a849a2449b3853bfcbd1fddcd04f6 (patch) | |
tree | 9c969f599eb323abb9447db61620d72e1bddb0c9 /tests | |
parent | 50459a1203d1ebdc3fa6c824111006ffdbbe939e (diff) | |
parent | 28a6c752451084392a71b3c70d984ef9e066d4e2 (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.java | 12 | ||||
-rw-r--r-- | tests/wifitests/src/com/android/server/wifi/WifiStateMachineTest.java | 24 |
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 |