Fix app battery usage list launch incorrect works app

- App usage page only use package name to launch the page, it can not
   identify the different userId between normal app and work profile
   app, add extra userId info into launch args
 - Remove no battery usage state/string if usage time is empty

Bug: 251471047
Test: make SettingsRoboTests
Change-Id: Id06ebb0f0fcd863e423acd7839f89bc0ae2444c1
This commit is contained in:
Wesley Wang
2022-10-28 18:25:21 +08:00
parent dba9928a7e
commit eda172ce2c
4 changed files with 13 additions and 12 deletions

View File

@@ -280,8 +280,7 @@ public class AdvancedPowerUsageDetailTest {
ArgumentCaptor<CharSequence> captor = ArgumentCaptor.forClass(CharSequence.class);
verify(mEntityHeaderController).setSummary(captor.capture());
assertThat(captor.getValue().toString())
.isEqualTo("No usage from last full charge");
assertThat(captor.getValue().toString()).isEmpty();
}
@Test
@@ -571,7 +570,8 @@ public class AdvancedPowerUsageDetailTest {
public void startBatteryDetailPage_noBatteryUsage_hasBasicData() {
final ArgumentCaptor<Intent> captor = ArgumentCaptor.forClass(Intent.class);
AdvancedPowerUsageDetail.startBatteryDetailPage(mActivity, mFragment, PACKAGE_NAME[0]);
AdvancedPowerUsageDetail.startBatteryDetailPage(
mActivity, mFragment, PACKAGE_NAME[0], UserHandle.OWNER);
verify(mActivity).startActivity(captor.capture());
@@ -589,7 +589,8 @@ public class AdvancedPowerUsageDetailTest {
PackageManager.NameNotFoundException {
doReturn(UID).when(mPackageManager).getPackageUid(PACKAGE_NAME[0], 0 /* no flag */);
AdvancedPowerUsageDetail.startBatteryDetailPage(mActivity, mFragment, PACKAGE_NAME[0]);
AdvancedPowerUsageDetail.startBatteryDetailPage(
mActivity, mFragment, PACKAGE_NAME[0], UserHandle.OWNER);
assertThat(mBundle.getInt(AdvancedPowerUsageDetail.EXTRA_UID)).isEqualTo(UID);
}