Format BatteryEntry and BatteryDiffEntry class

Bug: N/A
Test: make RunSettingsRoboTests
Change-Id: I14e2ef4c455209e58edc5ccdbe064f469815cccd
This commit is contained in:
ykhung
2022-04-17 11:17:11 +08:00
committed by YK Hung
parent c4801433d9
commit b593e00af0
10 changed files with 102 additions and 124 deletions

View File

@@ -172,7 +172,7 @@ public class AdvancedPowerUsageDetail extends DashboardFragment implements
launchArgs.mPackageName = entry.getDefaultPackageName();
launchArgs.mAppLabel = entry.getLabel();
launchArgs.mUid = entry.getUid();
launchArgs.mIconId = entry.iconId;
launchArgs.mIconId = entry.mIconId;
launchArgs.mConsumedPower = (int) entry.getConsumedPower();
launchArgs.mForegroundTimeMs = isValidToShowSummary ? entry.getTimeInForegroundMs() : 0;
launchArgs.mBackgroundTimeMs = isValidToShowSummary ? entry.getTimeInBackgroundMs() : 0;

View File

@@ -127,9 +127,9 @@ public class BatteryAppListPreferenceController extends AbstractPreferenceContro
final int userId = UserHandle.getUserId(entry.getUid());
final UserHandle userHandle = new UserHandle(userId);
pgp.setIcon(mUserManager.getBadgedIconForUser(entry.getIcon(), userHandle));
pgp.setTitle(entry.name);
pgp.setTitle(entry.mName);
if (entry.isAppEntry()) {
pgp.setContentDescription(entry.name);
pgp.setContentDescription(entry.mName);
}
}
break;
@@ -249,7 +249,7 @@ public class BatteryAppListPreferenceController extends AbstractPreferenceContro
contentDescription, entry);
pref.setKey(key);
}
entry.percent = percentOfTotal;
entry.mPercent = percentOfTotal;
pref.setTitle(entry.getLabel());
pref.setOrder(i + 1);
pref.setPercent(percentOfTotal);
@@ -288,7 +288,7 @@ public class BatteryAppListPreferenceController extends AbstractPreferenceContro
final BatteryEntry entry = usageList.get(i);
final double percentOfTotal = mBatteryUtils.calculateBatteryPercent(
entry.getConsumedPower(), totalPower, dischargePercentage);
entry.percent = percentOfTotal;
entry.mPercent = percentOfTotal;
}
return usageList;
}

View File

