Merge "Inject different User IDs into biometric utils" into tm-dev
diff --git a/src/com/android/settings/biometrics/BiometricNavigationUtils.java b/src/com/android/settings/biometrics/BiometricNavigationUtils.java
index b747faf..32d3a32 100644
--- a/src/com/android/settings/biometrics/BiometricNavigationUtils.java
+++ b/src/com/android/settings/biometrics/BiometricNavigationUtils.java
@@ -37,7 +37,11 @@
  */
 public class BiometricNavigationUtils {
 
-    private final int mUserId = UserHandle.myUserId();
+    private final int mUserId;
+
+    public BiometricNavigationUtils(int userId) {
+        mUserId = userId;
+    }
 
     /**
      * Tries to launch the Settings screen if Quiet Mode is not enabled
diff --git a/src/com/android/settings/biometrics/BiometricStatusPreferenceController.java b/src/com/android/settings/biometrics/BiometricStatusPreferenceController.java
index 617529f..f61f99c 100644
--- a/src/com/android/settings/biometrics/BiometricStatusPreferenceController.java
+++ b/src/com/android/settings/biometrics/BiometricStatusPreferenceController.java
@@ -60,7 +60,7 @@
                 .getSecurityFeatureProvider()
                 .getLockPatternUtils(context);
         mProfileChallengeUserId = Utils.getManagedProfileId(mUm, mUserId);
-        mBiometricNavigationUtils = new BiometricNavigationUtils();
+        mBiometricNavigationUtils = new BiometricNavigationUtils(getUserId());
     }
 
     @Override
diff --git a/src/com/android/settings/biometrics/combination/CombinedBiometricStatusPreferenceController.java b/src/com/android/settings/biometrics/combination/CombinedBiometricStatusPreferenceController.java
index 27e3ae7..ba09e5f 100644
--- a/src/com/android/settings/biometrics/combination/CombinedBiometricStatusPreferenceController.java
+++ b/src/com/android/settings/biometrics/combination/CombinedBiometricStatusPreferenceController.java
@@ -56,7 +56,7 @@
     public CombinedBiometricStatusPreferenceController(
             Context context, String key, Lifecycle lifecycle) {
         super(context, key);
-        mCombinedBiometricStatusUtils = new CombinedBiometricStatusUtils(context);
+        mCombinedBiometricStatusUtils = new CombinedBiometricStatusUtils(context, getUserId());
 
         if (lifecycle != null) {
             lifecycle.addObserver(this);
diff --git a/src/com/android/settings/biometrics/combination/CombinedBiometricStatusUtils.java b/src/com/android/settings/biometrics/combination/CombinedBiometricStatusUtils.java
index a7554c8..f1e312a 100644
--- a/src/com/android/settings/biometrics/combination/CombinedBiometricStatusUtils.java
+++ b/src/com/android/settings/biometrics/combination/CombinedBiometricStatusUtils.java
@@ -20,7 +20,6 @@
 import android.hardware.biometrics.BiometricAuthenticator;
 import android.hardware.face.FaceManager;
 import android.hardware.fingerprint.FingerprintManager;
-import android.os.UserHandle;
 
 import androidx.annotation.Nullable;
 
@@ -35,17 +34,18 @@
  */
 public class CombinedBiometricStatusUtils {
 
-    private final int mUserId = UserHandle.myUserId();
+    private final int mUserId;
     private final Context mContext;
     @Nullable
     FingerprintManager mFingerprintManager;
     @Nullable
     FaceManager mFaceManager;
 
-    public CombinedBiometricStatusUtils(Context context) {
+    public CombinedBiometricStatusUtils(Context context, int userId) {
         mContext = context;
         mFingerprintManager = Utils.getFingerprintManagerOrNull(context);
         mFaceManager = Utils.getFaceManagerOrNull(context);
+        mUserId = userId;
     }
 
     /**
diff --git a/src/com/android/settings/biometrics/face/FaceStatusPreferenceController.java b/src/com/android/settings/biometrics/face/FaceStatusPreferenceController.java
index cd0bc15..9b4b433 100644
--- a/src/com/android/settings/biometrics/face/FaceStatusPreferenceController.java
+++ b/src/com/android/settings/biometrics/face/FaceStatusPreferenceController.java
@@ -57,7 +57,7 @@
     public FaceStatusPreferenceController(Context context, String key, Lifecycle lifecycle) {
         super(context, key);
         mFaceManager = Utils.getFaceManagerOrNull(context);
-        mFaceStatusUtils = new FaceStatusUtils(context, mFaceManager);
+        mFaceStatusUtils = new FaceStatusUtils(context, mFaceManager, getUserId());
 
         if (lifecycle != null) {
             lifecycle.addObserver(this);
diff --git a/src/com/android/settings/biometrics/face/FaceStatusUtils.java b/src/com/android/settings/biometrics/face/FaceStatusUtils.java
index dd32708..4e25543 100644
--- a/src/com/android/settings/biometrics/face/FaceStatusUtils.java
+++ b/src/com/android/settings/biometrics/face/FaceStatusUtils.java
@@ -19,7 +19,6 @@
 import android.content.Context;
 import android.hardware.biometrics.BiometricAuthenticator;
 import android.hardware.face.FaceManager;
-import android.os.UserHandle;
 
 import com.android.settings.R;
 import com.android.settings.Settings;
@@ -32,13 +31,14 @@
  */
 public class FaceStatusUtils {
 
-    private final int mUserId = UserHandle.myUserId();
+    private final int mUserId;
     private final Context mContext;
     private final FaceManager mFaceManager;
 
-    public FaceStatusUtils(Context context, FaceManager faceManager) {
+    public FaceStatusUtils(Context context, FaceManager faceManager, int userId) {
         mContext = context;
         mFaceManager = faceManager;
+        mUserId = userId;
     }
 
     /**
diff --git a/src/com/android/settings/biometrics/fingerprint/FingerprintStatusPreferenceController.java b/src/com/android/settings/biometrics/fingerprint/FingerprintStatusPreferenceController.java
index 646af4d..62edcf0 100644
--- a/src/com/android/settings/biometrics/fingerprint/FingerprintStatusPreferenceController.java
+++ b/src/com/android/settings/biometrics/fingerprint/FingerprintStatusPreferenceController.java
@@ -58,7 +58,7 @@
         super(context, key);
         mFingerprintManager = Utils.getFingerprintManagerOrNull(context);
         mFingerprintStatusUtils =
-                new FingerprintStatusUtils(context, mFingerprintManager);
+                new FingerprintStatusUtils(context, mFingerprintManager, getUserId());
 
         if (lifecycle != null) {
             lifecycle.addObserver(this);
diff --git a/src/com/android/settings/biometrics/fingerprint/FingerprintStatusUtils.java b/src/com/android/settings/biometrics/fingerprint/FingerprintStatusUtils.java
index 36edd2e..d23195d 100644
--- a/src/com/android/settings/biometrics/fingerprint/FingerprintStatusUtils.java
+++ b/src/com/android/settings/biometrics/fingerprint/FingerprintStatusUtils.java
@@ -19,7 +19,6 @@
 import android.content.Context;
 import android.hardware.biometrics.BiometricAuthenticator;
 import android.hardware.fingerprint.FingerprintManager;
-import android.os.UserHandle;
 
 import com.android.settings.R;
 import com.android.settings.Utils;
@@ -31,13 +30,15 @@
  */
 public class FingerprintStatusUtils {
 
-    private final int mUserId = UserHandle.myUserId();
+    private final int mUserId;
     private final Context mContext;
     private final FingerprintManager mFingerprintManager;
 
-    public FingerprintStatusUtils(Context context, FingerprintManager fingerprintManager) {
+    public FingerprintStatusUtils(Context context, FingerprintManager fingerprintManager,
+            int userId) {
         mContext = context;
         mFingerprintManager = fingerprintManager;
+        mUserId = userId;
     }
 
     /**
diff --git a/src/com/android/settings/safetycenter/BiometricsSafetySource.java b/src/com/android/settings/safetycenter/BiometricsSafetySource.java
index 59408c7..c302915 100644
--- a/src/com/android/settings/safetycenter/BiometricsSafetySource.java
+++ b/src/com/android/settings/safetycenter/BiometricsSafetySource.java
@@ -22,6 +22,7 @@
 import android.hardware.face.FaceManager;
 import android.hardware.fingerprint.FingerprintManager;
 import android.os.Bundle;
+import android.os.UserHandle;
 import android.safetycenter.SafetyEvent;
 import android.safetycenter.SafetySourceData;
 import android.safetycenter.SafetySourceStatus;
@@ -47,9 +48,12 @@
             return;
         }
 
-        final BiometricNavigationUtils biometricNavigationUtils = new BiometricNavigationUtils();
+        final int userId = UserHandle.myUserId();
+
+        final BiometricNavigationUtils biometricNavigationUtils = new BiometricNavigationUtils(
+                userId);
         final CombinedBiometricStatusUtils combinedBiometricStatusUtils =
-                new CombinedBiometricStatusUtils(context);
+                new CombinedBiometricStatusUtils(context, userId);
 
         if (combinedBiometricStatusUtils.isAvailable()) {
             final RestrictedLockUtils.EnforcedAdmin disablingAdmin =
@@ -66,7 +70,7 @@
         }
 
         final FaceManager faceManager = Utils.getFaceManagerOrNull(context);
-        final FaceStatusUtils faceStatusUtils = new FaceStatusUtils(context, faceManager);
+        final FaceStatusUtils faceStatusUtils = new FaceStatusUtils(context, faceManager, userId);
 
         if (faceStatusUtils.isAvailable()) {
             final RestrictedLockUtils.EnforcedAdmin disablingAdmin =
@@ -85,7 +89,7 @@
 
         final FingerprintManager fingerprintManager = Utils.getFingerprintManagerOrNull(context);
         final FingerprintStatusUtils fingerprintStatusUtils = new FingerprintStatusUtils(context,
-                fingerprintManager);
+                fingerprintManager, userId);
 
         if (fingerprintStatusUtils.isAvailable()) {
             final RestrictedLockUtils.EnforcedAdmin disablingAdmin =
diff --git a/tests/unit/src/com/android/settings/biometrics/BiometricNavigationUtilsTest.java b/tests/unit/src/com/android/settings/biometrics/BiometricNavigationUtilsTest.java
index c767c32..395f88f 100644
--- a/tests/unit/src/com/android/settings/biometrics/BiometricNavigationUtilsTest.java
+++ b/tests/unit/src/com/android/settings/biometrics/BiometricNavigationUtilsTest.java
@@ -64,7 +64,7 @@
         mContext = spy(ApplicationProvider.getApplicationContext());
         when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager);
         doNothing().when(mContext).startActivity(any());
-        mBiometricNavigationUtils = new BiometricNavigationUtils();
+        mBiometricNavigationUtils = new BiometricNavigationUtils(UserHandle.myUserId());
     }
 
     @Test
diff --git a/tests/unit/src/com/android/settings/biometrics/combination/CombinedBiometricStatusUtilsTest.java b/tests/unit/src/com/android/settings/biometrics/combination/CombinedBiometricStatusUtilsTest.java
index 55b3fae..7d89079 100644
--- a/tests/unit/src/com/android/settings/biometrics/combination/CombinedBiometricStatusUtilsTest.java
+++ b/tests/unit/src/com/android/settings/biometrics/combination/CombinedBiometricStatusUtilsTest.java
@@ -56,7 +56,8 @@
 
     private static final ComponentName COMPONENT_NAME =
             new ComponentName("package", "class");
-    private static final UserHandle USER_HANDLE = new UserHandle(UserHandle.myUserId());
+    private static final int USER_ID = UserHandle.myUserId();
+    private static final UserHandle USER_HANDLE = new UserHandle(USER_ID);;
 
 
     @Mock
@@ -85,7 +86,8 @@
         when(mApplicationContext.getSystemService(Context.DEVICE_POLICY_SERVICE))
                 .thenReturn(mDevicePolicyManager);
         when(mApplicationContext.getSystemService(Context.FACE_SERVICE)).thenReturn(mFaceManager);
-        mCombinedBiometricStatusUtils = new CombinedBiometricStatusUtils(mApplicationContext);
+        mCombinedBiometricStatusUtils = new CombinedBiometricStatusUtils(
+                mApplicationContext, USER_ID);
     }
 
     @Test
diff --git a/tests/unit/src/com/android/settings/biometrics/face/FaceStatusUtilsTest.java b/tests/unit/src/com/android/settings/biometrics/face/FaceStatusUtilsTest.java
index f670fad..8697da7 100644
--- a/tests/unit/src/com/android/settings/biometrics/face/FaceStatusUtilsTest.java
+++ b/tests/unit/src/com/android/settings/biometrics/face/FaceStatusUtilsTest.java
@@ -49,7 +49,8 @@
 
     private static final ComponentName COMPONENT_NAME =
             new ComponentName("package", "class");
-    private static final UserHandle USER_HANDLE = new UserHandle(UserHandle.myUserId());
+    private static final int USER_ID = UserHandle.myUserId();
+    private static final UserHandle USER_HANDLE = new UserHandle(USER_ID);
 
 
     @Mock
@@ -78,7 +79,7 @@
         when(mApplicationContext.getSystemService(Context.DEVICE_POLICY_SERVICE))
                 .thenReturn(mDevicePolicyManager);
         when(mApplicationContext.getSystemService(Context.FACE_SERVICE)).thenReturn(mFaceManager);
-        mFaceStatusUtils = new FaceStatusUtils(mApplicationContext, mFaceManager);
+        mFaceStatusUtils = new FaceStatusUtils(mApplicationContext, mFaceManager, USER_ID);
     }
 
     @Test
diff --git a/tests/unit/src/com/android/settings/biometrics/fingerprint/FingerprintStatusUtilsTest.java b/tests/unit/src/com/android/settings/biometrics/fingerprint/FingerprintStatusUtilsTest.java
index b4abb5d..cbe4298 100644
--- a/tests/unit/src/com/android/settings/biometrics/fingerprint/FingerprintStatusUtilsTest.java
+++ b/tests/unit/src/com/android/settings/biometrics/fingerprint/FingerprintStatusUtilsTest.java
@@ -52,7 +52,8 @@
 
     private static final ComponentName COMPONENT_NAME =
             new ComponentName("package", "class");
-    private static final UserHandle USER_HANDLE = new UserHandle(UserHandle.myUserId());
+    private static final int USER_ID = UserHandle.myUserId();
+    private static final UserHandle USER_HANDLE = new UserHandle(USER_ID);
 
 
     @Mock
@@ -82,7 +83,7 @@
                 .thenReturn(mDevicePolicyManager);
         when(mApplicationContext.getSystemService(Context.FACE_SERVICE)).thenReturn(mFaceManager);
         mFingerprintStatusUtils =
-                new FingerprintStatusUtils(mApplicationContext, mFingerprintManager);
+                new FingerprintStatusUtils(mApplicationContext, mFingerprintManager, USER_ID);
     }
 
     @Test