From 7b08531b6a7ac0c74b522deb696c2ddea8667389 Mon Sep 17 00:00:00 2001 From: Antony Sargent Date: Thu, 7 Mar 2019 15:21:33 -0800 Subject: [PATCH] Fix the failing PreferenceControllerContractTest In FaceSettings.SearchIndexProvider's createPreferenceControllers method, we need to check isAvailable() before trying to create the controllers. Bug: 127852616 Test: runtest --path ./tests/unit/src/com/android/settings/core/PreferenceControllerContractTest.java Change-Id: Ib05ba05b8752583eeda61ded78f08f7998d48ba7 --- .../android/settings/biometrics/face/FaceSettings.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/com/android/settings/biometrics/face/FaceSettings.java b/src/com/android/settings/biometrics/face/FaceSettings.java index 490580d3cf1..ea5a303e6f3 100644 --- a/src/com/android/settings/biometrics/face/FaceSettings.java +++ b/src/com/android/settings/biometrics/face/FaceSettings.java @@ -156,6 +156,9 @@ public class FaceSettings extends DashboardFragment { @Override protected List createPreferenceControllers(Context context) { + if (!isAvailable(context)) { + return null; + } final List controllers = buildPreferenceControllers(context, getSettingsLifecycle()); // There's no great way of doing this right now :/ @@ -197,7 +200,11 @@ public class FaceSettings extends DashboardFragment { @Override public List createPreferenceControllers( Context context) { - return buildPreferenceControllers(context, null /* lifecycle */); + if (isAvailable(context)) { + return buildPreferenceControllers(context, null /* lifecycle */); + } else { + return null; + } } @Override