Loading core/java/com/android/internal/widget/LockPatternUtils.java +1 −1 Original line number Diff line number Diff line Loading @@ -1135,7 +1135,7 @@ public class LockPatternUtils { public List<ComponentName> getEnabledTrustAgents(int userId) { String serialized = getString(ENABLED_TRUST_AGENTS, userId); if (TextUtils.isEmpty(serialized)) { return null; return new ArrayList<ComponentName>(); } String[] split = serialized.split(","); ArrayList<ComponentName> activeTrustAgents = new ArrayList<ComponentName>(split.length); Loading core/tests/utiltests/src/com/android/internal/util/LockPatternUtilsTest.java +17 −0 Original line number Diff line number Diff line Loading @@ -19,14 +19,20 @@ package com.android.internal.util; import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_MANAGED; import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.any; import static org.mockito.Mockito.anyInt; import static org.mockito.Mockito.anyString; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.content.ComponentName; import android.content.Context; import android.content.ContextWrapper; import android.content.pm.UserInfo; Loading @@ -50,6 +56,7 @@ import org.junit.runner.RunWith; import org.mockito.Mockito; import java.nio.charset.StandardCharsets; import java.util.List; @RunWith(AndroidJUnit4.class) @SmallTest Loading Loading @@ -164,6 +171,16 @@ public class LockPatternUtilsTest { verify(ils).isWeakEscrowTokenValid(eq(testHandle), eq(testToken), eq(testUserId)); } @Test public void testGetEnabledTrustAgentsNotNull() throws RemoteException { int testUserId = 10; ILockSettings ils = createTestLockSettings(); when(ils.getString(anyString(), any(), anyInt())).thenReturn(""); List<ComponentName> trustAgents = mLockPatternUtils.getEnabledTrustAgents(testUserId); assertNotNull(trustAgents); assertEquals(0, trustAgents.size()); } private ILockSettings createTestLockSettings() { final Context context = spy(new ContextWrapper(InstrumentationRegistry.getTargetContext())); mLockPatternUtils = spy(new LockPatternUtils(context)); Loading services/core/java/com/android/server/trust/TrustManagerService.java +2 −4 Original line number Diff line number Diff line Loading @@ -715,7 +715,7 @@ public class TrustManagerService extends SystemService { (disabledFeatures & DevicePolicyManager.KEYGUARD_DISABLE_TRUST_AGENTS) != 0; List<ComponentName> enabledAgents = lockPatternUtils.getEnabledTrustAgents(userInfo.id); if (enabledAgents == null) { if (enabledAgents.isEmpty()) { if (DEBUG) Slog.d(TAG, "refreshAgentList: skipping user " + userInfo.id + ": no agents enabled by user"); continue; Loading Loading @@ -1080,9 +1080,7 @@ public class TrustManagerService extends SystemService { } List<ComponentName> previouslyEnabledAgents = utils.getEnabledTrustAgents(userId); if (previouslyEnabledAgents != null) { discoveredAgents.addAll(previouslyEnabledAgents); } utils.setEnabledTrustAgents(discoveredAgents, userId); Settings.Secure.putIntForUser(mContext.getContentResolver(), Settings.Secure.TRUST_AGENTS_INITIALIZED, 1, userId); Loading Loading
core/java/com/android/internal/widget/LockPatternUtils.java +1 −1 Original line number Diff line number Diff line Loading @@ -1135,7 +1135,7 @@ public class LockPatternUtils { public List<ComponentName> getEnabledTrustAgents(int userId) { String serialized = getString(ENABLED_TRUST_AGENTS, userId); if (TextUtils.isEmpty(serialized)) { return null; return new ArrayList<ComponentName>(); } String[] split = serialized.split(","); ArrayList<ComponentName> activeTrustAgents = new ArrayList<ComponentName>(split.length); Loading
core/tests/utiltests/src/com/android/internal/util/LockPatternUtilsTest.java +17 −0 Original line number Diff line number Diff line Loading @@ -19,14 +19,20 @@ package com.android.internal.util; import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_MANAGED; import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.any; import static org.mockito.Mockito.anyInt; import static org.mockito.Mockito.anyString; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.content.ComponentName; import android.content.Context; import android.content.ContextWrapper; import android.content.pm.UserInfo; Loading @@ -50,6 +56,7 @@ import org.junit.runner.RunWith; import org.mockito.Mockito; import java.nio.charset.StandardCharsets; import java.util.List; @RunWith(AndroidJUnit4.class) @SmallTest Loading Loading @@ -164,6 +171,16 @@ public class LockPatternUtilsTest { verify(ils).isWeakEscrowTokenValid(eq(testHandle), eq(testToken), eq(testUserId)); } @Test public void testGetEnabledTrustAgentsNotNull() throws RemoteException { int testUserId = 10; ILockSettings ils = createTestLockSettings(); when(ils.getString(anyString(), any(), anyInt())).thenReturn(""); List<ComponentName> trustAgents = mLockPatternUtils.getEnabledTrustAgents(testUserId); assertNotNull(trustAgents); assertEquals(0, trustAgents.size()); } private ILockSettings createTestLockSettings() { final Context context = spy(new ContextWrapper(InstrumentationRegistry.getTargetContext())); mLockPatternUtils = spy(new LockPatternUtils(context)); Loading
services/core/java/com/android/server/trust/TrustManagerService.java +2 −4 Original line number Diff line number Diff line Loading @@ -715,7 +715,7 @@ public class TrustManagerService extends SystemService { (disabledFeatures & DevicePolicyManager.KEYGUARD_DISABLE_TRUST_AGENTS) != 0; List<ComponentName> enabledAgents = lockPatternUtils.getEnabledTrustAgents(userInfo.id); if (enabledAgents == null) { if (enabledAgents.isEmpty()) { if (DEBUG) Slog.d(TAG, "refreshAgentList: skipping user " + userInfo.id + ": no agents enabled by user"); continue; Loading Loading @@ -1080,9 +1080,7 @@ public class TrustManagerService extends SystemService { } List<ComponentName> previouslyEnabledAgents = utils.getEnabledTrustAgents(userId); if (previouslyEnabledAgents != null) { discoveredAgents.addAll(previouslyEnabledAgents); } utils.setEnabledTrustAgents(discoveredAgents, userId); Settings.Secure.putIntForUser(mContext.getContentResolver(), Settings.Secure.TRUST_AGENTS_INITIALIZED, 1, userId); Loading