Merge "Make the Factory Reset Protection unit tests work on TV" into udc-dev
This commit is contained in:
@@ -39,6 +39,7 @@ import android.content.ComponentName;
|
||||
import android.content.Context;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.content.pm.UserInfo;
|
||||
import android.content.res.Resources;
|
||||
import android.hardware.authsecret.IAuthSecret;
|
||||
import android.hardware.face.FaceManager;
|
||||
import android.hardware.fingerprint.FingerprintManager;
|
||||
@@ -97,6 +98,7 @@ public abstract class BaseLockSettingsServiceTests {
|
||||
MockLockSettingsContext mContext;
|
||||
LockSettingsStorageTestable mStorage;
|
||||
|
||||
Resources mResources;
|
||||
FakeGateKeeperService mGateKeeperService;
|
||||
NotificationManager mNotificationManager;
|
||||
UserManager mUserManager;
|
||||
@@ -122,6 +124,7 @@ public abstract class BaseLockSettingsServiceTests {
|
||||
|
||||
@Before
|
||||
public void setUp_baseServices() throws Exception {
|
||||
mResources = createMockResources();
|
||||
mGateKeeperService = new FakeGateKeeperService();
|
||||
mNotificationManager = mock(NotificationManager.class);
|
||||
mUserManager = mock(UserManager.class);
|
||||
@@ -146,7 +149,7 @@ public abstract class BaseLockSettingsServiceTests {
|
||||
LocalServices.addService(WindowManagerInternal.class, mMockWindowManager);
|
||||
|
||||
final Context origContext = InstrumentationRegistry.getContext();
|
||||
mContext = new MockLockSettingsContext(origContext,
|
||||
mContext = new MockLockSettingsContext(origContext, mResources,
|
||||
mSettingsRule.mockContentResolver(origContext), mUserManager, mNotificationManager,
|
||||
mDevicePolicyManager, mock(StorageManager.class), mock(TrustManager.class),
|
||||
mock(KeyguardManager.class), mFingerprintManager, mFaceManager, mPackageManager);
|
||||
@@ -245,6 +248,22 @@ public abstract class BaseLockSettingsServiceTests {
|
||||
mLocalService = LocalServices.getService(LockSettingsInternal.class);
|
||||
}
|
||||
|
||||
private Resources createMockResources() {
|
||||
Resources res = mock(Resources.class);
|
||||
|
||||
// Set up some default configs, copied from core/res/res/values/config.xml
|
||||
when(res.getBoolean(eq(com.android.internal.R.bool.config_disableLockscreenByDefault)))
|
||||
.thenReturn(false);
|
||||
when(res.getBoolean(
|
||||
eq(com.android.internal.R.bool.config_enableCredentialFactoryResetProtection)))
|
||||
.thenReturn(true);
|
||||
when(res.getBoolean(eq(com.android.internal.R.bool.config_isMainUserPermanentAdmin)))
|
||||
.thenReturn(true);
|
||||
when(res.getBoolean(eq(com.android.internal.R.bool.config_strongAuthRequiredOnBoot)))
|
||||
.thenReturn(true);
|
||||
return res;
|
||||
}
|
||||
|
||||
protected void setDeviceProvisioned(boolean provisioned) {
|
||||
Settings.Global.putInt(mContext.getContentResolver(),
|
||||
Settings.Global.DEVICE_PROVISIONED, provisioned ? 1 : 0);
|
||||
|
||||
@@ -34,6 +34,7 @@ import android.app.trust.TrustManager;
|
||||
import android.content.Context;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.content.pm.UserInfo;
|
||||
import android.content.res.Resources;
|
||||
import android.database.sqlite.SQLiteDatabase;
|
||||
import android.hardware.face.FaceManager;
|
||||
import android.hardware.fingerprint.FingerprintManager;
|
||||
@@ -106,8 +107,8 @@ public class LockSettingsStorageTests {
|
||||
when(mockUserManager.getProfileParent(eq(3))).thenReturn(new UserInfo(0, "name", 0));
|
||||
|
||||
MockLockSettingsContext context = new MockLockSettingsContext(origContext,
|
||||
mSettingsRule.mockContentResolver(origContext), mockUserManager,
|
||||
mock(NotificationManager.class), mock(DevicePolicyManager.class),
|
||||
mock(Resources.class), mSettingsRule.mockContentResolver(origContext),
|
||||
mockUserManager, mock(NotificationManager.class), mock(DevicePolicyManager.class),
|
||||
mock(StorageManager.class), mock(TrustManager.class), mock(KeyguardManager.class),
|
||||
mock(FingerprintManager.class), mock(FaceManager.class),
|
||||
mock(PackageManager.class));
|
||||
|
||||
@@ -27,6 +27,7 @@ import android.content.ContextWrapper;
|
||||
import android.content.Intent;
|
||||
import android.content.IntentFilter;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.content.res.Resources;
|
||||
import android.hardware.face.FaceManager;
|
||||
import android.hardware.fingerprint.FingerprintManager;
|
||||
import android.os.Handler;
|
||||
@@ -36,6 +37,7 @@ import android.os.storage.StorageManager;
|
||||
|
||||
public class MockLockSettingsContext extends ContextWrapper {
|
||||
|
||||
private final Resources mResources;
|
||||
private final ContentResolver mContentResolver;
|
||||
private final UserManager mUserManager;
|
||||
private final NotificationManager mNotificationManager;
|
||||
@@ -47,13 +49,14 @@ public class MockLockSettingsContext extends ContextWrapper {
|
||||
private final FaceManager mFaceManager;
|
||||
private final PackageManager mPackageManager;
|
||||
|
||||
public MockLockSettingsContext(Context base, ContentResolver contentResolver,
|
||||
UserManager userManager, NotificationManager notificationManager,
|
||||
DevicePolicyManager devicePolicyManager, StorageManager storageManager,
|
||||
TrustManager trustManager, KeyguardManager keyguardManager,
|
||||
FingerprintManager fingerprintManager, FaceManager faceManager,
|
||||
PackageManager packageManager) {
|
||||
public MockLockSettingsContext(Context base, Resources resources,
|
||||
ContentResolver contentResolver, UserManager userManager,
|
||||
NotificationManager notificationManager, DevicePolicyManager devicePolicyManager,
|
||||
StorageManager storageManager, TrustManager trustManager,
|
||||
KeyguardManager keyguardManager, FingerprintManager fingerprintManager,
|
||||
FaceManager faceManager, PackageManager packageManager) {
|
||||
super(base);
|
||||
mResources = resources;
|
||||
mContentResolver = contentResolver;
|
||||
mUserManager = userManager;
|
||||
mNotificationManager = notificationManager;
|
||||
@@ -66,6 +69,11 @@ public class MockLockSettingsContext extends ContextWrapper {
|
||||
mPackageManager = packageManager;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Resources getResources() {
|
||||
return mResources;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ContentResolver getContentResolver() {
|
||||
return mContentResolver;
|
||||
|
||||
Reference in New Issue
Block a user