Merge "Add NPE check for battery header update."

This commit is contained in:
Lei Yu
2017-02-27 17:56:24 +00:00
committed by Android (Google) Code Review
2 changed files with 13 additions and 2 deletions

View File

@@ -535,6 +535,10 @@ public class PowerUsageSummary extends PowerUsageBase {
@VisibleForTesting @VisibleForTesting
void updateHeaderPreference(BatteryInfo info) { void updateHeaderPreference(BatteryInfo info) {
final Context context = getContext();
if (context == null) {
return;
}
final BatteryMeterView batteryView = (BatteryMeterView) mBatteryLayoutPref final BatteryMeterView batteryView = (BatteryMeterView) mBatteryLayoutPref
.findViewById(R.id.battery_header_icon); .findViewById(R.id.battery_header_icon);
final TextView timeText = (TextView) mBatteryLayoutPref.findViewById(R.id.time); final TextView timeText = (TextView) mBatteryLayoutPref.findViewById(R.id.time);
@@ -545,8 +549,7 @@ public class PowerUsageSummary extends PowerUsageBase {
R.string.estimated_time_left : R.string.estimated_charging_time_left; R.string.estimated_time_left : R.string.estimated_charging_time_left;
if (info.remainingTimeUs != 0) { if (info.remainingTimeUs != 0) {
timeText.setText(Utils.formatElapsedTime(getContext(), timeText.setText(Utils.formatElapsedTime(context, info.remainingTimeUs / 1000, false));
info.remainingTimeUs / 1000, false));
} else { } else {
timeText.setText(info.statusLabel); timeText.setText(info.statusLabel);
} }

View File

@@ -362,6 +362,14 @@ public class PowerUsageSummaryTest {
verify(mSummary1).setText(R.string.estimated_time_left); verify(mSummary1).setText(R.string.estimated_time_left);
} }
@Test
public void testUpdateHeaderPreference_AsyncUpdate_ShouldNotCrash() {
when(mPowerUsageSummary.getContext()).thenReturn(null);
mBatteryInfo.remainingTimeUs = REMAINING_TIME_US;
//Should not crash
mPowerUsageSummary.updateHeaderPreference(mBatteryInfo);
}
private void testToggleAllApps(final boolean isShowApps) { private void testToggleAllApps(final boolean isShowApps) {
mFragment.mShowAllApps = isShowApps; mFragment.mShowAllApps = isShowApps;