Loading packages/SettingsLib/src/com/android/settingslib/fuelgauge/BatteryUtils.java +6 −0 Original line number Diff line number Diff line Loading @@ -83,6 +83,12 @@ public final class BatteryUtils { return userManager.isManagedProfile() && !userManager.isSystemUser(); } /** Returns true if current user is a private profile user. */ public static boolean isPrivateProfile(Context context) { final UserManager userManager = context.getSystemService(UserManager.class); return userManager.isPrivateProfile(); } private static Boolean sChargingStringV2Enabled = null; /** Returns {@code true} if the charging string v2 is enabled. */ Loading packages/SettingsLib/tests/robotests/src/com/android/settingslib/fuelgauge/BatteryUtilsTest.java +17 −5 Original line number Diff line number Diff line Loading @@ -23,11 +23,11 @@ import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.eq; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import static org.robolectric.Shadows.shadowOf; import android.accessibilityservice.AccessibilityServiceInfo; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.os.UserManager; import android.provider.Settings; Loading @@ -41,7 +41,6 @@ import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.RobolectricTestRunner; import org.robolectric.Shadows; import org.robolectric.shadows.ShadowAccessibilityManager; import java.util.Arrays; Loading @@ -59,12 +58,15 @@ public class BatteryUtilsTest { private AccessibilityServiceInfo mAccessibilityServiceInfo1; @Mock private AccessibilityServiceInfo mAccessibilityServiceInfo2; @Mock private UserManager mUserManager; @Before public void setUp() { MockitoAnnotations.initMocks(this); mContext = spy(ApplicationProvider.getApplicationContext()); doReturn(mContext).when(mContext).getApplicationContext(); when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager); mAccessibilityManager = spy(mContext.getSystemService(AccessibilityManager.class)); mShadowAccessibilityManager = shadowOf(mAccessibilityManager); doReturn(mAccessibilityManager).when(mContext) Loading Loading @@ -108,13 +110,23 @@ public class BatteryUtilsTest { @Test public void isWorkProfile_workProfileMode_returnTrue() { final UserManager userManager = mContext.getSystemService(UserManager.class); Shadows.shadowOf(userManager).setManagedProfile(true); Shadows.shadowOf(userManager).setIsSystemUser(false); doReturn(true).when(mUserManager).isManagedProfile(); assertThat(BatteryUtils.isWorkProfile(mContext)).isTrue(); } @Test public void isPrivateProfile_defaultValue_returnFalse() { assertThat(BatteryUtils.isPrivateProfile(mContext)).isFalse(); } @Test public void isPrivateProfile_privateProfileMode_returnTrue() { doReturn(true).when(mUserManager).isPrivateProfile(); assertThat(BatteryUtils.isPrivateProfile(mContext)).isTrue(); } private void setTtsPackageName(String defaultTtsPackageName) { Settings.Secure.putString(mContext.getContentResolver(), Settings.Secure.TTS_DEFAULT_SYNTH, defaultTtsPackageName); Loading Loading
packages/SettingsLib/src/com/android/settingslib/fuelgauge/BatteryUtils.java +6 −0 Original line number Diff line number Diff line Loading @@ -83,6 +83,12 @@ public final class BatteryUtils { return userManager.isManagedProfile() && !userManager.isSystemUser(); } /** Returns true if current user is a private profile user. */ public static boolean isPrivateProfile(Context context) { final UserManager userManager = context.getSystemService(UserManager.class); return userManager.isPrivateProfile(); } private static Boolean sChargingStringV2Enabled = null; /** Returns {@code true} if the charging string v2 is enabled. */ Loading
packages/SettingsLib/tests/robotests/src/com/android/settingslib/fuelgauge/BatteryUtilsTest.java +17 −5 Original line number Diff line number Diff line Loading @@ -23,11 +23,11 @@ import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.eq; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import static org.robolectric.Shadows.shadowOf; import android.accessibilityservice.AccessibilityServiceInfo; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.os.UserManager; import android.provider.Settings; Loading @@ -41,7 +41,6 @@ import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.RobolectricTestRunner; import org.robolectric.Shadows; import org.robolectric.shadows.ShadowAccessibilityManager; import java.util.Arrays; Loading @@ -59,12 +58,15 @@ public class BatteryUtilsTest { private AccessibilityServiceInfo mAccessibilityServiceInfo1; @Mock private AccessibilityServiceInfo mAccessibilityServiceInfo2; @Mock private UserManager mUserManager; @Before public void setUp() { MockitoAnnotations.initMocks(this); mContext = spy(ApplicationProvider.getApplicationContext()); doReturn(mContext).when(mContext).getApplicationContext(); when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager); mAccessibilityManager = spy(mContext.getSystemService(AccessibilityManager.class)); mShadowAccessibilityManager = shadowOf(mAccessibilityManager); doReturn(mAccessibilityManager).when(mContext) Loading Loading @@ -108,13 +110,23 @@ public class BatteryUtilsTest { @Test public void isWorkProfile_workProfileMode_returnTrue() { final UserManager userManager = mContext.getSystemService(UserManager.class); Shadows.shadowOf(userManager).setManagedProfile(true); Shadows.shadowOf(userManager).setIsSystemUser(false); doReturn(true).when(mUserManager).isManagedProfile(); assertThat(BatteryUtils.isWorkProfile(mContext)).isTrue(); } @Test public void isPrivateProfile_defaultValue_returnFalse() { assertThat(BatteryUtils.isPrivateProfile(mContext)).isFalse(); } @Test public void isPrivateProfile_privateProfileMode_returnTrue() { doReturn(true).when(mUserManager).isPrivateProfile(); assertThat(BatteryUtils.isPrivateProfile(mContext)).isTrue(); } private void setTtsPackageName(String defaultTtsPackageName) { Settings.Secure.putString(mContext.getContentResolver(), Settings.Secure.TTS_DEFAULT_SYNTH, defaultTtsPackageName); Loading