Merge "Fix inconsistent connected without charging state in the Settings" into udc-qpr-dev
This commit is contained in:
@@ -18,6 +18,7 @@ package com.android.settings.fuelgauge;
|
||||
|
||||
import android.content.ComponentName;
|
||||
import android.content.Context;
|
||||
import android.os.BatteryManager;
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
@@ -139,7 +140,10 @@ public class TopLevelBatteryPreferenceController extends BasePreferenceControlle
|
||||
if (Utils.containsIncompatibleChargers(mContext, TAG)) {
|
||||
return mContext.getString(R.string.battery_info_status_not_charging);
|
||||
}
|
||||
if (!info.discharging && info.chargeLabel != null) {
|
||||
if (info.batteryStatus == BatteryManager.BATTERY_STATUS_NOT_CHARGING) {
|
||||
// Present status only if no remaining time or status anomalous
|
||||
return info.statusLabel;
|
||||
} else if (!info.discharging && info.chargeLabel != null) {
|
||||
return info.chargeLabel;
|
||||
} else if (info.remainingLabel == null) {
|
||||
return info.batteryPercentString;
|
||||
|
@@ -31,6 +31,7 @@ import android.content.Intent;
|
||||
import android.hardware.usb.UsbManager;
|
||||
import android.hardware.usb.UsbPort;
|
||||
import android.hardware.usb.UsbPortStatus;
|
||||
import android.os.BatteryManager;
|
||||
|
||||
import androidx.preference.Preference;
|
||||
import androidx.test.core.app.ApplicationProvider;
|
||||
@@ -145,6 +146,17 @@ public class TopLevelBatteryPreferenceControllerTest {
|
||||
.isEqualTo(mContext.getString(R.string.battery_info_status_not_charging));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getDashboardLabel_notChargingState_returnsCorrectLabel() {
|
||||
mController.mPreference = new Preference(mContext);
|
||||
BatteryInfo info = new BatteryInfo();
|
||||
info.batteryStatus = BatteryManager.BATTERY_STATUS_NOT_CHARGING;
|
||||
info.statusLabel = "expected returned label";
|
||||
|
||||
assertThat(mController.getDashboardLabel(mContext, info, true))
|
||||
.isEqualTo(info.statusLabel);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getSummary_batteryNotPresent_shouldShowWarningMessage() {
|
||||
mController.mIsBatteryPresent = false;
|
||||
|
Reference in New Issue
Block a user