Loading packages/SettingsLib/src/com/android/settingslib/fuelgauge/PowerWhitelistBackend.java +8 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package com.android.settingslib.fuelgauge; import android.app.admin.DevicePolicyManager; import android.content.ComponentName; import android.content.Context; import android.content.pm.PackageManager; Loading Loading @@ -89,6 +90,13 @@ public class PowerWhitelistBackend { if (TextUtils.equals(pkg, defaultDialer)) { return true; } final DevicePolicyManager devicePolicyManager = mAppContext.getSystemService( DevicePolicyManager.class); if (devicePolicyManager.packageHasActiveAdmins(pkg)) { return true; } return false; } Loading packages/SettingsLib/tests/robotests/src/com/android/settingslib/fuelgauge/PowerWhitelistBackendTest.java +15 −2 Original line number Diff line number Diff line Loading @@ -21,8 +21,10 @@ import static org.mockito.ArgumentMatchers.anyString; import static org.mockito.Mockito.atLeastOnce; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import android.app.admin.DevicePolicyManager; import android.content.ComponentName; import android.content.Context; import android.content.pm.PackageManager; Loading Loading @@ -51,7 +53,8 @@ public class PowerWhitelistBackendTest { @Mock private IDeviceIdleController mDeviceIdleService; @Mock private DevicePolicyManager mDevicePolicyManager; private PowerWhitelistBackend mPowerWhitelistBackend; private ShadowPackageManager mPackageManager; private Context mContext; Loading @@ -59,7 +62,9 @@ public class PowerWhitelistBackendTest { @Before public void setUp() throws Exception { MockitoAnnotations.initMocks(this); mContext = RuntimeEnvironment.application; mContext = spy(RuntimeEnvironment.application); doReturn(mContext).when(mContext).getApplicationContext(); doReturn(mDevicePolicyManager).when(mContext).getSystemService(DevicePolicyManager.class); doReturn(new String[] {}).when(mDeviceIdleService).getFullPowerWhitelist(); doReturn(new String[] {}).when(mDeviceIdleService).getSystemPowerWhitelist(); doReturn(new String[] {}).when(mDeviceIdleService).getSystemPowerWhitelistExceptIdle(); Loading @@ -68,6 +73,7 @@ public class PowerWhitelistBackendTest { mPackageManager = Shadow.extract(mContext.getPackageManager()); mPackageManager.setSystemFeature(PackageManager.FEATURE_TELEPHONY, true); mPowerWhitelistBackend = new PowerWhitelistBackend(mContext, mDeviceIdleService); } Loading Loading @@ -122,6 +128,13 @@ public class PowerWhitelistBackendTest { assertThat(mPowerWhitelistBackend.isWhitelisted(testDialer)).isTrue(); } @Test public void isWhitelisted_shouldWhitelistActiveDeviceAdminApp() { doReturn(true).when(mDevicePolicyManager).packageHasActiveAdmins(PACKAGE_ONE); assertThat(mPowerWhitelistBackend.isWhitelisted(PACKAGE_ONE)).isTrue(); } @Test public void testIsSystemWhitelisted() throws Exception { doReturn(new String[] {PACKAGE_ONE}).when(mDeviceIdleService).getSystemPowerWhitelist(); Loading Loading
packages/SettingsLib/src/com/android/settingslib/fuelgauge/PowerWhitelistBackend.java +8 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package com.android.settingslib.fuelgauge; import android.app.admin.DevicePolicyManager; import android.content.ComponentName; import android.content.Context; import android.content.pm.PackageManager; Loading Loading @@ -89,6 +90,13 @@ public class PowerWhitelistBackend { if (TextUtils.equals(pkg, defaultDialer)) { return true; } final DevicePolicyManager devicePolicyManager = mAppContext.getSystemService( DevicePolicyManager.class); if (devicePolicyManager.packageHasActiveAdmins(pkg)) { return true; } return false; } Loading
packages/SettingsLib/tests/robotests/src/com/android/settingslib/fuelgauge/PowerWhitelistBackendTest.java +15 −2 Original line number Diff line number Diff line Loading @@ -21,8 +21,10 @@ import static org.mockito.ArgumentMatchers.anyString; import static org.mockito.Mockito.atLeastOnce; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import android.app.admin.DevicePolicyManager; import android.content.ComponentName; import android.content.Context; import android.content.pm.PackageManager; Loading Loading @@ -51,7 +53,8 @@ public class PowerWhitelistBackendTest { @Mock private IDeviceIdleController mDeviceIdleService; @Mock private DevicePolicyManager mDevicePolicyManager; private PowerWhitelistBackend mPowerWhitelistBackend; private ShadowPackageManager mPackageManager; private Context mContext; Loading @@ -59,7 +62,9 @@ public class PowerWhitelistBackendTest { @Before public void setUp() throws Exception { MockitoAnnotations.initMocks(this); mContext = RuntimeEnvironment.application; mContext = spy(RuntimeEnvironment.application); doReturn(mContext).when(mContext).getApplicationContext(); doReturn(mDevicePolicyManager).when(mContext).getSystemService(DevicePolicyManager.class); doReturn(new String[] {}).when(mDeviceIdleService).getFullPowerWhitelist(); doReturn(new String[] {}).when(mDeviceIdleService).getSystemPowerWhitelist(); doReturn(new String[] {}).when(mDeviceIdleService).getSystemPowerWhitelistExceptIdle(); Loading @@ -68,6 +73,7 @@ public class PowerWhitelistBackendTest { mPackageManager = Shadow.extract(mContext.getPackageManager()); mPackageManager.setSystemFeature(PackageManager.FEATURE_TELEPHONY, true); mPowerWhitelistBackend = new PowerWhitelistBackend(mContext, mDeviceIdleService); } Loading Loading @@ -122,6 +128,13 @@ public class PowerWhitelistBackendTest { assertThat(mPowerWhitelistBackend.isWhitelisted(testDialer)).isTrue(); } @Test public void isWhitelisted_shouldWhitelistActiveDeviceAdminApp() { doReturn(true).when(mDevicePolicyManager).packageHasActiveAdmins(PACKAGE_ONE); assertThat(mPowerWhitelistBackend.isWhitelisted(PACKAGE_ONE)).isTrue(); } @Test public void testIsSystemWhitelisted() throws Exception { doReturn(new String[] {PACKAGE_ONE}).when(mDeviceIdleService).getSystemPowerWhitelist(); Loading