diff options
author | Hai Shalom <haishalom@google.com> | 2020-04-14 01:49:31 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2020-04-14 01:49:31 +0000 |
commit | 20641dfcb5c341b8335c7c44d272c58de7a5adbf (patch) | |
tree | 680158765898bf6400da1b832a0338cdf9bbe922 /tests | |
parent | 683eebfed79268183905f3584d51035c08827985 (diff) | |
parent | f17e56bbd9dd09169b9b4a6b9735acda9d31b9d1 (diff) |
Merge "[Passpoint] Add metrics for Root CA and Subscription Expiration" into rvc-dev
Diffstat (limited to 'tests')
-rw-r--r-- | tests/wifitests/src/com/android/server/wifi/WifiMetricsTest.java | 19 | ||||
-rw-r--r-- | tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointManagerTest.java | 73 |
2 files changed, 92 insertions, 0 deletions
diff --git a/tests/wifitests/src/com/android/server/wifi/WifiMetricsTest.java b/tests/wifitests/src/com/android/server/wifi/WifiMetricsTest.java index c8b149ba6..3964d2d37 100644 --- a/tests/wifitests/src/com/android/server/wifi/WifiMetricsTest.java +++ b/tests/wifitests/src/com/android/server/wifi/WifiMetricsTest.java @@ -398,6 +398,9 @@ public class WifiMetricsTest extends WifiBaseTest { private static final int NUM_PASSPOINT_PROVIDER_UNINSTALLATION = 3; private static final int NUM_PASSPOINT_PROVIDER_UNINSTALL_SUCCESS = 2; private static final int NUM_PASSPOINT_PROVIDERS_SUCCESSFULLY_CONNECTED = 1; + private static final int NUM_PASSPOINT_PROVIDERS_WITH_NO_ROOT_CA = 2; + private static final int NUM_PASSPOINT_PROVIDERS_WITH_SELF_SIGNED_ROOT_CA = 3; + private static final int NUM_PASSPOINT_PROVIDERS_WITH_EXPIRATION_DATE = 4; private static final int NUM_EAP_SIM_TYPE = 1; private static final int NUM_EAP_TTLS_TYPE = 2; private static final int NUM_EAP_TLS_TYPE = 3; @@ -873,6 +876,15 @@ public class WifiMetricsTest extends WifiBaseTest { for (int i = 0; i < NUM_PASSPOINT_PROVIDER_UNINSTALL_SUCCESS; i++) { mWifiMetrics.incrementNumPasspointProviderUninstallSuccess(); } + for (int i = 0; i < NUM_PASSPOINT_PROVIDERS_WITH_NO_ROOT_CA; i++) { + mWifiMetrics.incrementNumPasspointProviderWithNoRootCa(); + } + for (int i = 0; i < NUM_PASSPOINT_PROVIDERS_WITH_SELF_SIGNED_ROOT_CA; i++) { + mWifiMetrics.incrementNumPasspointProviderWithSelfSignedRootCa(); + } + for (int i = 0; i < NUM_PASSPOINT_PROVIDERS_WITH_EXPIRATION_DATE; i++) { + mWifiMetrics.incrementNumPasspointProviderWithSubscriptionExpiration(); + } for (int i = 0; i < NUM_RADIO_MODE_CHANGE_TO_MCC; i++) { mWifiMetrics.incrementNumRadioModeChangeToMcc(); } @@ -1329,6 +1341,13 @@ public class WifiMetricsTest extends WifiBaseTest { mDecodedProto.numPasspointProviderUninstallSuccess); assertEquals(NUM_PASSPOINT_PROVIDERS_SUCCESSFULLY_CONNECTED, mDecodedProto.numPasspointProvidersSuccessfullyConnected); + assertEquals(NUM_PASSPOINT_PROVIDERS_WITH_NO_ROOT_CA, + mDecodedProto.numPasspointProviderWithNoRootCa); + assertEquals(NUM_PASSPOINT_PROVIDERS_WITH_SELF_SIGNED_ROOT_CA, + mDecodedProto.numPasspointProviderWithSelfSignedRootCa); + assertEquals(NUM_PASSPOINT_PROVIDERS_WITH_EXPIRATION_DATE, + mDecodedProto.numPasspointProviderWithSubscriptionExpiration); + assertEquals(NUM_RADIO_MODE_CHANGE_TO_MCC, mDecodedProto.numRadioModeChangeToMcc); assertEquals(NUM_RADIO_MODE_CHANGE_TO_SCC, mDecodedProto.numRadioModeChangeToScc); assertEquals(NUM_RADIO_MODE_CHANGE_TO_SBS, mDecodedProto.numRadioModeChangeToSbs); diff --git a/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointManagerTest.java b/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointManagerTest.java index 73c5713ac..861aa94ff 100644 --- a/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointManagerTest.java +++ b/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointManagerTest.java @@ -2560,4 +2560,77 @@ public class PasspointManagerTest extends WifiBaseTest { // Verify content in the data source. assertTrue(mUserDataSource.getProviders().isEmpty()); } + + /** + * Verify that adding a provider with a self signed root CA increments the metrics correctly. + * + * @throws Exception + */ + @Test + public void verifySelfSignRootCaMetrics() throws Exception { + WifiConfiguration wifiConfig = new WifiConfiguration(); + wifiConfig.FQDN = TEST_FQDN; + PasspointConfiguration config = + createTestConfigWithUserCredential(TEST_FQDN, TEST_FRIENDLY_NAME); + PasspointProvider provider = createMockProvider(config, wifiConfig, true); + when(mObjectFactory.makePasspointProvider(eq(config), eq(mWifiKeyStore), + eq(mWifiCarrierInfoManager), anyLong(), eq(TEST_CREATOR_UID), eq(TEST_PACKAGE), + eq(true))).thenReturn(provider); + when(provider.getPackageName()).thenReturn(TEST_PACKAGE); + assertTrue(mManager.addOrUpdateProvider( + config, TEST_CREATOR_UID, TEST_PACKAGE, true, false)); + verify(mWifiMetrics).incrementNumPasspointProviderWithSelfSignedRootCa(); + verify(mWifiMetrics, never()).incrementNumPasspointProviderWithNoRootCa(); + verify(mWifiMetrics).incrementNumPasspointProviderInstallation(); + verify(mWifiMetrics).incrementNumPasspointProviderInstallSuccess(); + } + + /** + * Verify that adding a provider with no root CA increments the metrics correctly. + * + * @throws Exception + */ + @Test + public void verifyNoRootCaMetrics() throws Exception { + WifiConfiguration wifiConfig = new WifiConfiguration(); + wifiConfig.FQDN = TEST_FQDN; + PasspointConfiguration config = + createTestConfigWithUserCredential(TEST_FQDN, TEST_FRIENDLY_NAME); + config.getCredential().setCaCertificate(null); + PasspointProvider provider = createMockProvider(config, wifiConfig, true); + when(mObjectFactory.makePasspointProvider(eq(config), eq(mWifiKeyStore), + eq(mWifiCarrierInfoManager), anyLong(), eq(TEST_CREATOR_UID), eq(TEST_PACKAGE), + eq(true))).thenReturn(provider); + when(provider.getPackageName()).thenReturn(TEST_PACKAGE); + assertTrue(mManager.addOrUpdateProvider( + config, TEST_CREATOR_UID, TEST_PACKAGE, true, false)); + verify(mWifiMetrics).incrementNumPasspointProviderWithNoRootCa(); + verify(mWifiMetrics, never()).incrementNumPasspointProviderWithSelfSignedRootCa(); + verify(mWifiMetrics).incrementNumPasspointProviderInstallation(); + verify(mWifiMetrics).incrementNumPasspointProviderInstallSuccess(); + } + + /** + * Verify that adding a provider with subscription expiration increments the metrics correctly. + * + * @throws Exception + */ + @Test + public void verifySubscriptionExpirationMetrics() throws Exception { + WifiConfiguration wifiConfig = new WifiConfiguration(); + wifiConfig.FQDN = TEST_FQDN; + PasspointConfiguration config = + createTestConfigWithUserCredential(TEST_FQDN, TEST_FRIENDLY_NAME); + config.setSubscriptionExpirationTimeInMillis(1586228641000L); + PasspointProvider provider = createMockProvider(config, wifiConfig, true); + when(mObjectFactory.makePasspointProvider(eq(config), eq(mWifiKeyStore), + eq(mWifiCarrierInfoManager), anyLong(), eq(TEST_CREATOR_UID), eq(TEST_PACKAGE), + eq(true))).thenReturn(provider); + when(provider.getPackageName()).thenReturn(TEST_PACKAGE); + assertTrue(mManager.addOrUpdateProvider( + config, TEST_CREATOR_UID, TEST_PACKAGE, true, false)); + verify(mWifiMetrics).incrementNumPasspointProviderWithSubscriptionExpiration(); + verify(mWifiMetrics).incrementNumPasspointProviderInstallation(); + verify(mWifiMetrics).incrementNumPasspointProviderInstallSuccess(); + } } |