Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 28839c05 authored by Jesse Evans's avatar Jesse Evans Committed by android-build-merger
Browse files

Merge "Properly set isInstantApp for power usage page" into oc-dev

am: 3c191209

Change-Id: I1cfc5a19c5a133607e5ebc0731632aca25a8f044
parents ab13b378 3c191209
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -28,7 +28,6 @@ import android.os.UserManager;
import android.support.annotation.VisibleForTesting;
import android.support.v14.preference.PreferenceFragment;
import android.support.v7.preference.Preference;
import android.text.TextUtils;
import android.view.View;

import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
@@ -45,6 +44,7 @@ import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.enterprise.DevicePolicyManagerWrapper;
import com.android.settings.enterprise.DevicePolicyManagerWrapperImpl;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.applications.AppUtils;
import com.android.settingslib.applications.ApplicationsState;

import java.util.ArrayList;
@@ -202,7 +202,11 @@ public class AdvancedPowerUsageDetail extends DashboardFragment implements
            mState.ensureIcon(mAppEntry);
            controller.setLabel(mAppEntry);
            controller.setIcon(mAppEntry);
            controller.setSummary(getString(Utils.getInstallationStatus(mAppEntry.info)));
            boolean isInstantApp = AppUtils.isInstant(mAppEntry.info);
            CharSequence summary = isInstantApp
                    ? null : getString(Utils.getInstallationStatus(mAppEntry.info));
            controller.setIsInstantApp(AppUtils.isInstant(mAppEntry.info));
            controller.setSummary(summary);
        }

        controller.done(context, true /* rebindActions */);
+29 −1
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.settings.fuelgauge;

import static com.google.common.truth.Truth.assertThat;

import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyInt;
import static org.mockito.Matchers.anyLong;
@@ -46,7 +47,9 @@ import com.android.settings.TestConfig;
import com.android.settings.applications.AppHeaderController;
import com.android.settings.applications.LayoutPreference;
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settingslib.applications.AppUtils;
import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.applications.instantapps.InstantAppDataProvider;

import org.junit.Before;
import org.junit.Test;
@@ -58,7 +61,6 @@ import org.mockito.MockitoAnnotations;
import org.mockito.invocation.InvocationOnMock;
import org.mockito.stubbing.Answer;
import org.robolectric.RuntimeEnvironment;

import org.robolectric.annotation.Config;
import org.robolectric.util.ReflectionHelpers;

@@ -175,11 +177,37 @@ public class AdvancedPowerUsageDetailTest {

    @Test
    public void testInitHeader_HasAppEntry_BuildByAppEntry() {
        ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
                new InstantAppDataProvider() {
                    @Override
                    public boolean isInstantApp(ApplicationInfo info) {
                        return false;
                    }
                });
        mFragment.mAppEntry = mAppEntry;
        mFragment.initHeader();

        verify(mAppHeaderController).setIcon(mAppEntry);
        verify(mAppHeaderController).setLabel(mAppEntry);
        verify(mAppHeaderController).setIsInstantApp(false);
    }

    @Test
    public void testInitHeader_HasAppEntry_InstantApp() {
        ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
                new InstantAppDataProvider() {
                    @Override
                    public boolean isInstantApp(ApplicationInfo info) {
                        return true;
                    }
                });
        mFragment.mAppEntry = mAppEntry;
        mFragment.initHeader();

        verify(mAppHeaderController).setIcon(mAppEntry);
        verify(mAppHeaderController).setLabel(mAppEntry);
        verify(mAppHeaderController).setIsInstantApp(true);
        verify(mAppHeaderController).setSummary((CharSequence) null);
    }

    @Test