Merge "Fix and re-enable BatteryStatsCpuTimesTest" into sc-dev

This commit is contained in:
TreeHugger Robot
2021-03-18 23:56:00 +00:00
committed by Android (Google) Code Review

View File

@@ -29,6 +29,8 @@ import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull; import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue; import static org.junit.Assert.assertTrue;
import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.isNull;
import static org.mockito.Mockito.doAnswer; import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.times; import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verify;
@@ -74,10 +76,9 @@ import java.util.Arrays;
* *
* or * or
* *
* bit FrameworksCoreTests:com.android.internal.os.BatteryStatsCpuTimesTest * atest FrameworksCoreTests:com.android.internal.os.BatteryStatsCpuTimesTest
*/ */
@SmallTest @SmallTest
@SkipPresubmit("b/180015146")
@RunWith(AndroidJUnit4.class) @RunWith(AndroidJUnit4.class)
public class BatteryStatsCpuTimesTest { public class BatteryStatsCpuTimesTest {
@Mock @Mock
@@ -89,6 +90,8 @@ public class BatteryStatsCpuTimesTest {
@Mock @Mock
KernelCpuUidClusterTimeReader mCpuUidClusterTimeReader; KernelCpuUidClusterTimeReader mCpuUidClusterTimeReader;
@Mock @Mock
SystemServerCpuThreadReader mSystemServerCpuThreadReader;
@Mock
BatteryStatsImpl.UserInfoProvider mUserInfoProvider; BatteryStatsImpl.UserInfoProvider mUserInfoProvider;
@Mock @Mock
PowerProfile mPowerProfile; PowerProfile mPowerProfile;
@@ -107,6 +110,7 @@ public class BatteryStatsCpuTimesTest {
.setKernelCpuUidFreqTimeReader(mCpuUidFreqTimeReader) .setKernelCpuUidFreqTimeReader(mCpuUidFreqTimeReader)
.setKernelCpuUidActiveTimeReader(mCpuUidActiveTimeReader) .setKernelCpuUidActiveTimeReader(mCpuUidActiveTimeReader)
.setKernelCpuUidClusterTimeReader(mCpuUidClusterTimeReader) .setKernelCpuUidClusterTimeReader(mCpuUidClusterTimeReader)
.setSystemServerCpuThreadReader(mSystemServerCpuThreadReader)
.setUserInfoProvider(mUserInfoProvider); .setUserInfoProvider(mUserInfoProvider);
} }
@@ -125,8 +129,8 @@ public class BatteryStatsCpuTimesTest {
// VERIFY // VERIFY
assertArrayEquals("Unexpected cpu freqs", freqs, mBatteryStatsImpl.getCpuFreqs()); assertArrayEquals("Unexpected cpu freqs", freqs, mBatteryStatsImpl.getCpuFreqs());
verify(mCpuUidUserSysTimeReader).readDelta(null); verify(mCpuUidUserSysTimeReader).readDelta(anyBoolean(), isNull());
verify(mCpuUidFreqTimeReader).readDelta(null); verify(mCpuUidFreqTimeReader).readDelta(anyBoolean(), isNull());
for (int i = 0; i < numClusters; ++i) { for (int i = 0; i < numClusters; ++i) {
verify(mKernelCpuSpeedReaders[i]).readDelta(); verify(mKernelCpuSpeedReaders[i]).readDelta();
} }
@@ -145,16 +149,16 @@ public class BatteryStatsCpuTimesTest {
// VERIFY // VERIFY
verify(mUserInfoProvider).refreshUserIds(); verify(mUserInfoProvider).refreshUserIds();
verify(mCpuUidUserSysTimeReader).readDelta( verify(mCpuUidUserSysTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidUserSysTimeReader.Callback.class)); any(KernelCpuUidUserSysTimeReader.Callback.class));
// perClusterTimesAvailable is called twice, once in updateCpuTimeLocked() and the other // perClusterTimesAvailable is called twice, once in updateCpuTimeLocked() and the other
// in readKernelUidCpuFreqTimesLocked. // in readKernelUidCpuFreqTimesLocked.
verify(mCpuUidFreqTimeReader, times(2)).perClusterTimesAvailable(); verify(mCpuUidFreqTimeReader, times(2)).perClusterTimesAvailable();
verify(mCpuUidFreqTimeReader).readDelta( verify(mCpuUidFreqTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidFreqTimeReader.Callback.class)); any(KernelCpuUidFreqTimeReader.Callback.class));
verify(mCpuUidActiveTimeReader).readDelta( verify(mCpuUidActiveTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidActiveTimeReader.Callback.class)); any(KernelCpuUidActiveTimeReader.Callback.class));
verify(mCpuUidClusterTimeReader).readDelta( verify(mCpuUidClusterTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidClusterTimeReader.Callback.class)); any(KernelCpuUidClusterTimeReader.Callback.class));
verifyNoMoreInteractions(mCpuUidFreqTimeReader); verifyNoMoreInteractions(mCpuUidFreqTimeReader);
for (int i = 0; i < numClusters; ++i) { for (int i = 0; i < numClusters; ++i) {
@@ -256,16 +260,16 @@ public class BatteryStatsCpuTimesTest {
FIRST_APPLICATION_UID + 33 FIRST_APPLICATION_UID + 33
}); });
final long[][] uidTimesUs = { final long[][] uidTimesUs = {
{12, 34}, {34897394, 3123983}, {79775429834l, 8430434903489l} {12, 34}, {34897394, 3123983}, {79775429834L, 8430434903489L}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidUserSysTimeReader.Callback<long[]> callback = final KernelCpuUidUserSysTimeReader.Callback<long[]> callback =
(KernelCpuUidUserSysTimeReader.Callback<long[]>) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], uidTimesUs[i]); callback.onUidCpuTime(testUids[i], uidTimesUs[i]);
} }
return null; return null;
}).when(mCpuUidUserSysTimeReader).readDelta( }).when(mCpuUidUserSysTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidUserSysTimeReader.Callback.class)); any(KernelCpuUidUserSysTimeReader.Callback.class));
// RUN // RUN
@@ -291,16 +295,16 @@ public class BatteryStatsCpuTimesTest {
// PRECONDITIONS // PRECONDITIONS
final long[][] deltasUs = { final long[][] deltasUs = {
{9379, 3332409833484l}, {493247, 723234}, {3247819, 123348} {9379, 3332409833484L}, {493247, 723234}, {3247819, 123348}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidUserSysTimeReader.Callback<long[]> callback = final KernelCpuUidUserSysTimeReader.Callback<long[]> callback =
(KernelCpuUidUserSysTimeReader.Callback<long[]>) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], deltasUs[i]); callback.onUidCpuTime(testUids[i], deltasUs[i]);
} }
return null; return null;
}).when(mCpuUidUserSysTimeReader).readDelta( }).when(mCpuUidUserSysTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidUserSysTimeReader.Callback.class)); any(KernelCpuUidUserSysTimeReader.Callback.class));
// RUN // RUN
@@ -331,16 +335,16 @@ public class BatteryStatsCpuTimesTest {
FIRST_APPLICATION_UID + 33 FIRST_APPLICATION_UID + 33
}); });
final long[][] uidTimesUs = { final long[][] uidTimesUs = {
{12, 34}, {34897394, 3123983}, {79775429834l, 8430434903489l} {12, 34}, {34897394, 3123983}, {79775429834L, 8430434903489L}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidUserSysTimeReader.Callback<long[]> callback = final KernelCpuUidUserSysTimeReader.Callback<long[]> callback =
(KernelCpuUidUserSysTimeReader.Callback<long[]>) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], uidTimesUs[i]); callback.onUidCpuTime(testUids[i], uidTimesUs[i]);
} }
return null; return null;
}).when(mCpuUidUserSysTimeReader).readDelta( }).when(mCpuUidUserSysTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidUserSysTimeReader.Callback.class)); any(KernelCpuUidUserSysTimeReader.Callback.class));
// RUN // RUN
@@ -367,16 +371,16 @@ public class BatteryStatsCpuTimesTest {
final int ownerUid = UserHandle.getUid(testUserId, FIRST_APPLICATION_UID + 42); final int ownerUid = UserHandle.getUid(testUserId, FIRST_APPLICATION_UID + 42);
mBatteryStatsImpl.addIsolatedUidLocked(isolatedUid, ownerUid); mBatteryStatsImpl.addIsolatedUidLocked(isolatedUid, ownerUid);
final long[][] deltasUs = { final long[][] deltasUs = {
{9379, 3332409833484l}, {493247, 723234}, {3247819, 123348} {9379, 3332409833484L}, {493247, 723234}, {3247819, 123348}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidUserSysTimeReader.Callback<long[]> callback = final KernelCpuUidUserSysTimeReader.Callback<long[]> callback =
(KernelCpuUidUserSysTimeReader.Callback<long[]>) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], deltasUs[i]); callback.onUidCpuTime(testUids[i], deltasUs[i]);
} }
return null; return null;
}).when(mCpuUidUserSysTimeReader).readDelta( }).when(mCpuUidUserSysTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidUserSysTimeReader.Callback.class)); any(KernelCpuUidUserSysTimeReader.Callback.class));
// RUN // RUN
@@ -421,18 +425,18 @@ public class BatteryStatsCpuTimesTest {
FIRST_APPLICATION_UID + 33 FIRST_APPLICATION_UID + 33
}); });
final long[][] uidTimesUs = { final long[][] uidTimesUs = {
{12, 34}, {34897394, 3123983}, {79775429834l, 8430434903489l} {12, 34}, {34897394, 3123983}, {79775429834L, 8430434903489L}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidUserSysTimeReader.Callback<long[]> callback = final KernelCpuUidUserSysTimeReader.Callback<long[]> callback =
(KernelCpuUidUserSysTimeReader.Callback<long[]>) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], uidTimesUs[i]); callback.onUidCpuTime(testUids[i], uidTimesUs[i]);
} }
// And one for the invalid uid // And one for the invalid uid
callback.onUidCpuTime(invalidUid, new long[]{3879, 239}); callback.onUidCpuTime(invalidUid, new long[]{3879, 239});
return null; return null;
}).when(mCpuUidUserSysTimeReader).readDelta( }).when(mCpuUidUserSysTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidUserSysTimeReader.Callback.class)); any(KernelCpuUidUserSysTimeReader.Callback.class));
// RUN // RUN
@@ -474,12 +478,12 @@ public class BatteryStatsCpuTimesTest {
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidUserSysTimeReader.Callback<long[]> callback = final KernelCpuUidUserSysTimeReader.Callback<long[]> callback =
(KernelCpuUidUserSysTimeReader.Callback<long[]>) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], uidTimesUs[i]); callback.onUidCpuTime(testUids[i], uidTimesUs[i]);
} }
return null; return null;
}).when(mCpuUidUserSysTimeReader).readDelta( }).when(mCpuUidUserSysTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidUserSysTimeReader.Callback.class)); any(KernelCpuUidUserSysTimeReader.Callback.class));
// RUN // RUN
@@ -553,13 +557,13 @@ public class BatteryStatsCpuTimesTest {
{8, 25, 3, 0, 42} {8, 25, 3, 0, 42}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidFreqTimeReader.Callback callback = final KernelCpuUidFreqTimeReader.Callback<long[]> callback =
(KernelCpuUidFreqTimeReader.Callback) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], uidTimesMs[i]); callback.onUidCpuTime(testUids[i], uidTimesMs[i]);
} }
return null; return null;
}).when(mCpuUidFreqTimeReader).readDelta( }).when(mCpuUidFreqTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidFreqTimeReader.Callback.class)); any(KernelCpuUidFreqTimeReader.Callback.class));
// RUN // RUN
@@ -582,17 +586,17 @@ public class BatteryStatsCpuTimesTest {
updateTimeBasesLocked(true, Display.STATE_OFF, 0, 0); updateTimeBasesLocked(true, Display.STATE_OFF, 0, 0);
final long[][] deltasMs = { final long[][] deltasMs = {
{3, 12, 55, 100, 32}, {3, 12, 55, 100, 32},
{3248327490475l, 232349349845043l, 123, 2398, 0}, {3248327490475L, 232349349845043L, 123, 2398, 0},
{43, 3345, 2143, 123, 4554} {43, 3345, 2143, 123, 4554}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidFreqTimeReader.Callback callback = final KernelCpuUidFreqTimeReader.Callback<long[]> callback =
(KernelCpuUidFreqTimeReader.Callback) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], deltasMs[i]); callback.onUidCpuTime(testUids[i], deltasMs[i]);
} }
return null; return null;
}).when(mCpuUidFreqTimeReader).readDelta( }).when(mCpuUidFreqTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidFreqTimeReader.Callback.class)); any(KernelCpuUidFreqTimeReader.Callback.class));
// RUN // RUN
@@ -636,13 +640,13 @@ public class BatteryStatsCpuTimesTest {
{8, 25, 3, 0, 42} {8, 25, 3, 0, 42}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidFreqTimeReader.Callback callback = final KernelCpuUidFreqTimeReader.Callback<long[]> callback =
(KernelCpuUidFreqTimeReader.Callback) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], uidTimesMs[i]); callback.onUidCpuTime(testUids[i], uidTimesMs[i]);
} }
return null; return null;
}).when(mCpuUidFreqTimeReader).readDelta( }).when(mCpuUidFreqTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidFreqTimeReader.Callback.class)); any(KernelCpuUidFreqTimeReader.Callback.class));
when(mCpuUidFreqTimeReader.perClusterTimesAvailable()).thenReturn(true); when(mCpuUidFreqTimeReader.perClusterTimesAvailable()).thenReturn(true);
@@ -676,17 +680,17 @@ public class BatteryStatsCpuTimesTest {
updateTimeBasesLocked(true, Display.STATE_OFF, 0, 0); updateTimeBasesLocked(true, Display.STATE_OFF, 0, 0);
final long[][] deltasMs = { final long[][] deltasMs = {
{3, 12, 55, 100, 32}, {3, 12, 55, 100, 32},
{3248327490475l, 232349349845043l, 123, 2398, 0}, {3248327490475L, 232349349845043L, 123, 2398, 0},
{43, 3345, 2143, 123, 4554} {43, 3345, 2143, 123, 4554}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidFreqTimeReader.Callback callback = final KernelCpuUidFreqTimeReader.Callback<long[]> callback =
(KernelCpuUidFreqTimeReader.Callback) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], deltasMs[i]); callback.onUidCpuTime(testUids[i], deltasMs[i]);
} }
return null; return null;
}).when(mCpuUidFreqTimeReader).readDelta( }).when(mCpuUidFreqTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidFreqTimeReader.Callback.class)); any(KernelCpuUidFreqTimeReader.Callback.class));
// RUN // RUN
@@ -746,13 +750,13 @@ public class BatteryStatsCpuTimesTest {
{8, 25, 3, 0, 42} {8, 25, 3, 0, 42}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidFreqTimeReader.Callback callback = final KernelCpuUidFreqTimeReader.Callback<long[]> callback =
(KernelCpuUidFreqTimeReader.Callback) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], uidTimesMs[i]); callback.onUidCpuTime(testUids[i], uidTimesMs[i]);
} }
return null; return null;
}).when(mCpuUidFreqTimeReader).readDelta( }).when(mCpuUidFreqTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidFreqTimeReader.Callback.class)); any(KernelCpuUidFreqTimeReader.Callback.class));
when(mCpuUidFreqTimeReader.perClusterTimesAvailable()).thenReturn(true); when(mCpuUidFreqTimeReader.perClusterTimesAvailable()).thenReturn(true);
@@ -836,13 +840,13 @@ public class BatteryStatsCpuTimesTest {
{8, 25, 3, 0, 42} {8, 25, 3, 0, 42}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidFreqTimeReader.Callback callback = final KernelCpuUidFreqTimeReader.Callback<long[]> callback =
(KernelCpuUidFreqTimeReader.Callback) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], uidTimesMs[i]); callback.onUidCpuTime(testUids[i], uidTimesMs[i]);
} }
return null; return null;
}).when(mCpuUidFreqTimeReader).readDelta( }).when(mCpuUidFreqTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidFreqTimeReader.Callback.class)); any(KernelCpuUidFreqTimeReader.Callback.class));
// RUN // RUN
@@ -865,17 +869,17 @@ public class BatteryStatsCpuTimesTest {
updateTimeBasesLocked(true, Display.STATE_OFF, 0, 0); updateTimeBasesLocked(true, Display.STATE_OFF, 0, 0);
final long[][] deltasMs = { final long[][] deltasMs = {
{3, 12, 55, 100, 32, 34984, 27983}, {3, 12, 55, 100, 32, 34984, 27983},
{3248327490475l, 232349349845043l, 123, 2398, 0, 398, 0}, {3248327490475L, 232349349845043L, 123, 2398, 0, 398, 0},
{43, 3345, 2143, 123, 4554, 9374983794839l, 979875} {43, 3345, 2143, 123, 4554, 9374983794839L, 979875}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidFreqTimeReader.Callback callback = final KernelCpuUidFreqTimeReader.Callback<long[]> callback =
(KernelCpuUidFreqTimeReader.Callback) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], deltasMs[i]); callback.onUidCpuTime(testUids[i], deltasMs[i]);
} }
return null; return null;
}).when(mCpuUidFreqTimeReader).readDelta( }).when(mCpuUidFreqTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidFreqTimeReader.Callback.class)); any(KernelCpuUidFreqTimeReader.Callback.class));
// RUN // RUN
@@ -913,13 +917,13 @@ public class BatteryStatsCpuTimesTest {
{8, 25, 3, 0, 42} {8, 25, 3, 0, 42}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidFreqTimeReader.Callback callback = final KernelCpuUidFreqTimeReader.Callback<long[]> callback =
(KernelCpuUidFreqTimeReader.Callback) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], uidTimesMs[i]); callback.onUidCpuTime(testUids[i], uidTimesMs[i]);
} }
return null; return null;
}).when(mCpuUidFreqTimeReader).readDelta( }).when(mCpuUidFreqTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidFreqTimeReader.Callback.class)); any(KernelCpuUidFreqTimeReader.Callback.class));
// RUN // RUN
@@ -953,13 +957,13 @@ public class BatteryStatsCpuTimesTest {
{43, 3345, 2143, 123, 4554} {43, 3345, 2143, 123, 4554}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidFreqTimeReader.Callback callback = final KernelCpuUidFreqTimeReader.Callback<long[]> callback =
(KernelCpuUidFreqTimeReader.Callback) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], deltasMs[i]); callback.onUidCpuTime(testUids[i], deltasMs[i]);
} }
return null; return null;
}).when(mCpuUidFreqTimeReader).readDelta( }).when(mCpuUidFreqTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidFreqTimeReader.Callback.class)); any(KernelCpuUidFreqTimeReader.Callback.class));
// RUN // RUN
@@ -1008,15 +1012,15 @@ public class BatteryStatsCpuTimesTest {
{8, 25, 3, 0, 42} {8, 25, 3, 0, 42}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidFreqTimeReader.Callback callback = final KernelCpuUidFreqTimeReader.Callback<long[]> callback =
(KernelCpuUidFreqTimeReader.Callback) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], uidTimesMs[i]); callback.onUidCpuTime(testUids[i], uidTimesMs[i]);
} }
// And one for the invalid uid // And one for the invalid uid
callback.onUidCpuTime(invalidUid, new long[]{12, 839, 32, 34, 21}); callback.onUidCpuTime(invalidUid, new long[]{12, 839, 32, 34, 21});
return null; return null;
}).when(mCpuUidFreqTimeReader).readDelta( }).when(mCpuUidFreqTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidFreqTimeReader.Callback.class)); any(KernelCpuUidFreqTimeReader.Callback.class));
// RUN // RUN
@@ -1051,13 +1055,13 @@ public class BatteryStatsCpuTimesTest {
}); });
final long[] uidTimesMs = {8000, 25000, 3000, 0, 42000}; final long[] uidTimesMs = {8000, 25000, 3000, 0, 42000};
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidActiveTimeReader.Callback callback = final KernelCpuUidActiveTimeReader.Callback<Long> callback =
(KernelCpuUidActiveTimeReader.Callback) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], uidTimesMs[i]); callback.onUidCpuTime(testUids[i], uidTimesMs[i]);
} }
return null; return null;
}).when(mCpuUidActiveTimeReader).readDelta( }).when(mCpuUidActiveTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidActiveTimeReader.Callback.class)); any(KernelCpuUidActiveTimeReader.Callback.class));
// RUN // RUN
@@ -1077,13 +1081,13 @@ public class BatteryStatsCpuTimesTest {
updateTimeBasesLocked(true, Display.STATE_OFF, 0, 0); updateTimeBasesLocked(true, Display.STATE_OFF, 0, 0);
final long[] deltasMs = {43000, 3345000, 2143000, 123000, 4554000}; final long[] deltasMs = {43000, 3345000, 2143000, 123000, 4554000};
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidActiveTimeReader.Callback callback = final KernelCpuUidActiveTimeReader.Callback<Long> callback =
(KernelCpuUidActiveTimeReader.Callback) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], deltasMs[i]); callback.onUidCpuTime(testUids[i], deltasMs[i]);
} }
return null; return null;
}).when(mCpuUidActiveTimeReader).readDelta( }).when(mCpuUidActiveTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidActiveTimeReader.Callback.class)); any(KernelCpuUidActiveTimeReader.Callback.class));
// RUN // RUN
@@ -1115,15 +1119,15 @@ public class BatteryStatsCpuTimesTest {
}); });
final long[] uidTimesMs = {8000, 25000, 3000, 0, 42000}; final long[] uidTimesMs = {8000, 25000, 3000, 0, 42000};
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidActiveTimeReader.Callback callback = final KernelCpuUidActiveTimeReader.Callback<Long> callback =
(KernelCpuUidActiveTimeReader.Callback) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], uidTimesMs[i]); callback.onUidCpuTime(testUids[i], uidTimesMs[i]);
} }
// And one for the invalid uid // And one for the invalid uid
callback.onUidCpuTime(invalidUid, 1200L); callback.onUidCpuTime(invalidUid, 1200L);
return null; return null;
}).when(mCpuUidActiveTimeReader).readDelta( }).when(mCpuUidActiveTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidActiveTimeReader.Callback.class)); any(KernelCpuUidActiveTimeReader.Callback.class));
// RUN // RUN
@@ -1159,13 +1163,13 @@ public class BatteryStatsCpuTimesTest {
{8000, 0} {8000, 0}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidClusterTimeReader.Callback callback = final KernelCpuUidClusterTimeReader.Callback<long[]> callback =
(KernelCpuUidClusterTimeReader.Callback) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], uidTimesMs[i]); callback.onUidCpuTime(testUids[i], uidTimesMs[i]);
} }
return null; return null;
}).when(mCpuUidClusterTimeReader).readDelta( }).when(mCpuUidClusterTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidClusterTimeReader.Callback.class)); any(KernelCpuUidClusterTimeReader.Callback.class));
// RUN // RUN
@@ -1189,13 +1193,13 @@ public class BatteryStatsCpuTimesTest {
{43000, 3345000} {43000, 3345000}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidClusterTimeReader.Callback callback = final KernelCpuUidClusterTimeReader.Callback<long[]> callback =
(KernelCpuUidClusterTimeReader.Callback) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], deltasMs[i]); callback.onUidCpuTime(testUids[i], deltasMs[i]);
} }
return null; return null;
}).when(mCpuUidClusterTimeReader).readDelta( }).when(mCpuUidClusterTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidClusterTimeReader.Callback.class)); any(KernelCpuUidClusterTimeReader.Callback.class));
// RUN // RUN
@@ -1232,15 +1236,15 @@ public class BatteryStatsCpuTimesTest {
{8000, 0} {8000, 0}
}; };
doAnswer(invocation -> { doAnswer(invocation -> {
final KernelCpuUidClusterTimeReader.Callback callback = final KernelCpuUidClusterTimeReader.Callback<long[]> callback =
(KernelCpuUidClusterTimeReader.Callback) invocation.getArguments()[0]; invocation.getArgument(1);
for (int i = 0; i < testUids.length; ++i) { for (int i = 0; i < testUids.length; ++i) {
callback.onUidCpuTime(testUids[i], uidTimesMs[i]); callback.onUidCpuTime(testUids[i], uidTimesMs[i]);
} }
// And one for the invalid uid // And one for the invalid uid
callback.onUidCpuTime(invalidUid, new long[]{400, 1000}); callback.onUidCpuTime(invalidUid, new long[]{400, 1000});
return null; return null;
}).when(mCpuUidClusterTimeReader).readDelta( }).when(mCpuUidClusterTimeReader).readDelta(anyBoolean(),
any(KernelCpuUidClusterTimeReader.Callback.class)); any(KernelCpuUidClusterTimeReader.Callback.class));
// RUN // RUN