Loading src/com/android/settings/security/trustagent/TrustAgentListPreferenceController.java +8 −2 Original line number Diff line number Diff line Loading @@ -23,7 +23,6 @@ import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.os.UserHandle; import android.text.TextUtils; import androidx.annotation.VisibleForTesting; import androidx.preference.Preference; Loading @@ -46,6 +45,7 @@ import com.android.settingslib.core.lifecycle.events.OnResume; import com.android.settingslib.core.lifecycle.events.OnSaveInstanceState; import com.android.settingslib.search.SearchIndexableRaw; import java.util.ArrayList; import java.util.List; public class TrustAgentListPreferenceController extends AbstractPreferenceController Loading @@ -66,6 +66,9 @@ public class TrustAgentListPreferenceController extends AbstractPreferenceContro private Intent mTrustAgentClickIntent; private PreferenceCategory mSecurityCategory; @VisibleForTesting final List<String> mTrustAgentsKeyList; public TrustAgentListPreferenceController(Context context, SecuritySettings host, Lifecycle lifecycle) { super(context); Loading @@ -74,6 +77,7 @@ public class TrustAgentListPreferenceController extends AbstractPreferenceContro mHost = host; mLockPatternUtils = provider.getLockPatternUtils(context); mTrustAgentManager = provider.getTrustAgentManager(); mTrustAgentsKeyList = new ArrayList(); if (lifecycle != null) { lifecycle.addObserver(this); } Loading Loading @@ -113,7 +117,7 @@ public class TrustAgentListPreferenceController extends AbstractPreferenceContro @Override public boolean handlePreferenceTreeClick(Preference preference) { if (!TextUtils.equals(preference.getKey(), getPreferenceKey())) { if (!mTrustAgentsKeyList.contains(preference.getKey())) { return super.handlePreferenceTreeClick(preference); } final ChooseLockSettingsHelper helper = new ChooseLockSettingsHelper( Loading Loading @@ -189,6 +193,7 @@ public class TrustAgentListPreferenceController extends AbstractPreferenceContro mSecurityCategory.removePreference(oldAgent); } } mTrustAgentsKeyList.clear(); // Then add new ones. final boolean hasSecurity = mLockPatternUtils.isSecure(MY_USER_ID); Loading @@ -196,6 +201,7 @@ public class TrustAgentListPreferenceController extends AbstractPreferenceContro final RestrictedPreference trustAgentPreference = new RestrictedPreference(mSecurityCategory.getContext()); TrustAgentManager.TrustAgentComponentInfo agent = agents.get(i); mTrustAgentsKeyList.add(PREF_KEY_TRUST_AGENT + i); trustAgentPreference.setKey(PREF_KEY_TRUST_AGENT + i); trustAgentPreference.setTitle(agent.title); trustAgentPreference.setSummary(agent.summary); Loading tests/robotests/src/com/android/settings/security/trustagent/TrustAgentListPreferenceControllerTest.java +22 −5 Original line number Diff line number Diff line Loading @@ -16,10 +16,8 @@ package com.android.settings.security.trustagent; import static com.android.settings.security.trustagent.TrustAgentListPreferenceController .PREF_KEY_SECURITY_CATEGORY; import static com.android.settings.security.trustagent.TrustAgentListPreferenceController .PREF_KEY_TRUST_AGENT; import static com.android.settings.security.trustagent.TrustAgentListPreferenceController.PREF_KEY_SECURITY_CATEGORY; import static com.android.settings.security.trustagent.TrustAgentListPreferenceController.PREF_KEY_TRUST_AGENT; import static com.google.common.truth.Truth.assertThat; Loading Loading @@ -172,6 +170,26 @@ public class TrustAgentListPreferenceControllerTest { verify(mCategory, never()).addPreference(any(Preference.class)); } @Test public void onResume_controllerShouldHasKey() { final List<TrustAgentManager.TrustAgentComponentInfo> agents = new ArrayList<>(); final TrustAgentManager.TrustAgentComponentInfo agent = mock(TrustAgentManager.TrustAgentComponentInfo.class); agent.title = "Test_title"; agent.summary = "test summary"; agent.componentName = new ComponentName("pkg", "agent"); agent.admin = null; agents.add(agent); when(mTrustAgentManager.getActiveTrustAgents(mActivity, mLockPatternUtils)) .thenReturn(agents); final String key = PREF_KEY_TRUST_AGENT + 0; mController.displayPreference(mScreen); mController.onResume(); assertThat(mController.mTrustAgentsKeyList).containsExactly(key); } @Test public void updateDynamicRawDataToIndex_shouldIndexAgents() { final List<TrustAgentManager.TrustAgentComponentInfo> agents = new ArrayList<>(); Loading @@ -190,5 +208,4 @@ public class TrustAgentListPreferenceControllerTest { assertThat(indexRaws).hasSize(1); } } Loading
src/com/android/settings/security/trustagent/TrustAgentListPreferenceController.java +8 −2 Original line number Diff line number Diff line Loading @@ -23,7 +23,6 @@ import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.os.UserHandle; import android.text.TextUtils; import androidx.annotation.VisibleForTesting; import androidx.preference.Preference; Loading @@ -46,6 +45,7 @@ import com.android.settingslib.core.lifecycle.events.OnResume; import com.android.settingslib.core.lifecycle.events.OnSaveInstanceState; import com.android.settingslib.search.SearchIndexableRaw; import java.util.ArrayList; import java.util.List; public class TrustAgentListPreferenceController extends AbstractPreferenceController Loading @@ -66,6 +66,9 @@ public class TrustAgentListPreferenceController extends AbstractPreferenceContro private Intent mTrustAgentClickIntent; private PreferenceCategory mSecurityCategory; @VisibleForTesting final List<String> mTrustAgentsKeyList; public TrustAgentListPreferenceController(Context context, SecuritySettings host, Lifecycle lifecycle) { super(context); Loading @@ -74,6 +77,7 @@ public class TrustAgentListPreferenceController extends AbstractPreferenceContro mHost = host; mLockPatternUtils = provider.getLockPatternUtils(context); mTrustAgentManager = provider.getTrustAgentManager(); mTrustAgentsKeyList = new ArrayList(); if (lifecycle != null) { lifecycle.addObserver(this); } Loading Loading @@ -113,7 +117,7 @@ public class TrustAgentListPreferenceController extends AbstractPreferenceContro @Override public boolean handlePreferenceTreeClick(Preference preference) { if (!TextUtils.equals(preference.getKey(), getPreferenceKey())) { if (!mTrustAgentsKeyList.contains(preference.getKey())) { return super.handlePreferenceTreeClick(preference); } final ChooseLockSettingsHelper helper = new ChooseLockSettingsHelper( Loading Loading @@ -189,6 +193,7 @@ public class TrustAgentListPreferenceController extends AbstractPreferenceContro mSecurityCategory.removePreference(oldAgent); } } mTrustAgentsKeyList.clear(); // Then add new ones. final boolean hasSecurity = mLockPatternUtils.isSecure(MY_USER_ID); Loading @@ -196,6 +201,7 @@ public class TrustAgentListPreferenceController extends AbstractPreferenceContro final RestrictedPreference trustAgentPreference = new RestrictedPreference(mSecurityCategory.getContext()); TrustAgentManager.TrustAgentComponentInfo agent = agents.get(i); mTrustAgentsKeyList.add(PREF_KEY_TRUST_AGENT + i); trustAgentPreference.setKey(PREF_KEY_TRUST_AGENT + i); trustAgentPreference.setTitle(agent.title); trustAgentPreference.setSummary(agent.summary); Loading
tests/robotests/src/com/android/settings/security/trustagent/TrustAgentListPreferenceControllerTest.java +22 −5 Original line number Diff line number Diff line Loading @@ -16,10 +16,8 @@ package com.android.settings.security.trustagent; import static com.android.settings.security.trustagent.TrustAgentListPreferenceController .PREF_KEY_SECURITY_CATEGORY; import static com.android.settings.security.trustagent.TrustAgentListPreferenceController .PREF_KEY_TRUST_AGENT; import static com.android.settings.security.trustagent.TrustAgentListPreferenceController.PREF_KEY_SECURITY_CATEGORY; import static com.android.settings.security.trustagent.TrustAgentListPreferenceController.PREF_KEY_TRUST_AGENT; import static com.google.common.truth.Truth.assertThat; Loading Loading @@ -172,6 +170,26 @@ public class TrustAgentListPreferenceControllerTest { verify(mCategory, never()).addPreference(any(Preference.class)); } @Test public void onResume_controllerShouldHasKey() { final List<TrustAgentManager.TrustAgentComponentInfo> agents = new ArrayList<>(); final TrustAgentManager.TrustAgentComponentInfo agent = mock(TrustAgentManager.TrustAgentComponentInfo.class); agent.title = "Test_title"; agent.summary = "test summary"; agent.componentName = new ComponentName("pkg", "agent"); agent.admin = null; agents.add(agent); when(mTrustAgentManager.getActiveTrustAgents(mActivity, mLockPatternUtils)) .thenReturn(agents); final String key = PREF_KEY_TRUST_AGENT + 0; mController.displayPreference(mScreen); mController.onResume(); assertThat(mController.mTrustAgentsKeyList).containsExactly(key); } @Test public void updateDynamicRawDataToIndex_shouldIndexAgents() { final List<TrustAgentManager.TrustAgentComponentInfo> agents = new ArrayList<>(); Loading @@ -190,5 +208,4 @@ public class TrustAgentListPreferenceControllerTest { assertThat(indexRaws).hasSize(1); } }