Fix LSS unit tests and make behaviour consistent under synthetic password
1. Fix LSS unit tests: new credential initialization steps when synthetic
password is used.
2. Fix LSS behaviour under SP: If credential matches but type doesn't, treat
this as failure.
3. Fix LSS behaviour under SP: when changing credential, if old credential is
provided but is incorrect, fail instead of performing an untrusted enroll.
Bug: 63064202
Test: runtest frameworks-services -p com.android.server.locksettings
Change-Id: I762d3f4cc8fa5e4270b851721e0208c7a0f0152a
diff --git a/services/tests/servicestests/src/com/android/server/locksettings/LockSettingsStorageTests.java b/services/tests/servicestests/src/com/android/server/locksettings/LockSettingsStorageTests.java
index a0578c9..4c77f62 100644
--- a/services/tests/servicestests/src/com/android/server/locksettings/LockSettingsStorageTests.java
+++ b/services/tests/servicestests/src/com/android/server/locksettings/LockSettingsStorageTests.java
@@ -22,6 +22,7 @@
import android.app.NotificationManager;
import android.app.admin.DevicePolicyManager;
+import android.app.trust.TrustManager;
import android.content.pm.UserInfo;
import android.database.sqlite.SQLiteDatabase;
import android.os.FileUtils;
@@ -74,7 +75,7 @@
MockLockSettingsContext context = new MockLockSettingsContext(getContext(), mockUserManager,
mock(NotificationManager.class), mock(DevicePolicyManager.class),
- mock(StorageManager.class));
+ mock(StorageManager.class), mock(TrustManager.class));
mStorage = new LockSettingsStorageTestable(context,
new File(getContext().getFilesDir(), "locksettings"));
mStorage.setDatabaseOnCreateCallback(new LockSettingsStorage.Callback() {