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.Context;
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.content.pm.UserInfo;
|
import android.content.pm.UserInfo;
|
||||||
|
import android.content.res.Resources;
|
||||||
import android.hardware.authsecret.IAuthSecret;
|
import android.hardware.authsecret.IAuthSecret;
|
||||||
import android.hardware.face.FaceManager;
|
import android.hardware.face.FaceManager;
|
||||||
import android.hardware.fingerprint.FingerprintManager;
|
import android.hardware.fingerprint.FingerprintManager;
|
||||||
@@ -97,6 +98,7 @@ public abstract class BaseLockSettingsServiceTests {
|
|||||||
MockLockSettingsContext mContext;
|
MockLockSettingsContext mContext;
|
||||||
LockSettingsStorageTestable mStorage;
|
LockSettingsStorageTestable mStorage;
|
||||||
|
|
||||||
|
Resources mResources;
|
||||||
FakeGateKeeperService mGateKeeperService;
|
FakeGateKeeperService mGateKeeperService;
|
||||||
NotificationManager mNotificationManager;
|
NotificationManager mNotificationManager;
|
||||||
UserManager mUserManager;
|
UserManager mUserManager;
|
||||||
@@ -122,6 +124,7 @@ public abstract class BaseLockSettingsServiceTests {
|
|||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setUp_baseServices() throws Exception {
|
public void setUp_baseServices() throws Exception {
|
||||||
|
mResources = createMockResources();
|
||||||
mGateKeeperService = new FakeGateKeeperService();
|
mGateKeeperService = new FakeGateKeeperService();
|
||||||
mNotificationManager = mock(NotificationManager.class);
|
mNotificationManager = mock(NotificationManager.class);
|
||||||
mUserManager = mock(UserManager.class);
|
mUserManager = mock(UserManager.class);
|
||||||
@@ -146,7 +149,7 @@ public abstract class BaseLockSettingsServiceTests {
|
|||||||
LocalServices.addService(WindowManagerInternal.class, mMockWindowManager);
|
LocalServices.addService(WindowManagerInternal.class, mMockWindowManager);
|
||||||
|
|
||||||
final Context origContext = InstrumentationRegistry.getContext();
|
final Context origContext = InstrumentationRegistry.getContext();
|
||||||
mContext = new MockLockSettingsContext(origContext,
|
mContext = new MockLockSettingsContext(origContext, mResources,
|
||||||
mSettingsRule.mockContentResolver(origContext), mUserManager, mNotificationManager,
|
mSettingsRule.mockContentResolver(origContext), mUserManager, mNotificationManager,
|
||||||
mDevicePolicyManager, mock(StorageManager.class), mock(TrustManager.class),
|
mDevicePolicyManager, mock(StorageManager.class), mock(TrustManager.class),
|
||||||
mock(KeyguardManager.class), mFingerprintManager, mFaceManager, mPackageManager);
|
mock(KeyguardManager.class), mFingerprintManager, mFaceManager, mPackageManager);
|
||||||
@@ -245,6 +248,22 @@ public abstract class BaseLockSettingsServiceTests {
|
|||||||
mLocalService = LocalServices.getService(LockSettingsInternal.class);
|
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) {
|
protected void setDeviceProvisioned(boolean provisioned) {
|
||||||
Settings.Global.putInt(mContext.getContentResolver(),
|
Settings.Global.putInt(mContext.getContentResolver(),
|
||||||
Settings.Global.DEVICE_PROVISIONED, provisioned ? 1 : 0);
|
Settings.Global.DEVICE_PROVISIONED, provisioned ? 1 : 0);
|
||||||
|
|||||||
@@ -34,6 +34,7 @@ import android.app.trust.TrustManager;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.content.pm.UserInfo;
|
import android.content.pm.UserInfo;
|
||||||
|
import android.content.res.Resources;
|
||||||
import android.database.sqlite.SQLiteDatabase;
|
import android.database.sqlite.SQLiteDatabase;
|
||||||
import android.hardware.face.FaceManager;
|
import android.hardware.face.FaceManager;
|
||||||
import android.hardware.fingerprint.FingerprintManager;
|
import android.hardware.fingerprint.FingerprintManager;
|
||||||
@@ -106,8 +107,8 @@ public class LockSettingsStorageTests {
|
|||||||
when(mockUserManager.getProfileParent(eq(3))).thenReturn(new UserInfo(0, "name", 0));
|
when(mockUserManager.getProfileParent(eq(3))).thenReturn(new UserInfo(0, "name", 0));
|
||||||
|
|
||||||
MockLockSettingsContext context = new MockLockSettingsContext(origContext,
|
MockLockSettingsContext context = new MockLockSettingsContext(origContext,
|
||||||
mSettingsRule.mockContentResolver(origContext), mockUserManager,
|
mock(Resources.class), mSettingsRule.mockContentResolver(origContext),
|
||||||
mock(NotificationManager.class), mock(DevicePolicyManager.class),
|
mockUserManager, mock(NotificationManager.class), mock(DevicePolicyManager.class),
|
||||||
mock(StorageManager.class), mock(TrustManager.class), mock(KeyguardManager.class),
|
mock(StorageManager.class), mock(TrustManager.class), mock(KeyguardManager.class),
|
||||||
mock(FingerprintManager.class), mock(FaceManager.class),
|
mock(FingerprintManager.class), mock(FaceManager.class),
|
||||||
mock(PackageManager.class));
|
mock(PackageManager.class));
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ import android.content.ContextWrapper;
|
|||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.IntentFilter;
|
import android.content.IntentFilter;
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
|
import android.content.res.Resources;
|
||||||
import android.hardware.face.FaceManager;
|
import android.hardware.face.FaceManager;
|
||||||
import android.hardware.fingerprint.FingerprintManager;
|
import android.hardware.fingerprint.FingerprintManager;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
@@ -36,6 +37,7 @@ import android.os.storage.StorageManager;
|
|||||||
|
|
||||||
public class MockLockSettingsContext extends ContextWrapper {
|
public class MockLockSettingsContext extends ContextWrapper {
|
||||||
|
|
||||||
|
private final Resources mResources;
|
||||||
private final ContentResolver mContentResolver;
|
private final ContentResolver mContentResolver;
|
||||||
private final UserManager mUserManager;
|
private final UserManager mUserManager;
|
||||||
private final NotificationManager mNotificationManager;
|
private final NotificationManager mNotificationManager;
|
||||||
@@ -47,13 +49,14 @@ public class MockLockSettingsContext extends ContextWrapper {
|
|||||||
private final FaceManager mFaceManager;
|
private final FaceManager mFaceManager;
|
||||||
private final PackageManager mPackageManager;
|
private final PackageManager mPackageManager;
|
||||||
|
|
||||||
public MockLockSettingsContext(Context base, ContentResolver contentResolver,
|
public MockLockSettingsContext(Context base, Resources resources,
|
||||||
UserManager userManager, NotificationManager notificationManager,
|
ContentResolver contentResolver, UserManager userManager,
|
||||||
DevicePolicyManager devicePolicyManager, StorageManager storageManager,
|
NotificationManager notificationManager, DevicePolicyManager devicePolicyManager,
|
||||||
TrustManager trustManager, KeyguardManager keyguardManager,
|
StorageManager storageManager, TrustManager trustManager,
|
||||||
FingerprintManager fingerprintManager, FaceManager faceManager,
|
KeyguardManager keyguardManager, FingerprintManager fingerprintManager,
|
||||||
PackageManager packageManager) {
|
FaceManager faceManager, PackageManager packageManager) {
|
||||||
super(base);
|
super(base);
|
||||||
|
mResources = resources;
|
||||||
mContentResolver = contentResolver;
|
mContentResolver = contentResolver;
|
||||||
mUserManager = userManager;
|
mUserManager = userManager;
|
||||||
mNotificationManager = notificationManager;
|
mNotificationManager = notificationManager;
|
||||||
@@ -66,6 +69,11 @@ public class MockLockSettingsContext extends ContextWrapper {
|
|||||||
mPackageManager = packageManager;
|
mPackageManager = packageManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Resources getResources() {
|
||||||
|
return mResources;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ContentResolver getContentResolver() {
|
public ContentResolver getContentResolver() {
|
||||||
return mContentResolver;
|
return mContentResolver;
|
||||||
|
|||||||
Reference in New Issue
Block a user