Loading src/com/android/settings/fuelgauge/AppButtonsPreferenceController.java +3 −1 Original line number Diff line number Diff line Loading @@ -60,6 +60,7 @@ import com.android.settings.core.lifecycle.events.OnResume; import com.android.settings.enterprise.DevicePolicyManagerWrapper; import com.android.settings.overlay.FeatureFactory; import com.android.settingslib.RestrictedLockUtils; import com.android.settingslib.applications.AppUtils; import com.android.settingslib.applications.ApplicationsState; import java.util.ArrayList; Loading Loading @@ -155,7 +156,8 @@ public class AppButtonsPreferenceController extends PreferenceController impleme @Override public boolean isAvailable() { return mAppEntry != null; // TODO(b/37313605): Re-enable once this controller supports instant apps return mAppEntry != null && !AppUtils.isInstant(mAppEntry.info); } @Override Loading tests/robotests/src/com/android/settings/fuelgauge/AppButtonsPreferenceControllerTest.java +30 −1 Original line number Diff line number Diff line Loading @@ -19,8 +19,8 @@ package com.android.settings.fuelgauge; import static com.google.common.truth.Truth.assertThat; import static org.mockito.Matchers.any; import static org.mockito.Matchers.anyString; import static org.mockito.Matchers.anyInt; import static org.mockito.Matchers.anyString; import static org.mockito.Matchers.eq; import static org.mockito.Mockito.doAnswer; import static org.mockito.Mockito.doNothing; Loading Loading @@ -48,7 +48,9 @@ import com.android.settings.TestConfig; import com.android.settings.core.lifecycle.Lifecycle; import com.android.settings.enterprise.DevicePolicyManagerWrapper; 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; Loading @@ -61,6 +63,7 @@ import org.mockito.invocation.InvocationOnMock; import org.mockito.stubbing.Answer; import org.robolectric.RobolectricTestRunner; import org.robolectric.annotation.Config; import org.robolectric.util.ReflectionHelpers; @RunWith(RobolectricTestRunner.class) @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION) Loading Loading @@ -188,6 +191,32 @@ public class AppButtonsPreferenceControllerTest { verify(mUninstallButton).setEnabled(false); } @Test public void testIsAvailable_nonInstantApp() throws Exception { mController.mAppEntry = mAppEntry; ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider", new InstantAppDataProvider() { @Override public boolean isInstantApp(ApplicationInfo info) { return false; } }); assertThat(mController.isAvailable()).isTrue(); } @Test public void testIsAvailable_instantApp() throws Exception { mController.mAppEntry = mAppEntry; ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider", new InstantAppDataProvider() { @Override public boolean isInstantApp(ApplicationInfo info) { return true; } }); assertThat(mController.isAvailable()).isFalse(); } @Test public void testUpdateUninstallButton_isDeviceAdminApp_setButtonDisable() { doReturn(true).when(mController).handleDisableable(any()); Loading Loading
src/com/android/settings/fuelgauge/AppButtonsPreferenceController.java +3 −1 Original line number Diff line number Diff line Loading @@ -60,6 +60,7 @@ import com.android.settings.core.lifecycle.events.OnResume; import com.android.settings.enterprise.DevicePolicyManagerWrapper; import com.android.settings.overlay.FeatureFactory; import com.android.settingslib.RestrictedLockUtils; import com.android.settingslib.applications.AppUtils; import com.android.settingslib.applications.ApplicationsState; import java.util.ArrayList; Loading Loading @@ -155,7 +156,8 @@ public class AppButtonsPreferenceController extends PreferenceController impleme @Override public boolean isAvailable() { return mAppEntry != null; // TODO(b/37313605): Re-enable once this controller supports instant apps return mAppEntry != null && !AppUtils.isInstant(mAppEntry.info); } @Override Loading
tests/robotests/src/com/android/settings/fuelgauge/AppButtonsPreferenceControllerTest.java +30 −1 Original line number Diff line number Diff line Loading @@ -19,8 +19,8 @@ package com.android.settings.fuelgauge; import static com.google.common.truth.Truth.assertThat; import static org.mockito.Matchers.any; import static org.mockito.Matchers.anyString; import static org.mockito.Matchers.anyInt; import static org.mockito.Matchers.anyString; import static org.mockito.Matchers.eq; import static org.mockito.Mockito.doAnswer; import static org.mockito.Mockito.doNothing; Loading Loading @@ -48,7 +48,9 @@ import com.android.settings.TestConfig; import com.android.settings.core.lifecycle.Lifecycle; import com.android.settings.enterprise.DevicePolicyManagerWrapper; 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; Loading @@ -61,6 +63,7 @@ import org.mockito.invocation.InvocationOnMock; import org.mockito.stubbing.Answer; import org.robolectric.RobolectricTestRunner; import org.robolectric.annotation.Config; import org.robolectric.util.ReflectionHelpers; @RunWith(RobolectricTestRunner.class) @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION) Loading Loading @@ -188,6 +191,32 @@ public class AppButtonsPreferenceControllerTest { verify(mUninstallButton).setEnabled(false); } @Test public void testIsAvailable_nonInstantApp() throws Exception { mController.mAppEntry = mAppEntry; ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider", new InstantAppDataProvider() { @Override public boolean isInstantApp(ApplicationInfo info) { return false; } }); assertThat(mController.isAvailable()).isTrue(); } @Test public void testIsAvailable_instantApp() throws Exception { mController.mAppEntry = mAppEntry; ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider", new InstantAppDataProvider() { @Override public boolean isInstantApp(ApplicationInfo info) { return true; } }); assertThat(mController.isAvailable()).isFalse(); } @Test public void testUpdateUninstallButton_isDeviceAdminApp_setButtonDisable() { doReturn(true).when(mController).handleDisableable(any()); Loading