Merge "Add usage percentage and battery level into app relative metric" into sc-dev
This commit is contained in:
@@ -33,6 +33,7 @@ import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import android.app.AppOpsManager;
|
||||
import android.app.settings.SettingsEnums;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.pm.ApplicationInfo;
|
||||
@@ -41,6 +42,7 @@ import android.graphics.drawable.Drawable;
|
||||
import android.os.BatteryStats;
|
||||
import android.os.Bundle;
|
||||
import android.os.UserHandle;
|
||||
import android.util.Pair;
|
||||
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
import androidx.loader.app.LoaderManager;
|
||||
@@ -56,6 +58,7 @@ import com.android.settings.widget.EntityHeaderController;
|
||||
import com.android.settingslib.applications.AppUtils;
|
||||
import com.android.settingslib.applications.ApplicationsState;
|
||||
import com.android.settingslib.applications.instantapps.InstantAppDataProvider;
|
||||
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.widget.LayoutPreference;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
@@ -129,6 +132,7 @@ public class AdvancedPowerUsageDetailTest {
|
||||
private AdvancedPowerUsageDetail mFragment;
|
||||
private SettingsActivity mTestActivity;
|
||||
private FakeFeatureFactory mFeatureFactory;
|
||||
private MetricsFeatureProvider mMetricsFeatureProvider;
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
@@ -137,6 +141,7 @@ public class AdvancedPowerUsageDetailTest {
|
||||
mContext = spy(RuntimeEnvironment.application);
|
||||
when(mContext.getPackageName()).thenReturn("foo");
|
||||
mFeatureFactory = FakeFeatureFactory.setupForTest();
|
||||
mMetricsFeatureProvider = mFeatureFactory.metricsFeatureProvider;
|
||||
|
||||
mFragment = spy(new AdvancedPowerUsageDetail());
|
||||
doReturn(mContext).when(mFragment).getContext();
|
||||
@@ -751,5 +756,13 @@ public class AdvancedPowerUsageDetailTest {
|
||||
assertThat(mOptimizePreference.isChecked()).isTrue();
|
||||
assertThat(mRestrictedPreference.isChecked()).isFalse();
|
||||
assertThat(mUnrestrictedPreference.isChecked()).isFalse();
|
||||
verify(mMetricsFeatureProvider)
|
||||
.action(
|
||||
mContext,
|
||||
SettingsEnums.ACTION_APP_BATTERY_USAGE_OPTIMIZED,
|
||||
(Pair<Integer, Object>[]) new Pair[] {
|
||||
new Pair(ConvertUtils.METRIC_KEY_PACKAGE, null),
|
||||
new Pair(ConvertUtils.METRIC_KEY_BATTERY_USAGE, "app label")
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@@ -36,6 +36,7 @@ import android.content.res.Resources;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.os.Bundle;
|
||||
import android.text.format.DateUtils;
|
||||
import android.util.Pair;
|
||||
|
||||
import androidx.preference.Preference;
|
||||
import androidx.preference.PreferenceCategory;
|
||||
@@ -92,6 +93,7 @@ public final class BatteryChartPreferenceControllerTest {
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
org.robolectric.shadows.ShadowSettings.set24HourTimeFormat(false);
|
||||
MockitoAnnotations.initMocks(this);
|
||||
mFeatureFactory = FakeFeatureFactory.setupForTest();
|
||||
mMetricsFeatureProvider = mFeatureFactory.metricsFeatureProvider;
|
||||
@@ -361,7 +363,11 @@ public final class BatteryChartPreferenceControllerTest {
|
||||
.action(
|
||||
mContext,
|
||||
SettingsEnums.ACTION_BATTERY_USAGE_SYSTEM_ITEM,
|
||||
mBatteryHistEntry.mPackageName);
|
||||
(Pair<Integer, Object>[]) new Pair[] {
|
||||
new Pair(ConvertUtils.METRIC_KEY_PACKAGE, null),
|
||||
new Pair(ConvertUtils.METRIC_KEY_BATTERY_LEVEL, 0),
|
||||
new Pair(ConvertUtils.METRIC_KEY_BATTERY_USAGE, null)
|
||||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -378,7 +384,11 @@ public final class BatteryChartPreferenceControllerTest {
|
||||
.action(
|
||||
mContext,
|
||||
SettingsEnums.ACTION_BATTERY_USAGE_APP_ITEM,
|
||||
mBatteryHistEntry.mPackageName);
|
||||
(Pair<Integer, Object>[]) new Pair[] {
|
||||
new Pair(ConvertUtils.METRIC_KEY_PACKAGE, null),
|
||||
new Pair(ConvertUtils.METRIC_KEY_BATTERY_LEVEL, 0),
|
||||
new Pair(ConvertUtils.METRIC_KEY_BATTERY_USAGE, null)
|
||||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -560,13 +570,13 @@ public final class BatteryChartPreferenceControllerTest {
|
||||
verify(mBatteryChartPreferenceController.mAppListPrefGroup)
|
||||
.setTitle(captor.capture());
|
||||
assertThat(captor.getValue())
|
||||
.isEqualTo("App usage for 4 pm-7 am");
|
||||
.isEqualTo("App usage for 4 pm - 7 am");
|
||||
// Verifies the title in the expandable divider.
|
||||
captor = ArgumentCaptor.forClass(String.class);
|
||||
verify(mBatteryChartPreferenceController.mExpandDividerPreference)
|
||||
.setTitle(captor.capture());
|
||||
assertThat(captor.getValue())
|
||||
.isEqualTo("System usage for 4 pm-7 am");
|
||||
.isEqualTo("System usage for 4 pm - 7 am");
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@@ -55,6 +55,7 @@ public final class BatteryDiffEntryTest {
|
||||
@Mock private Drawable mockDrawable;
|
||||
@Mock private Drawable mockDrawable2;
|
||||
@Mock private Drawable mockBadgedDrawable;
|
||||
@Mock private BatteryHistEntry mBatteryHistEntry;
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
@@ -97,9 +98,9 @@ public final class BatteryDiffEntryTest {
|
||||
public void testComparator_sortCollectionsInDescOrder() {
|
||||
final List<BatteryDiffEntry> entryList = new ArrayList<>();
|
||||
// Generates fake testing data.
|
||||
entryList.add(createBatteryDiffEntry(30, /*batteryHistEntry=*/ null));
|
||||
entryList.add(createBatteryDiffEntry(20, /*batteryHistEntry=*/ null));
|
||||
entryList.add(createBatteryDiffEntry(10, /*batteryHistEntry=*/ null));
|
||||
entryList.add(createBatteryDiffEntry(30, mBatteryHistEntry));
|
||||
entryList.add(createBatteryDiffEntry(20, mBatteryHistEntry));
|
||||
entryList.add(createBatteryDiffEntry(10, mBatteryHistEntry));
|
||||
Collections.sort(entryList, BatteryDiffEntry.COMPARATOR);
|
||||
|
||||
assertThat(entryList.get(0).getPercentOfTotal()).isEqualTo(30);
|
||||
|
Reference in New Issue
Block a user