diff options
| author | 2024-02-19 19:47:27 +0000 | |
|---|---|---|
| committer | 2024-02-19 19:47:27 +0000 | |
| commit | 30fc8e6eac44ec5c5a68424567ef3bc0d6016ecf (patch) | |
| tree | 57f16e1475b9583c1376dc928986663c2bb0bdbe | |
| parent | 3fdca447365094bd8a5011226b3e4bd290fb057e (diff) | |
| parent | 0889f847ef7c6daa4ece22e6cc0eb214f49f0d57 (diff) | |
Merge "Add flag guard and fix test" into main
2 files changed, 25 insertions, 3 deletions
diff --git a/packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java b/packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java index 249fa7f0df77..e489bc552b25 100644 --- a/packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java +++ b/packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java @@ -1702,7 +1702,8 @@ public class ApplicationsState { } public boolean isPrivateProfile() { - return UserManager.USER_TYPE_PROFILE_PRIVATE.equals(mProfileType); + return android.os.Flags.allowPrivateProfile() + && UserManager.USER_TYPE_PROFILE_PRIVATE.equals(mProfileType); } /** diff --git a/packages/SettingsLib/tests/integ/src/com/android/settingslib/applications/ApplicationsStateTest.java b/packages/SettingsLib/tests/integ/src/com/android/settingslib/applications/ApplicationsStateTest.java index 213a66e546ab..1ad7d4930ecc 100644 --- a/packages/SettingsLib/tests/integ/src/com/android/settingslib/applications/ApplicationsStateTest.java +++ b/packages/SettingsLib/tests/integ/src/com/android/settingslib/applications/ApplicationsStateTest.java @@ -22,21 +22,30 @@ import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import android.content.pm.ApplicationInfo; +import android.os.Flags; import android.os.UserManager; +import android.platform.test.flag.junit.SetFlagsRule; + +import androidx.test.core.app.ApplicationProvider; import org.junit.Before; +import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; @RunWith(JUnit4.class) public class ApplicationsStateTest { + private static final int APP_ENTRY_ID = 1; private ApplicationsState.AppEntry mEntry; + @Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(); @Before public void setUp() { - mEntry = mock(ApplicationsState.AppEntry.class); - mEntry.info = mock(ApplicationInfo.class); + mEntry = new ApplicationsState.AppEntry( + ApplicationProvider.getApplicationContext(), + mock(ApplicationInfo.class), + APP_ENTRY_ID); } @Test @@ -310,6 +319,8 @@ public class ApplicationsStateTest { @Test public void testPrivateProfileFilterDisplaysCorrectApps() { + mSetFlagsRule.enableFlags(Flags.FLAG_ALLOW_PRIVATE_PROFILE); + mEntry.showInPersonalTab = true; mEntry.mProfileType = UserManager.USER_TYPE_FULL_SYSTEM; assertThat(ApplicationsState.FILTER_PERSONAL.filterApp(mEntry)).isTrue(); @@ -320,4 +331,14 @@ public class ApplicationsStateTest { assertThat(ApplicationsState.FILTER_PERSONAL.filterApp(mEntry)).isFalse(); assertThat(ApplicationsState.FILTER_PRIVATE_PROFILE.filterApp(mEntry)).isTrue(); } + + @Test + public void testPrivateProfileFilterDisplaysCorrectAppsWhenFlagDisabled() { + mSetFlagsRule.disableFlags(Flags.FLAG_ALLOW_PRIVATE_PROFILE); + + mEntry.showInPersonalTab = false; + mEntry.mProfileType = UserManager.USER_TYPE_PROFILE_PRIVATE; + assertThat(ApplicationsState.FILTER_PERSONAL.filterApp(mEntry)).isFalse(); + assertThat(ApplicationsState.FILTER_PRIVATE_PROFILE.filterApp(mEntry)).isFalse(); + } } |