summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Arpan Kaphle <akaphle@google.com> 2023-06-01 22:19:10 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2023-06-01 22:19:10 +0000
commit47e7e1a2e43f7bfafa2d85efcc7f29e0fa66feb9 (patch)
tree89e303b068ccca8092704b20be8406a56b995145
parenta6550a836b64de13bd817ab28c1513cf7dc65dd9 (diff)
parent4281d27643145a8f25204c6fa46aaed5724cb37b (diff)
Merge "Testing all the Calling App UID Track Emits" into udc-dev
-rw-r--r--services/tests/servicestests/src/com/android/server/credentials/MetricUtilitiesTest.java116
1 files changed, 116 insertions, 0 deletions
diff --git a/services/tests/servicestests/src/com/android/server/credentials/MetricUtilitiesTest.java b/services/tests/servicestests/src/com/android/server/credentials/MetricUtilitiesTest.java
index b46f1a61c745..50ea48719948 100644
--- a/services/tests/servicestests/src/com/android/server/credentials/MetricUtilitiesTest.java
+++ b/services/tests/servicestests/src/com/android/server/credentials/MetricUtilitiesTest.java
@@ -15,14 +15,27 @@
*/
package com.android.server.credentials;
+import android.content.Context;
+
+import androidx.test.core.app.ApplicationProvider;
import androidx.test.filters.SmallTest;
import androidx.test.runner.AndroidJUnit4;
+import com.android.server.credentials.metrics.BrowsedAuthenticationMetric;
+import com.android.server.credentials.metrics.CandidateAggregateMetric;
+import com.android.server.credentials.metrics.CandidateBrowsingPhaseMetric;
+import com.android.server.credentials.metrics.ChosenProviderFinalPhaseMetric;
import com.android.server.credentials.metrics.InitialPhaseMetric;
+import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
+import java.security.cert.CertificateException;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
/**
* Given the secondary-system nature of the MetricUtilities, we expect absolutely nothing to
* throw an error. If one presents itself, that is problematic.
@@ -33,6 +46,11 @@ import org.junit.runner.RunWith;
@SmallTest
public final class MetricUtilitiesTest {
+ @Before
+ public void setUp() throws CertificateException {
+ final Context context = ApplicationProvider.getApplicationContext();
+ }
+
@Test
public void logApiCalledInitialPhase_nullInitPhaseMetricAndNegativeSequence_success() {
MetricUtilities.logApiCalledInitialPhase(null, -1);
@@ -49,4 +67,102 @@ public final class MetricUtilitiesTest {
MetricUtilities.getHighlyUniqueInteger());
MetricUtilities.logApiCalledInitialPhase(validInitPhaseMetric, 1);
}
+
+ @Test
+ public void logApiCalledTotalCandidate_nullCandidateNegativeSequence_success() {
+ MetricUtilities.logApiCalledAggregateCandidate(null, -1);
+ }
+
+ @Test
+ public void logApiCalledTotalCandidate_invalidCandidatePhasePositiveSequence_success() {
+ MetricUtilities.logApiCalledAggregateCandidate(new CandidateAggregateMetric(-1), 1);
+ }
+
+ @Test
+ public void logApiCalledTotalCandidate_validPhaseMetric_success() {
+ MetricUtilities.logApiCalledAggregateCandidate(
+ new CandidateAggregateMetric(MetricUtilities.getHighlyUniqueInteger()), 1);
+ }
+
+ @Test
+ public void logApiCalledNoUidFinal_nullNoUidFinalNegativeSequenceAndStatus_success() {
+ MetricUtilities.logApiCalledNoUidFinal(null, null,
+ -1, -1);
+ }
+
+ @Test
+ public void logApiCalledNoUidFinal_invalidNoUidFinalPhasePositiveSequenceAndStatus_success() {
+ MetricUtilities.logApiCalledNoUidFinal(new ChosenProviderFinalPhaseMetric(-1, -1),
+ List.of(new CandidateBrowsingPhaseMetric()), 1, 1);
+ }
+
+ @Test
+ public void logApiCalledNoUidFinal_validNoUidFinalMetric_success() {
+ MetricUtilities.logApiCalledNoUidFinal(
+ new ChosenProviderFinalPhaseMetric(MetricUtilities.getHighlyUniqueInteger(),
+ MetricUtilities.getHighlyUniqueInteger()),
+ List.of(new CandidateBrowsingPhaseMetric()), 1, 1);
+ }
+
+ @Test
+ public void logApiCalledCandidate_nullMapNullInitFinalNegativeSequence_success() {
+ MetricUtilities.logApiCalledCandidatePhase(null, -1,
+ null);
+ }
+
+ @Test
+ public void logApiCalledCandidate_invalidProvidersCandidatePositiveSequence_success() {
+ Map<String, ProviderSession> testMap = new HashMap<>();
+ testMap.put("s", null);
+ MetricUtilities.logApiCalledCandidatePhase(testMap, 1,
+ null);
+ }
+
+ @Test
+ public void logApiCalledCandidateGet_nullMapFinalNegativeSequence_success() {
+ MetricUtilities.logApiCalledCandidateGetMetric(null, -1);
+ }
+
+ @Test
+ public void logApiCalledCandidateGet_invalidProvidersCandidatePositiveSequence_success() {
+ Map<String, ProviderSession> testMap = new HashMap<>();
+ testMap.put("s", null);
+ MetricUtilities.logApiCalledCandidateGetMetric(testMap, 1);
+ }
+
+ @Test
+ public void logApiCalledAuthMetric_nullAuthMetricNegativeSequence_success() {
+ MetricUtilities.logApiCalledAuthenticationMetric(null, -1);
+ }
+
+ @Test
+ public void logApiCalledAuthMetric_invalidAuthMetricPositiveSequence_success() {
+ MetricUtilities.logApiCalledAuthenticationMetric(new BrowsedAuthenticationMetric(-1), 1);
+ }
+
+ @Test
+ public void logApiCalledAuthMetric_nullAuthMetricPositiveSequence_success() {
+ MetricUtilities.logApiCalledAuthenticationMetric(
+ new BrowsedAuthenticationMetric(MetricUtilities.getHighlyUniqueInteger()), -1);
+ }
+
+ @Test
+ public void logApiCalledFinal_nullFinalNegativeSequenceAndStatus_success() {
+ MetricUtilities.logApiCalledFinalPhase(null, null,
+ -1, -1);
+ }
+
+ @Test
+ public void logApiCalledFinal_invalidFinalPhasePositiveSequenceAndStatus_success() {
+ MetricUtilities.logApiCalledFinalPhase(new ChosenProviderFinalPhaseMetric(-1, -1),
+ List.of(new CandidateBrowsingPhaseMetric()), 1, 1);
+ }
+
+ @Test
+ public void logApiCalledFinal_validFinalMetric_success() {
+ MetricUtilities.logApiCalledFinalPhase(
+ new ChosenProviderFinalPhaseMetric(MetricUtilities.getHighlyUniqueInteger(),
+ MetricUtilities.getHighlyUniqueInteger()),
+ List.of(new CandidateBrowsingPhaseMetric()), 1, 1);
+ }
}