Replace uses of SystemBatteryConsumer with aggregate BatteryConsumers
Bug: 186006876 Test: make RunSettingsRoboTests Test: make RunSettingsGoogleRoboTests Change-Id: I2e240aa15c87b4b9dcbe993b4b0b1111285ec3ff
This commit is contained in:
@@ -17,18 +17,17 @@ package com.android.settings.fuelgauge;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
import static org.mockito.ArgumentMatchers.any;
|
||||
import static org.mockito.Mockito.doReturn;
|
||||
import static org.mockito.Mockito.spy;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.ContentValues;
|
||||
import android.content.Context;
|
||||
import android.content.pm.ApplicationInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.os.SystemBatteryConsumer;
|
||||
import android.os.UserManager;
|
||||
import android.os.BatteryConsumer;
|
||||
import android.os.UserHandle;
|
||||
import android.os.UserManager;
|
||||
|
||||
import com.android.settings.R;
|
||||
|
||||
@@ -112,9 +111,9 @@ public final class BatteryDiffEntryTest {
|
||||
public void testLoadLabelAndIcon_forSystemBattery_returnExpectedResult() {
|
||||
// Generates fake testing data.
|
||||
final ContentValues values = getContentValuesWithType(
|
||||
ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
|
||||
ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
|
||||
values.put("drainType",
|
||||
Integer.valueOf(SystemBatteryConsumer.DRAIN_TYPE_AMBIENT_DISPLAY));
|
||||
Integer.valueOf(BatteryConsumer.POWER_COMPONENT_AMBIENT_DISPLAY));
|
||||
final BatteryHistEntry batteryHistEntry = new BatteryHistEntry(values);
|
||||
|
||||
final BatteryDiffEntry entry = createBatteryDiffEntry(10, batteryHistEntry);
|
||||
|
@@ -28,9 +28,9 @@ import android.content.Context;
|
||||
import android.content.pm.ApplicationInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.content.pm.PackageManager.NameNotFoundException;
|
||||
import android.os.BatteryConsumer;
|
||||
import android.os.Handler;
|
||||
import android.os.Process;
|
||||
import android.os.SystemBatteryConsumer;
|
||||
import android.os.UidBatteryConsumer;
|
||||
import android.os.UserBatteryConsumer;
|
||||
import android.os.UserManager;
|
||||
@@ -68,7 +68,6 @@ public class BatteryEntryTest {
|
||||
@Mock private PackageManager mockPackageManager;
|
||||
@Mock private UserManager mockUserManager;
|
||||
@Mock private UidBatteryConsumer mUidBatteryConsumer;
|
||||
@Mock private SystemBatteryConsumer mSystemBatteryConsumer;
|
||||
|
||||
@Before
|
||||
public void stubContextToReturnMockPackageManager() {
|
||||
@@ -97,11 +96,12 @@ public class BatteryEntryTest {
|
||||
consumer, false, packages, packageName);
|
||||
}
|
||||
|
||||
private BatteryEntry createSystemBatteryEntry(int drainType) {
|
||||
SystemBatteryConsumer consumer = mock(SystemBatteryConsumer.class);
|
||||
when(consumer.getDrainType()).thenReturn(drainType);
|
||||
return new BatteryEntry(mMockContext, mockHandler, mockUserManager,
|
||||
consumer, false, null, null);
|
||||
private BatteryEntry createAggregateBatteryEntry(int powerComponentId) {
|
||||
return new BatteryEntry(mMockContext, powerComponentId, 200, 100, 1000);
|
||||
}
|
||||
|
||||
private BatteryEntry createCustomAggregateBatteryEntry(int powerComponentId) {
|
||||
return new BatteryEntry(mMockContext, powerComponentId, "CUSTOM", 200, 100);
|
||||
}
|
||||
|
||||
private BatteryEntry createUserBatteryConsumer(int userId) {
|
||||
@@ -151,16 +151,22 @@ public class BatteryEntryTest {
|
||||
|
||||
@Test
|
||||
public void batteryEntryForAOD_containCorrectInfo() {
|
||||
final SystemBatteryConsumer systemBatteryConsumer = mock(SystemBatteryConsumer.class);
|
||||
when(systemBatteryConsumer.getDrainType())
|
||||
.thenReturn(SystemBatteryConsumer.DRAIN_TYPE_AMBIENT_DISPLAY);
|
||||
final BatteryEntry entry = new BatteryEntry(RuntimeEnvironment.application, mockHandler,
|
||||
mockUserManager, systemBatteryConsumer, false, null, null);
|
||||
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");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void batteryEntryForCustomComponent_containCorrectInfo() {
|
||||
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");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getTimeInForegroundMs_app() {
|
||||
final BatteryEntry entry = new BatteryEntry(RuntimeEnvironment.application, mockHandler,
|
||||
@@ -173,11 +179,9 @@ public class BatteryEntryTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getTimeInForegroundMs_systemConsumer() {
|
||||
final BatteryEntry entry = new BatteryEntry(RuntimeEnvironment.application, mockHandler,
|
||||
mockUserManager, mSystemBatteryConsumer, false, null, null);
|
||||
|
||||
when(mSystemBatteryConsumer.getUsageDurationMillis()).thenReturn(100L);
|
||||
public void getTimeInForegroundMs_aggregateBatteryConsumer() {
|
||||
final BatteryEntry entry = new BatteryEntry(RuntimeEnvironment.application,
|
||||
BatteryConsumer.POWER_COMPONENT_BLUETOOTH, 10, 20, 100);
|
||||
|
||||
assertThat(entry.getTimeInForegroundMs()).isEqualTo(100L);
|
||||
}
|
||||
@@ -195,11 +199,8 @@ public class BatteryEntryTest {
|
||||
|
||||
@Test
|
||||
public void getTimeInBackgroundMs_systemConsumer() {
|
||||
final BatteryEntry entry = new BatteryEntry(RuntimeEnvironment.application, mockHandler,
|
||||
mockUserManager, mSystemBatteryConsumer, false, null, null);
|
||||
|
||||
when(mSystemBatteryConsumer.getUsageDurationMillis())
|
||||
.thenReturn(100L);
|
||||
final BatteryEntry entry = new BatteryEntry(RuntimeEnvironment.application,
|
||||
BatteryConsumer.POWER_COMPONENT_BLUETOOTH, 100, 200, 1000);
|
||||
|
||||
assertThat(entry.getTimeInBackgroundMs()).isEqualTo(0);
|
||||
}
|
||||
@@ -225,13 +226,21 @@ public class BatteryEntryTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getKey_SystemBatteryConsumer_returnDrainType() {
|
||||
final BatteryEntry entry =
|
||||
createSystemBatteryEntry(SystemBatteryConsumer.DRAIN_TYPE_BLUETOOTH);
|
||||
public void getKey_AggregateBatteryConsumer_returnComponentId() {
|
||||
final BatteryEntry entry = createAggregateBatteryEntry(
|
||||
BatteryConsumer.POWER_COMPONENT_BLUETOOTH);
|
||||
final String key = entry.getKey();
|
||||
assertThat(key).isEqualTo("S|2");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getKey_CustomAggregateBatteryConsumer_returnComponentId() {
|
||||
final BatteryEntry entry = createCustomAggregateBatteryEntry(
|
||||
BatteryConsumer.FIRST_CUSTOM_POWER_COMPONENT_ID + 42);
|
||||
final String key = entry.getKey();
|
||||
assertThat(key).isEqualTo("S|1042");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getKey_UserBatteryConsumer_returnUserId() {
|
||||
doReturn(mockUserManager).when(mMockContext).getSystemService(UserManager.class);
|
||||
|
@@ -17,15 +17,12 @@ package com.android.settings.fuelgauge;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
import static org.mockito.Mockito.doReturn;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import android.database.MatrixCursor;
|
||||
import android.content.ContentValues;
|
||||
import android.os.BatteryConsumer;
|
||||
import android.database.MatrixCursor;
|
||||
import android.os.BatteryManager;
|
||||
import android.os.BatteryUsageStats;
|
||||
import android.os.SystemBatteryConsumer;
|
||||
import android.os.UserHandle;
|
||||
|
||||
import org.junit.Before;
|
||||
@@ -44,8 +41,6 @@ public final class BatteryHistEntryTest {
|
||||
private BatteryEntry mockBatteryEntry;
|
||||
@Mock
|
||||
private BatteryUsageStats mBatteryUsageStats;
|
||||
@Mock
|
||||
private SystemBatteryConsumer mockSystemBatteryConsumer;
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
@@ -65,9 +60,9 @@ public final class BatteryHistEntryTest {
|
||||
mockBatteryEntry.percent = 0.3;
|
||||
when(mockBatteryEntry.getTimeInForegroundMs()).thenReturn(1234L);
|
||||
when(mockBatteryEntry.getTimeInBackgroundMs()).thenReturn(5689L);
|
||||
when(mockBatteryEntry.getBatteryConsumer())
|
||||
.thenReturn(mockSystemBatteryConsumer);
|
||||
when(mockSystemBatteryConsumer.getDrainType()).thenReturn(expectedType);
|
||||
when(mockBatteryEntry.getPowerComponentId()).thenReturn(expectedType);
|
||||
when(mockBatteryEntry.getConsumerType())
|
||||
.thenReturn(ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
|
||||
final ContentValues values =
|
||||
ConvertUtils.convert(
|
||||
mockBatteryEntry,
|
||||
@@ -228,7 +223,7 @@ public final class BatteryHistEntryTest {
|
||||
assertThat(entry.mPercentOfTotal).isEqualTo(percentOfTotal);
|
||||
assertThat(entry.mForegroundUsageTimeInMs).isEqualTo(1234L);
|
||||
assertThat(entry.mBackgroundUsageTimeInMs).isEqualTo(5689L);
|
||||
assertThat(entry.mDrainType).isEqualTo(drainType);
|
||||
assertThat(entry.mPowerComponentId).isEqualTo(drainType);
|
||||
assertThat(entry.mConsumerType)
|
||||
.isEqualTo(ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
|
||||
assertThat(entry.mBatteryLevel).isEqualTo(12);
|
||||
|
@@ -44,12 +44,12 @@ import android.content.pm.ActivityInfo;
|
||||
import android.content.pm.ApplicationInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.content.pm.ResolveInfo;
|
||||
import android.os.BatteryConsumer;
|
||||
import android.os.BatteryStats;
|
||||
import android.os.BatteryStatsManager;
|
||||
import android.os.BatteryUsageStats;
|
||||
import android.os.Build;
|
||||
import android.os.Process;
|
||||
import android.os.SystemBatteryConsumer;
|
||||
import android.os.SystemClock;
|
||||
|
||||
import com.android.settings.fuelgauge.batterytip.AnomalyDatabaseHelper;
|
||||
@@ -113,7 +113,7 @@ public class BatteryUtilsTest {
|
||||
@Mock
|
||||
private BatteryUsageStats mBatteryUsageStats;
|
||||
@Mock
|
||||
private SystemBatteryConsumer mSystemBatteryConsumer;
|
||||
private BatteryConsumer mAggregateBatteryConsumer;
|
||||
@Mock
|
||||
private BatteryInfo mBatteryInfo;
|
||||
@Mock
|
||||
@@ -218,53 +218,47 @@ public class BatteryUtilsTest {
|
||||
|
||||
@Test
|
||||
public void testShouldHideSystemConsumer_TypeIdle_ReturnTrue() {
|
||||
when(mSystemBatteryConsumer.getDrainType())
|
||||
.thenReturn(SystemBatteryConsumer.DRAIN_TYPE_IDLE);
|
||||
assertThat(mBatteryUtils.shouldHideSystemBatteryConsumer(mSystemBatteryConsumer)).isTrue();
|
||||
assertThat(mBatteryUtils.shouldHideDevicePowerComponent(mAggregateBatteryConsumer,
|
||||
BatteryConsumer.POWER_COMPONENT_IDLE)).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testShouldHideSystemConsumer_TypeMobileRadio_ReturnTrue() {
|
||||
when(mSystemBatteryConsumer.getDrainType())
|
||||
.thenReturn(SystemBatteryConsumer.DRAIN_TYPE_MOBILE_RADIO);
|
||||
assertThat(mBatteryUtils.shouldHideSystemBatteryConsumer(mSystemBatteryConsumer)).isTrue();
|
||||
assertThat(mBatteryUtils.shouldHideDevicePowerComponent(mAggregateBatteryConsumer,
|
||||
BatteryConsumer.POWER_COMPONENT_MOBILE_RADIO)).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testShouldHideSystemConsumer_TypeScreen_ReturnTrue() {
|
||||
when(mSystemBatteryConsumer.getDrainType())
|
||||
.thenReturn(SystemBatteryConsumer.DRAIN_TYPE_SCREEN);
|
||||
assertThat(mBatteryUtils.shouldHideSystemBatteryConsumer(mSystemBatteryConsumer)).isTrue();
|
||||
assertThat(mBatteryUtils.shouldHideDevicePowerComponent(mAggregateBatteryConsumer,
|
||||
BatteryConsumer.POWER_COMPONENT_SCREEN)).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testShouldHideSystemConsumer_TypeBluetooth_ReturnTrue() {
|
||||
when(mSystemBatteryConsumer.getDrainType())
|
||||
.thenReturn(SystemBatteryConsumer.DRAIN_TYPE_BLUETOOTH);
|
||||
assertThat(mBatteryUtils.shouldHideSystemBatteryConsumer(mSystemBatteryConsumer)).isTrue();
|
||||
}
|
||||
assertThat(mBatteryUtils.shouldHideDevicePowerComponent(mAggregateBatteryConsumer,
|
||||
BatteryConsumer.POWER_COMPONENT_BLUETOOTH)).isTrue(); }
|
||||
|
||||
@Test
|
||||
public void testShouldHideSystemConsumer_TypeWifi_ReturnTrue() {
|
||||
when(mSystemBatteryConsumer.getDrainType())
|
||||
.thenReturn(SystemBatteryConsumer.DRAIN_TYPE_WIFI);
|
||||
assertThat(mBatteryUtils.shouldHideSystemBatteryConsumer(mSystemBatteryConsumer)).isTrue();
|
||||
assertThat(mBatteryUtils.shouldHideDevicePowerComponent(mAggregateBatteryConsumer,
|
||||
BatteryConsumer.POWER_COMPONENT_WIFI)).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testShouldHideSystemConsumer_LowPower_ReturnTrue() {
|
||||
when(mSystemBatteryConsumer.getDrainType())
|
||||
.thenReturn(SystemBatteryConsumer.DRAIN_TYPE_FLASHLIGHT);
|
||||
when(mSystemBatteryConsumer.getConsumedPower()).thenReturn(0.0005);
|
||||
assertThat(mBatteryUtils.shouldHideSystemBatteryConsumer(mSystemBatteryConsumer)).isTrue();
|
||||
when(mAggregateBatteryConsumer.getConsumedPower(
|
||||
BatteryConsumer.POWER_COMPONENT_FLASHLIGHT)).thenReturn(0.0005);
|
||||
assertThat(mBatteryUtils.shouldHideDevicePowerComponent(mAggregateBatteryConsumer,
|
||||
BatteryConsumer.POWER_COMPONENT_FLASHLIGHT)).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testShouldHideSystemConsumer_HighPower_ReturnFalse() {
|
||||
when(mSystemBatteryConsumer.getDrainType())
|
||||
.thenReturn(SystemBatteryConsumer.DRAIN_TYPE_FLASHLIGHT);
|
||||
when(mSystemBatteryConsumer.getConsumedPower()).thenReturn(0.5);
|
||||
assertThat(mBatteryUtils.shouldHideSystemBatteryConsumer(mSystemBatteryConsumer)).isFalse();
|
||||
when(mAggregateBatteryConsumer.getConsumedPower(
|
||||
BatteryConsumer.POWER_COMPONENT_FLASHLIGHT)).thenReturn(0.5);
|
||||
assertThat(mBatteryUtils.shouldHideDevicePowerComponent(mAggregateBatteryConsumer,
|
||||
BatteryConsumer.POWER_COMPONENT_FLASHLIGHT)).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@@ -17,18 +17,13 @@ package com.android.settings.fuelgauge;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
import static org.mockito.Mockito.doReturn;
|
||||
import static org.mockito.Mockito.when;
|
||||
import static org.mockito.Mockito.spy;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import android.content.ContentValues;
|
||||
import android.content.Context;
|
||||
import android.os.BatteryConsumer;
|
||||
import android.os.BatteryManager;
|
||||
import android.os.BatteryUsageStats;
|
||||
import android.os.SystemBatteryConsumer;
|
||||
import android.os.UidBatteryConsumer;
|
||||
import android.os.UserBatteryConsumer;
|
||||
import android.os.UserHandle;
|
||||
|
||||
import org.junit.Before;
|
||||
@@ -39,12 +34,10 @@ import org.mockito.MockitoAnnotations;
|
||||
import org.robolectric.RobolectricTestRunner;
|
||||
import org.robolectric.RuntimeEnvironment;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Arrays;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
import java.util.TimeZone;
|
||||
|
||||
@@ -56,14 +49,6 @@ public final class ConvertUtilsTest {
|
||||
private BatteryUsageStats mBatteryUsageStats;
|
||||
@Mock
|
||||
private BatteryEntry mockBatteryEntry;
|
||||
@Mock
|
||||
private BatteryConsumer mockBatteryConsumer;
|
||||
@Mock
|
||||
private UidBatteryConsumer mockUidBatteryConsumer;
|
||||
@Mock
|
||||
private UserBatteryConsumer mockUserBatteryConsumer;
|
||||
@Mock
|
||||
private SystemBatteryConsumer mockSystemBatteryConsumer;
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
@@ -84,9 +69,9 @@ public final class ConvertUtilsTest {
|
||||
mockBatteryEntry.percent = 0.3;
|
||||
when(mockBatteryEntry.getTimeInForegroundMs()).thenReturn(1234L);
|
||||
when(mockBatteryEntry.getTimeInBackgroundMs()).thenReturn(5689L);
|
||||
when(mockBatteryEntry.getBatteryConsumer())
|
||||
.thenReturn(mockSystemBatteryConsumer);
|
||||
when(mockSystemBatteryConsumer.getDrainType()).thenReturn(expectedType);
|
||||
when(mockBatteryEntry.getPowerComponentId()).thenReturn(expectedType);
|
||||
when(mockBatteryEntry.getConsumerType())
|
||||
.thenReturn(ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
|
||||
|
||||
final ContentValues values =
|
||||
ConvertUtils.convert(
|
||||
@@ -155,38 +140,6 @@ public final class ConvertUtilsTest {
|
||||
.isEqualTo(ConvertUtils.FAKE_PACKAGE_NAME);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetDrainType_returnsExpetcedResult() {
|
||||
final int expectedType = 3;
|
||||
when(mockSystemBatteryConsumer.getDrainType())
|
||||
.thenReturn(expectedType);
|
||||
|
||||
assertThat(ConvertUtils.getDrainType(mockSystemBatteryConsumer))
|
||||
.isEqualTo(expectedType);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetDrainType_notValidConsumer_returnsInvalidTypeValue() {
|
||||
assertThat(ConvertUtils.getDrainType(mockUserBatteryConsumer))
|
||||
.isEqualTo(ConvertUtils.INVALID_DRAIN_TYPE);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetConsumerType_returnsExpetcedResult() {
|
||||
assertThat(ConvertUtils.getConsumerType(mockUidBatteryConsumer))
|
||||
.isEqualTo(ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
|
||||
assertThat(ConvertUtils.getConsumerType(mockUserBatteryConsumer))
|
||||
.isEqualTo(ConvertUtils.CONSUMER_TYPE_USER_BATTERY);
|
||||
assertThat(ConvertUtils.getConsumerType(mockSystemBatteryConsumer))
|
||||
.isEqualTo(ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetConsumeType_invalidConsumer_returnsInvalidType() {
|
||||
assertThat(ConvertUtils.getConsumerType(mockBatteryConsumer))
|
||||
.isEqualTo(ConvertUtils.CONSUMER_TYPE_UNKNOWN);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetIndexedUsageMap_returnsExpectedResult() {
|
||||
// Creates the fake testing data.
|
||||
|
Reference in New Issue
Block a user