Don't show high usage tip when device is charing

The summary is "Battery may run out soon", it doesn't make sense
when device is charging.

Change-Id: I27394c8a75dac4dcad171e5e215102d39cb33546
Fixes: 78261389
Test: RunSettingsRoboTests
This commit is contained in:
Lei Yu
2018-04-20 13:08:50 -07:00
parent 1257466d0b
commit 69c370f594
3 changed files with 19 additions and 6 deletions

View File

@@ -30,6 +30,7 @@ import android.text.format.DateUtils;
import com.android.internal.os.BatterySipper;
import com.android.internal.os.BatteryStatsHelper;
import com.android.settings.fuelgauge.BatteryInfo;
import com.android.settings.fuelgauge.BatteryUtils;
import com.android.settings.fuelgauge.batterytip.AppInfo;
import com.android.settings.fuelgauge.batterytip.BatteryTipPolicy;
@@ -77,7 +78,8 @@ public class HighUsageDetectorTest {
mContext = RuntimeEnvironment.application;
mPolicy = spy(new BatteryTipPolicy(mContext));
mHighUsageDetector = spy(new HighUsageDetector(mContext, mPolicy, mBatteryStatsHelper));
mHighUsageDetector = spy(new HighUsageDetector(mContext, mPolicy, mBatteryStatsHelper,
true /* mDischarging */));
mHighUsageDetector.mBatteryUtils = mBatteryUtils;
mHighUsageDetector.mDataParser = mDataParser;
doNothing().when(mHighUsageDetector).parseBatteryData();
@@ -109,6 +111,15 @@ public class HighUsageDetectorTest {
assertThat(mHighUsageDetector.detect().isVisible()).isFalse();
}
@Test
public void testDetect_deviceCharging_tipInvisible() {
ReflectionHelpers.setField(mPolicy, "highUsageEnabled", true);
doReturn(true).when(mDataParser).isDeviceHeavilyUsed();
mHighUsageDetector.mDischarging = false;
assertThat(mHighUsageDetector.detect().isVisible()).isFalse();
}
@Test
public void testDetect_testFeatureOn_tipNew() {
doReturn(false).when(mDataParser).isDeviceHeavilyUsed();