Move all the shared Screen Lock details into a reusable utility class

Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.security.ChangeScreenLockPreferenceControllerTest
Test: atest SettingsUnitTests:ScreenLockPreferenceDetailsUtilsTest

Bug: 215515298
Change-Id: I46543d35ce4dc2fee85ad1c55886b272de113768
This commit is contained in:
Yuri Ufimtsev
2022-02-08 14:21:20 +00:00
parent 24d67e9a09
commit c10c16bb39
4 changed files with 482 additions and 62 deletions

View File

@@ -21,6 +21,7 @@ import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.when;
@@ -35,6 +36,7 @@ import androidx.preference.PreferenceViewHolder;
import com.android.internal.widget.LockPatternUtils;
import com.android.settings.R;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.shadow.ShadowUtils;
import com.android.settings.widget.GearPreference;
@@ -52,6 +54,8 @@ import org.robolectric.annotation.Config;
@Config(shadows = ShadowUtils.class)
public class ChangeScreenLockPreferenceControllerTest {
private static final int METRICS_CATEGORY = 1;
@Mock
private LockPatternUtils mLockPatternUtils;
@Mock
@@ -78,7 +82,9 @@ public class ChangeScreenLockPreferenceControllerTest {
when(mContext.getSystemService(Context.USER_SERVICE)).thenReturn(mUserManager);
when(mContext.getSystemService(Context.DEVICE_POLICY_SERVICE))
.thenReturn(mDevicePolicyManager);
mController = new ChangeScreenLockPreferenceController(mContext, null /* Host */ );
final SettingsPreferenceFragment host = mock(SettingsPreferenceFragment.class);
when(host.getMetricsCategory()).thenReturn(METRICS_CATEGORY);
mController = new ChangeScreenLockPreferenceController(mContext, host);
}
@Test