@@ -171,9 +171,9 @@ public class BatteryDiffEntry {
// Checks whether we have cached data or not first before fetching.
final BatteryEntry.NameAndIcon nameAndIcon = getCache();
if (nameAndIcon != null) {
mAppLabel = nameAndIcon.name;
mAppIcon = nameAndIcon.icon;
mAppIconId = nameAndIcon.iconId;
mAppLabel = nameAndIcon.mName;
mAppIcon = nameAndIcon.mIcon;
mAppIconId = nameAndIcon.mIconId;
}
final Boolean validForRestriction = sValidForRestriction.get(getKey());
if (validForRestriction != null) {
@@ -196,8 +196,8 @@ public class BatteryDiffEntry {
BatteryEntry.getNameAndIconFromUserId(
mContext, (int) mBatteryHistEntry.mUserId);
if (nameAndIconForUser != null) {
mAppIcon = nameAndIconForUser.icon;
mAppLabel = nameAndIconForUser.name;
mAppIcon = nameAndIconForUser.mIcon;
mAppLabel = nameAndIconForUser.mName;
sResourceCache.put(
getKey(),
new BatteryEntry.NameAndIcon(mAppLabel, mAppIcon, /*iconId=*/ 0));
@@ -208,10 +208,10 @@ public class BatteryDiffEntry {
BatteryEntry.getNameAndIconFromPowerComponent(
mContext, mBatteryHistEntry.mDrainType);
if (nameAndIconForSystem != null) {
mAppLabel = nameAndIconForSystem.name;
if (nameAndIconForSystem.iconId != 0) {
mAppIconId = nameAndIconForSystem.iconId;
mAppIcon = mContext.getDrawable(nameAndIconForSystem.iconId);
mAppLabel = nameAndIconForSystem.mName;
if (nameAndIconForSystem.mIconId != 0) {
mAppIconId = nameAndIconForSystem.mIconId;
mAppIcon = mContext.getDrawable(nameAndIconForSystem.mIconId);
}
sResourceCache.put(
getKey(),
@@ -308,8 +308,8 @@ public class BatteryDiffEntry {
if (packages == null || packages.length == 0) {
final BatteryEntry.NameAndIcon nameAndIcon =
BatteryEntry.getNameAndIconFromUid(mContext, mAppLabel, uid);
mAppLabel = nameAndIcon.name;
mAppIcon = nameAndIcon.icon;
mAppLabel = nameAndIcon.mName;
mAppIcon = nameAndIcon.mIcon;
}
final BatteryEntry.NameAndIcon nameAndIcon =
@@ -319,13 +319,13 @@ public class BatteryDiffEntry {
// Clears BatteryEntry internal cache since we will have another one.
BatteryEntry.clearUidCache();
if (nameAndIcon != null) {
mAppLabel = nameAndIcon.name;
mAppIcon = nameAndIcon.icon;
mDefaultPackageName = nameAndIcon.packageName;
mAppLabel = nameAndIcon.mName;
mAppIcon = nameAndIcon.mIcon;
mDefaultPackageName = nameAndIcon.mPackageName;
if (mDefaultPackageName != null
&& !mDefaultPackageName.equals(nameAndIcon.packageName)) {
&& !mDefaultPackageName.equals(nameAndIcon.mPackageName)) {
Log.w(TAG, String.format("found different package: %s | %s",
mDefaultPackageName, nameAndIcon.packageName));
mDefaultPackageName, nameAndIcon.mPackageName));
}
}
}

View File

@@ -53,10 +53,10 @@ import java.util.Locale;
public class BatteryEntry {
public static final class NameAndIcon {
public final String name;
public final String packageName;
public final Drawable icon;
public final int iconId;
public final String mName;
public final String mPackageName;
public final Drawable mIcon;
public final int mIconId;
public NameAndIcon(String name, Drawable icon, int iconId) {
this(name, /*packageName=*/ null, icon, iconId);
@@ -64,10 +64,10 @@ public class BatteryEntry {
public NameAndIcon(
String name, String packageName, Drawable icon, int iconId) {
this.name = name;
this.icon = icon;
this.iconId = iconId;
this.packageName = packageName;
this.mName = name;
this.mIcon = icon;
this.mIconId = iconId;
this.mPackageName = packageName;
}
}
@@ -111,11 +111,11 @@ public class BatteryEntry {
final NameAndIcon nameAndIcon =
BatteryEntry.loadNameAndIcon(
be.mContext, be.getUid(), sHandler, be,
be.mDefaultPackageName, be.name, be.icon);
be.mDefaultPackageName, be.mName, be.mIcon);
if (nameAndIcon != null) {
be.icon = nameAndIcon.icon;
be.name = nameAndIcon.name;
be.mDefaultPackageName = nameAndIcon.packageName;
be.mIcon = nameAndIcon.mIcon;
be.mName = nameAndIcon.mName;
be.mDefaultPackageName = nameAndIcon.mPackageName;
}
}
}
@@ -169,27 +169,27 @@ public class BatteryEntry {
private long mTimeInForegroundMs;
private long mTimeInBackgroundMs;
public String name;
public Drawable icon;
public int iconId; // For passing to the detail screen.
public double percent;
public String mName;
public Drawable mIcon;
public int mIconId;
public double mPercent;
private String mDefaultPackageName;
private double mConsumedPower;
static class UidToDetail {
String name;
String packageName;
Drawable icon;
String mName;
String mPackageName;
Drawable mIcon;
}
public BatteryEntry(Context context, Handler handler, UserManager um,
@NonNull BatteryConsumer batteryConsumer, boolean isHidden, int uid, String[] packages,
BatteryConsumer batteryConsumer, boolean isHidden, int uid, String[] packages,
String packageName) {
this(context, handler, um, batteryConsumer, isHidden, uid, packages, packageName, true);
}
public BatteryEntry(Context context, Handler handler, UserManager um,
@NonNull BatteryConsumer batteryConsumer, boolean isHidden, int uid, String[] packages,
BatteryConsumer batteryConsumer, boolean isHidden, int uid, String[] packages,
String packageName, boolean loadDataInBackground) {
sHandler = handler;
mContext = context;
@@ -217,11 +217,11 @@ public class BatteryEntry {
try {
ApplicationInfo appInfo =
pm.getApplicationInfo(mDefaultPackageName, 0 /* no flags */);
name = pm.getApplicationLabel(appInfo).toString();
mName = pm.getApplicationLabel(appInfo).toString();
} catch (NameNotFoundException e) {
Log.d(TAG, "PackageManager failed to retrieve ApplicationInfo for: "
+ mDefaultPackageName);
name = mDefaultPackageName;
mName = mDefaultPackageName;
}
}
getQuickNameIconForUid(uid, packages, loadDataInBackground);
@@ -235,10 +235,10 @@ public class BatteryEntry {
mConsumedPower = batteryConsumer.getConsumedPower();
final NameAndIcon nameAndIcon = getNameAndIconFromUserId(
context, ((UserBatteryConsumer) batteryConsumer).getUserId());
icon = nameAndIcon.icon;
name = nameAndIcon.name;
mIcon = nameAndIcon.mIcon;
mName = nameAndIcon.mName;
} else {
throw new IllegalArgumentException("Unsupported battery consumer: " + batteryConsumer);
throw new IllegalArgumentException("Unsupported: " + batteryConsumer);
}
}
@@ -257,11 +257,12 @@ public class BatteryEntry {
mUsageDurationMs = usageDurationMs;
mConsumerType = ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY;
final NameAndIcon nameAndIcon = getNameAndIconFromPowerComponent(context, powerComponentId);
iconId = nameAndIcon.iconId;
name = nameAndIcon.name;
if (iconId != 0) {
icon = context.getDrawable(iconId);
final NameAndIcon nameAndIcon =
getNameAndIconFromPowerComponent(context, powerComponentId);
mIconId = nameAndIcon.mIconId;
mName = nameAndIcon.mName;
if (mIconId != 0) {
mIcon = context.getDrawable(mIconId);
}
}
@@ -274,9 +275,9 @@ public class BatteryEntry {
mIsHidden = false;
mPowerComponentId = powerComponentId;
iconId = R.drawable.ic_power_system;
icon = context.getDrawable(iconId);
name = powerComponentName;
mIconId = R.drawable.ic_power_system;
mIcon = context.getDrawable(mIconId);
mName = powerComponentName;
mConsumedPower =
powerComponentId == BatteryConsumer.POWER_COMPONENT_SCREEN
? devicePowerMah
@@ -285,14 +286,11 @@ public class BatteryEntry {
}
public Drawable getIcon() {
return icon;
return mIcon;
}
/**
* Gets the application name
*/
public String getLabel() {
return name;
return mName;
}
@ConvertUtils.ConsumerType
@@ -317,18 +315,18 @@ public class BatteryEntry {
final String uidString = Integer.toString(uid);
if (sUidCache.containsKey(uidString)) {
UidToDetail utd = sUidCache.get(uidString);
mDefaultPackageName = utd.packageName;
name = utd.name;
icon = utd.icon;
mDefaultPackageName = utd.mPackageName;
mName = utd.mName;
mIcon = utd.mIcon;
return;
}
if (packages == null || packages.length == 0) {
final NameAndIcon nameAndIcon = getNameAndIconFromUid(mContext, name, uid);
icon = nameAndIcon.icon;
name = nameAndIcon.name;
final NameAndIcon nameAndIcon = getNameAndIconFromUid(mContext, mName, uid);
mIcon = nameAndIcon.mIcon;
mName = nameAndIcon.mName;
} else {
icon = mContext.getPackageManager().getDefaultActivityIcon();
mIcon = mContext.getPackageManager().getDefaultActivityIcon();
}
// Avoids post the loading icon and label in the background request.
@@ -339,9 +337,7 @@ public class BatteryEntry {
}
}
/**
* Loads the app label and icon image and stores into the cache.
*/
/** Loads the app label and icon image and stores into the cache. */
public static NameAndIcon loadNameAndIcon(
Context context,
int uid,
@@ -400,7 +396,7 @@ public class BatteryEntry {
// Look for an official name for this UID.
for (String pkgName : packages) {
try {
final PackageInfo pi = ipm.getPackageInfo(pkgName, 0 /* no flags */, userId);
final PackageInfo pi = ipm.getPackageInfo(pkgName, 0, userId);
if (pi == null) {
Log.d(TAG, "Retrieving null package info for package "
+ pkgName + ", user " + userId);
@@ -432,9 +428,9 @@ public class BatteryEntry {
}
UidToDetail utd = new UidToDetail();
utd.name = name;
utd.icon = icon;
utd.packageName = defaultPackageName;
utd.mName = name;
utd.mIcon = icon;
utd.mPackageName = defaultPackageName;
sUidCache.put(uidString, utd);
if (handler != null) {
@@ -443,9 +439,7 @@ public class BatteryEntry {
return new NameAndIcon(name, defaultPackageName, icon, /*iconId=*/ 0);
}
/**
* Returns a string that uniquely identifies this battery consumer.
*/
/** Returns a string that uniquely identifies this battery consumer. */
public String getKey() {
if (mBatteryConsumer instanceof UidBatteryConsumer) {
return Integer.toString(mUid);
@@ -456,23 +450,17 @@ public class BatteryEntry {
}
}
/**
* Returns true if the entry is hidden from the battery usage summary list.
*/
/** Returns true if the entry is hidden from the battery usage summary list. */
public boolean isHidden() {
return mIsHidden;
}
/**
* Returns true if this entry describes an app (UID)
*/
/** Returns true if this entry describes an app (UID). */
public boolean isAppEntry() {
return mBatteryConsumer instanceof UidBatteryConsumer;
}
/**
* Returns true if this entry describes a User.
*/
/** Returns true if this entry describes a User. */
public boolean isUserEntry() {
if (mBatteryConsumer instanceof UserBatteryConsumer) {
return true;
@@ -495,9 +483,7 @@ public class BatteryEntry {
return mUid;
}
/**
* Returns foreground foreground time (in milliseconds) that is attributed to this entry.
*/
/** Returns foreground foreground time/ms that is attributed to this entry. */
public long getTimeInForegroundMs() {
if (mBatteryConsumer instanceof UidBatteryConsumer) {
return mTimeInForegroundMs;
@@ -506,9 +492,7 @@ public class BatteryEntry {
}
}
/**
* Returns background activity time (in milliseconds) that is attributed to this entry.
*/
/** Returns background activity time/ms that is attributed to this entry. */
public long getTimeInBackgroundMs() {
if (mBatteryConsumer instanceof UidBatteryConsumer) {
return mTimeInBackgroundMs;
@@ -542,9 +526,7 @@ public class BatteryEntry {
}
}
/**
* Gets name and icon resource from UserBatteryConsumer userId.
*/
/** Gets name and icon resource from UserBatteryConsumer userId. */
public static NameAndIcon getNameAndIconFromUserId(
Context context, final int userId) {
UserManager um = context.getSystemService(UserManager.class);
@@ -562,9 +544,7 @@ public class BatteryEntry {
return new NameAndIcon(name, icon, 0 /* iconId */);
}
/**
* Gets name and icon resource from UidBatteryConsumer uid.
*/
/** Gets name and icon resource from UidBatteryConsumer uid. */
public static NameAndIcon getNameAndIconFromUid(
Context context, String name, final int uid) {
Drawable icon = context.getDrawable(R.drawable.ic_power_system);
@@ -579,9 +559,7 @@ public class BatteryEntry {
return new NameAndIcon(name, icon, 0 /* iconId */);
}
/**
* Gets name and icon resource from BatteryConsumer power component ID.
*/
/** Gets name and icon resource from BatteryConsumer power component ID. */
public static NameAndIcon getNameAndIconFromPowerComponent(
Context context, @BatteryConsumer.PowerComponent int powerComponentId) {
String name;

View File

@@ -101,7 +101,7 @@ public final class ConvertUtils {
values.put(BatteryHistEntry.KEY_CONSUME_POWER,
Double.valueOf(entry.getConsumedPower()));
values.put(BatteryHistEntry.KEY_PERCENT_OF_TOTAL,
Double.valueOf(entry.percent));
Double.valueOf(entry.mPercent));
values.put(BatteryHistEntry.KEY_FOREGROUND_USAGE_TIME,
Long.valueOf(entry.getTimeInForegroundMs()));
values.put(BatteryHistEntry.KEY_BACKGROUND_USAGE_TIME,

View File

@@ -181,7 +181,7 @@ public class AdvancedPowerUsageDetailTest {
when(mBatteryEntry.getLabel()).thenReturn(APP_LABEL);
when(mBatteryEntry.getTimeInBackgroundMs()).thenReturn(BACKGROUND_TIME_MS);
when(mBatteryEntry.getTimeInForegroundMs()).thenReturn(FOREGROUND_TIME_MS);
mBatteryEntry.iconId = ICON_ID;
mBatteryEntry.mIconId = ICON_ID;
mFragment.mHeaderPreference = mHeaderPreference;
mFragment.mState = mState;

View File

@@ -140,8 +140,8 @@ public final class BatteryDiffEntryTest {
// Verifies the app label in the cache.
final BatteryEntry.NameAndIcon nameAndIcon =
BatteryDiffEntry.sResourceCache.get(entry.getKey());
assertThat(nameAndIcon.name).isEqualTo(expectedName);
assertThat(nameAndIcon.iconId).isEqualTo(R.drawable.ic_settings_aod);
assertThat(nameAndIcon.mName).isEqualTo(expectedName);
assertThat(nameAndIcon.mIconId).isEqualTo(R.drawable.ic_settings_aod);
// Verifies the restrictable flag in the cache.
assertThat(entry.mValidForRestriction).isTrue();
assertThat(BatteryDiffEntry.sValidForRestriction.get(entry.getKey())).isTrue();
@@ -166,8 +166,8 @@ public final class BatteryDiffEntryTest {
// Verifies the app label in the cache.
final BatteryEntry.NameAndIcon nameAndIcon =
BatteryDiffEntry.sResourceCache.get(entry.getKey());
assertThat(nameAndIcon.name).isEqualTo(expectedName);
assertThat(nameAndIcon.iconId).isEqualTo(0);
assertThat(nameAndIcon.mName).isEqualTo(expectedName);
assertThat(nameAndIcon.mIconId).isEqualTo(0);
// Verifies the restrictable flag in the cache.
assertThat(entry.mValidForRestriction).isTrue();
assertThat(BatteryDiffEntry.sValidForRestriction.get(entry.getKey())).isTrue();
@@ -195,7 +195,7 @@ public final class BatteryDiffEntryTest {
// Verifies the app label in the cache.
final BatteryEntry.NameAndIcon nameAndIcon =
BatteryDiffEntry.sResourceCache.get(entry.getKey());
assertThat(nameAndIcon.name).isEqualTo(expectedAppLabel);
assertThat(nameAndIcon.mName).isEqualTo(expectedAppLabel);
// Verifies the restrictable flag in the cache.
assertThat(entry.mValidForRestriction).isFalse();
assertThat(BatteryDiffEntry.sValidForRestriction.get(entry.getKey())).isFalse();
@@ -215,7 +215,7 @@ public final class BatteryDiffEntryTest {
// Verifies the app label in the cache.
final BatteryEntry.NameAndIcon nameAndIcon =
BatteryDiffEntry.sResourceCache.get(entry.getKey());
assertThat(nameAndIcon.name).isEqualTo(expectedAppLabel);
assertThat(nameAndIcon.mName).isEqualTo(expectedAppLabel);
}
@Test
@@ -274,7 +274,7 @@ public final class BatteryDiffEntryTest {
// Verifies the app label in the cache.
final BatteryEntry.NameAndIcon nameAndIcon =
BatteryDiffEntry.sResourceCache.get(entry.getKey());
assertThat(nameAndIcon.icon).isEqualTo(mockDrawable);
assertThat(nameAndIcon.mIcon).isEqualTo(mockDrawable);
}
@Test
@@ -309,7 +309,7 @@ public final class BatteryDiffEntryTest {
// Verifies the cache is updated into the new drawable.
final BatteryEntry.NameAndIcon nameAndIcon =
BatteryDiffEntry.sResourceCache.get(entry2.getKey());
assertThat(nameAndIcon.icon).isEqualTo(mockDrawable2);
assertThat(nameAndIcon.mIcon).isEqualTo(mockDrawable2);
}
@Test

View File

@@ -158,8 +158,8 @@ public class BatteryEntryTest {
final BatteryEntry entry = new BatteryEntry(RuntimeEnvironment.application,
BatteryConsumer.POWER_COMPONENT_AMBIENT_DISPLAY, 200, 100, 1000);
assertThat(entry.iconId).isEqualTo(R.drawable.ic_settings_aod);
assertThat(entry.name).isEqualTo("Ambient display");
assertThat(entry.mIconId).isEqualTo(R.drawable.ic_settings_aod);
assertThat(entry.mName).isEqualTo("Ambient display");
}
@Test
@@ -167,8 +167,8 @@ public class BatteryEntryTest {
final BatteryEntry entry = new BatteryEntry(RuntimeEnvironment.application,
BatteryConsumer.FIRST_CUSTOM_POWER_COMPONENT_ID + 42, "ABC", 200, 100);
assertThat(entry.iconId).isEqualTo(R.drawable.ic_power_system);
assertThat(entry.name).isEqualTo("ABC");
assertThat(entry.mIconId).isEqualTo(R.drawable.ic_power_system);
assertThat(entry.mName).isEqualTo("ABC");
}
@Test
@@ -261,16 +261,16 @@ public class BatteryEntryTest {
final NameAndIcon nameAndIcon = BatteryEntry.getNameAndIconFromUserId(
mContext, userId);
assertThat(nameAndIcon.name).isEqualTo(getString(
assertThat(nameAndIcon.mName).isEqualTo(getString(
R.string.running_process_item_removed_user_label));
assertThat(nameAndIcon.icon).isNull();
assertThat(nameAndIcon.mIcon).isNull();
}
@Test
public void getNameAndIconFromUid_rerturnExpectedName() {
final NameAndIcon nameAndIcon = BatteryEntry.getNameAndIconFromUid(
mContext, /* name */ null, /* uid */ 0);
assertThat(nameAndIcon.name).isEqualTo(getString(R.string.process_kernel_label));
assertThat(nameAndIcon.mName).isEqualTo(getString(R.string.process_kernel_label));
assertNameAndIcon("mediaserver", R.string.process_mediaserver_label);
assertNameAndIcon("dex2oat32", R.string.process_dex2oat_label);
@@ -312,14 +312,14 @@ public class BatteryEntryTest {
private void assertNameAndIcon(String name, int stringId) {
final NameAndIcon nameAndIcon = BatteryEntry.getNameAndIconFromUid(
mContext, name, /* uid */ 1000);
assertThat(nameAndIcon.name).isEqualTo(getString(stringId));
assertThat(nameAndIcon.mName).isEqualTo(getString(stringId));
}
private void assertNameAndIcon(int powerComponentId, int stringId, int iconId) {
final NameAndIcon nameAndIcon = BatteryEntry.getNameAndIconFromPowerComponent(
mContext, powerComponentId);
assertThat(nameAndIcon.name).isEqualTo(getString(stringId));
assertThat(nameAndIcon.iconId).isEqualTo(iconId);
assertThat(nameAndIcon.mName).isEqualTo(getString(stringId));
assertThat(nameAndIcon.mIconId).isEqualTo(iconId);
}
private String getString(int stringId) {

View File

@@ -57,7 +57,7 @@ public final class BatteryHistEntryTest {
when(mockBatteryEntry.isHidden()).thenReturn(true);
when(mBatteryUsageStats.getConsumedPower()).thenReturn(5.1);
when(mockBatteryEntry.getConsumedPower()).thenReturn(1.1);
mockBatteryEntry.percent = 0.3;
mockBatteryEntry.mPercent = 0.3;
when(mockBatteryEntry.getTimeInForegroundMs()).thenReturn(1234L);
when(mockBatteryEntry.getTimeInBackgroundMs()).thenReturn(5689L);
when(mockBatteryEntry.getPowerComponentId()).thenReturn(expectedType);
@@ -76,7 +76,7 @@ public final class BatteryHistEntryTest {
assertBatteryHistEntry(
new BatteryHistEntry(values),
/*drainType=*/ expectedType,
/*percentOfTotal=*/ mockBatteryEntry.percent);
/*percentOfTotal=*/ mockBatteryEntry.mPercent);
}
@Test

View File

@@ -77,7 +77,7 @@ public final class ConvertUtilsTest {
when(mockBatteryEntry.isHidden()).thenReturn(true);
when(mBatteryUsageStats.getConsumedPower()).thenReturn(5.1);
when(mockBatteryEntry.getConsumedPower()).thenReturn(1.1);
mockBatteryEntry.percent = 0.3;
mockBatteryEntry.mPercent = 0.3;
when(mockBatteryEntry.getTimeInForegroundMs()).thenReturn(1234L);
when(mockBatteryEntry.getTimeInBackgroundMs()).thenReturn(5689L);
when(mockBatteryEntry.getPowerComponentId()).thenReturn(expectedType);