Skip to content
Snippets Groups Projects
Commit 8e9591db authored by Jayden Kim's avatar Jayden Kim Committed by Gerrit Code Review
Browse files

Merge "Revert^2 "Adds screen on/off event counter""

parents 82763f0b da22af50
No related branches found
No related tags found
No related merge requests found
......@@ -394,6 +394,15 @@ import java.util.Objects;
}
}
@GuardedBy("sLock")
private static void recordScreenOnOffMetrics(boolean isScreenOn) {
if (isScreenOn) {
MetricsLogger.getInstance().cacheCount(BluetoothProtoEnums.SCREEN_ON_EVENT, 1);
} else {
MetricsLogger.getInstance().cacheCount(BluetoothProtoEnums.SCREEN_OFF_EVENT, 1);
}
}
private static int getScanWeight(int scanMode) {
switch (scanMode) {
case ScanSettings.SCAN_MODE_OPPORTUNISTIC:
......@@ -439,6 +448,7 @@ import java.util.Objects;
recordScanRadioDurationMetrics();
sRadioStartTime = SystemClock.elapsedRealtime();
}
recordScreenOnOffMetrics(isScreenOn);
sIsScreenOn = isScreenOn;
}
}
......
......@@ -37,6 +37,7 @@ import static org.mockito.Mockito.atMost;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.eq;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
......@@ -1054,7 +1055,6 @@ public class ScanManagerTest {
final boolean isFiltered = true;
// Turn on screen
sendMessageWaitForProcessed(createScreenOnOffMessage(true));
verify(mMetricsLogger, never()).cacheCount(anyInt(), anyLong());
Mockito.clearInvocations(mMetricsLogger);
// Create scan client
ScanClient client = createScanClient(0, isFiltered, SCAN_MODE_LOW_POWER);
......@@ -1085,7 +1085,6 @@ public class ScanManagerTest {
final boolean isFiltered = true;
// Turn on screen
sendMessageWaitForProcessed(createScreenOnOffMessage(true));
verify(mMetricsLogger, never()).cacheCount(anyInt(), anyLong());
Mockito.clearInvocations(mMetricsLogger);
// Create scan client
ScanClient client = createScanClient(0, isFiltered, SCAN_MODE_LOW_POWER);
......@@ -1136,7 +1135,6 @@ public class ScanManagerTest {
final boolean isFiltered = true;
// Turn on screen
sendMessageWaitForProcessed(createScreenOnOffMessage(true));
verify(mMetricsLogger, never()).cacheCount(anyInt(), anyLong());
Mockito.clearInvocations(mMetricsLogger);
// Create scan clients with different duty cycles
ScanClient client = createScanClient(0, isFiltered, SCAN_MODE_LOW_POWER);
......@@ -1217,4 +1215,25 @@ public class ScanManagerTest {
Mockito.clearInvocations(mMetricsLogger);
}
}
@Test
public void testMetricsScreenOnOff() {
// Turn off screen initially
sendMessageWaitForProcessed(createScreenOnOffMessage(false));
Mockito.clearInvocations(mMetricsLogger);
// Turn on screen
sendMessageWaitForProcessed(createScreenOnOffMessage(true));
verify(mMetricsLogger, never()).cacheCount(
eq(BluetoothProtoEnums.SCREEN_OFF_EVENT), anyLong());
verify(mMetricsLogger, times(1)).cacheCount(
eq(BluetoothProtoEnums.SCREEN_ON_EVENT), anyLong());
Mockito.clearInvocations(mMetricsLogger);
// Turn off screen
sendMessageWaitForProcessed(createScreenOnOffMessage(false));
verify(mMetricsLogger, never()).cacheCount(
eq(BluetoothProtoEnums.SCREEN_ON_EVENT), anyLong());
verify(mMetricsLogger, times(1)).cacheCount(
eq(BluetoothProtoEnums.SCREEN_OFF_EVENT), anyLong());
Mockito.clearInvocations(mMetricsLogger);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment