diff options
author | Etan Cohen <etancohen@google.com> | 2017-07-01 02:27:44 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2017-07-01 02:27:44 +0000 |
commit | 40828b4273f3d33a0a731a9348afc15650f9071f (patch) | |
tree | a703e2fb9caa342e69f680d311e541941de0d019 /tests | |
parent | 541112a663292bb91edd203c0a9d49ec3b4e1d60 (diff) | |
parent | ce6c2369142d74281cf6c1a929b12f69b259b4e0 (diff) |
Merge "[AWARE] Metrics for Aware enable/disable cycle" into oc-dr1-dev am: 2f09c3602b
am: ce6c236914
Change-Id: Ic064013cec67867b43f80f829162862569be7afb
Diffstat (limited to 'tests')
-rw-r--r-- | tests/wifitests/src/com/android/server/wifi/aware/WifiAwareMetricsTest.java | 61 | ||||
-rw-r--r-- | tests/wifitests/src/com/android/server/wifi/aware/WifiAwareStateManagerTest.java | 2 |
2 files changed, 63 insertions, 0 deletions
diff --git a/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareMetricsTest.java b/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareMetricsTest.java index 3cfb78f79..470a1de3d 100644 --- a/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareMetricsTest.java +++ b/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareMetricsTest.java @@ -149,6 +149,67 @@ public class WifiAwareMetricsTest { equalTo(0)); } + /** + * Validates that recordEnableAware() and recordDisableAware() record valid metrics. + */ + @Test + public void testEnableDisableAwareMetrics() { + WifiMetricsProto.WifiAwareLog log; + + // create 2 records + setTime(5); + mDut.recordEnableAware(); + setTime(10); + mDut.recordDisableAware(); + setTime(11); + mDut.recordEnableAware(); + setTime(12); + mDut.recordDisableAware(); + + setTime(14); + log = mDut.consolidateProto(); + collector.checkThat(countAllHistogramSamples(log.histogramAwareEnabledDurationMs), + equalTo(2)); + validateProtoHistBucket("Duration[0] #1", log.histogramAwareEnabledDurationMs[0], 1, 2, + 1); + validateProtoHistBucket("Duration[1] #1", log.histogramAwareEnabledDurationMs[1], 5, 6, + 1); + collector.checkThat(log.enabledTimeMs, equalTo(6L)); + + // create another partial record + setTime(15); + mDut.recordEnableAware(); + + setTime(17); + log = mDut.consolidateProto(); + collector.checkThat(countAllHistogramSamples(log.histogramAwareEnabledDurationMs), + equalTo(2)); + validateProtoHistBucket("Duration[0] #2", log.histogramAwareEnabledDurationMs[0], 1, 2, + 1); + validateProtoHistBucket("Duration[1] #2", log.histogramAwareEnabledDurationMs[1], 5, 6, + 1); + collector.checkThat(log.enabledTimeMs, equalTo(8L)); // the partial record of 2ms + + + // clear and continue that partial record (verify completed) + mDut.clear(); + setTime(23); + mDut.recordDisableAware(); + + log = mDut.consolidateProto(); + collector.checkThat(countAllHistogramSamples(log.histogramAwareEnabledDurationMs), + equalTo(1)); + validateProtoHistBucket("Duration[0] #3", log.histogramAwareEnabledDurationMs[0], 8, 9, + 1); + collector.checkThat(log.enabledTimeMs, equalTo(6L)); // the remnant record of 6ms + + // clear and verify empty records + mDut.clear(); + log = mDut.consolidateProto(); + collector.checkThat(countAllHistogramSamples(log.histogramAwareEnabledDurationMs), + equalTo(0)); + } + @Test public void testAttachSessionMetrics() { final int uid1 = 1005; diff --git a/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareStateManagerTest.java b/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareStateManagerTest.java index 6d5a52933..3652e7b52 100644 --- a/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareStateManagerTest.java +++ b/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareStateManagerTest.java @@ -333,11 +333,13 @@ public class WifiAwareStateManagerTest { collector.checkThat("usage disabled", mDut.isUsageEnabled(), equalTo(false)); inOrder.verify(mMockNative).disable(transactionId.capture()); inOrderM.verify(mAwareMetricsMock).recordAttachSessionDuration(anyLong()); + inOrderM.verify(mAwareMetricsMock).recordDisableAware(); inOrderM.verify(mAwareMetricsMock).recordDisableUsage(); validateCorrectAwareStatusChangeBroadcast(inOrder, false); validateInternalClientInfoCleanedUp(clientId); mDut.onDisableResponse(transactionId.getValue(), NanStatusType.SUCCESS); mMockLooper.dispatchAll(); + inOrderM.verify(mAwareMetricsMock).recordDisableAware(); // (4) try connecting again and validate that get a failure mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false); |