Update security screen summary text when no fingerprint
Change-Id: I810c533b0daeab3bd67d9d5be8a89d93738b4962 Fix: 35339887 Test: RunSettingsRoboTest
This commit is contained in:
@@ -1300,8 +1300,13 @@ public class SecuritySettings extends SettingsPreferenceFragment
|
|||||||
dashboardFeatureProvider.getTilesForCategory(CategoryKey.CATEGORY_SECURITY);
|
dashboardFeatureProvider.getTilesForCategory(CategoryKey.CATEGORY_SECURITY);
|
||||||
mSummaryLoader.setSummary(this, getPackageVerifierSummary(dashboardCategory));
|
mSummaryLoader.setSummary(this, getPackageVerifierSummary(dashboardCategory));
|
||||||
} else {
|
} else {
|
||||||
|
final FingerprintManager fpm = Utils.getFingerprintManagerOrNull(mContext);
|
||||||
|
if (fpm != null && fpm.isHardwareDetected()) {
|
||||||
mSummaryLoader.setSummary(this,
|
mSummaryLoader.setSummary(this,
|
||||||
mContext.getString(R.string.security_dashboard_summary));
|
mContext.getString(R.string.security_dashboard_summary));
|
||||||
|
} else {
|
||||||
|
mSummaryLoader.setSummary(this, null);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1319,8 +1324,7 @@ public class SecuritySettings extends SettingsPreferenceFragment
|
|||||||
String summaryUri = tile.metaData.getString(
|
String summaryUri = tile.metaData.getString(
|
||||||
TileUtils.META_DATA_PREFERENCE_SUMMARY_URI, null);
|
TileUtils.META_DATA_PREFERENCE_SUMMARY_URI, null);
|
||||||
return TileUtils.getTextFromUri(mContext, summaryUri,
|
return TileUtils.getTextFromUri(mContext, summaryUri,
|
||||||
new ArrayMap<String, IContentProvider>(),
|
new ArrayMap<>(), TileUtils.META_DATA_PREFERENCE_SUMMARY);
|
||||||
TileUtils.META_DATA_PREFERENCE_SUMMARY);
|
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
@@ -16,14 +16,14 @@
|
|||||||
|
|
||||||
package com.android.settings;
|
package com.android.settings;
|
||||||
|
|
||||||
import android.content.Context;
|
|
||||||
import android.content.ContentResolver;
|
import android.content.ContentResolver;
|
||||||
|
import android.content.Context;
|
||||||
import android.content.IContentProvider;
|
import android.content.IContentProvider;
|
||||||
import android.provider.Settings;
|
import android.content.pm.PackageManager;
|
||||||
|
import android.hardware.fingerprint.FingerprintManager;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
import android.provider.Settings;
|
||||||
|
|
||||||
import com.android.settings.SettingsRobolectricTestRunner;
|
|
||||||
import com.android.settings.TestConfig;
|
|
||||||
import com.android.settings.dashboard.SummaryLoader;
|
import com.android.settings.dashboard.SummaryLoader;
|
||||||
import com.android.settings.testutils.FakeFeatureFactory;
|
import com.android.settings.testutils.FakeFeatureFactory;
|
||||||
import com.android.settingslib.drawer.DashboardCategory;
|
import com.android.settingslib.drawer.DashboardCategory;
|
||||||
@@ -46,7 +46,7 @@ import java.util.Map;
|
|||||||
import static com.google.common.truth.Truth.assertThat;
|
import static com.google.common.truth.Truth.assertThat;
|
||||||
import static org.mockito.Matchers.any;
|
import static org.mockito.Matchers.any;
|
||||||
import static org.mockito.Matchers.isNull;
|
import static org.mockito.Matchers.isNull;
|
||||||
import static org.mockito.Mockito.never;
|
import static org.mockito.Mockito.mock;
|
||||||
import static org.mockito.Mockito.times;
|
import static org.mockito.Mockito.times;
|
||||||
import static org.mockito.Mockito.verify;
|
import static org.mockito.Mockito.verify;
|
||||||
import static org.mockito.Mockito.verifyNoMoreInteractions;
|
import static org.mockito.Mockito.verifyNoMoreInteractions;
|
||||||
@@ -120,6 +120,27 @@ public class SecuritySettingsTest {
|
|||||||
verify(mSummaryLoader, times(1)).setSummary(any(), isNull(String.class));
|
verify(mSummaryLoader, times(1)).setSummary(any(), isNull(String.class));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@Config(shadows = {
|
||||||
|
ShadowSecureSettings.class,
|
||||||
|
})
|
||||||
|
public void testSummaryProvider_hasFingerPrint_hasStaticSummary() {
|
||||||
|
// Package verifier state is set to disabled.
|
||||||
|
ShadowSecureSettings.putInt(null, Settings.Secure.PACKAGE_VERIFIER_STATE, -1);
|
||||||
|
final FingerprintManager fpm = mock(FingerprintManager.class);
|
||||||
|
when(mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_FINGERPRINT))
|
||||||
|
.thenReturn(true);
|
||||||
|
|
||||||
|
// Cast to Object to workaround a robolectric casting bug
|
||||||
|
when((Object) mContext.getSystemService(FingerprintManager.class)).thenReturn(fpm);
|
||||||
|
when(fpm.isHardwareDetected()).thenReturn(true);
|
||||||
|
|
||||||
|
mSummaryProvider.setListening(true);
|
||||||
|
|
||||||
|
verify(mContext).getString(R.string.security_dashboard_summary);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testGetPackageVerifierSummary_nullInput() {
|
public void testGetPackageVerifierSummary_nullInput() {
|
||||||
assertThat(mSummaryProvider.getPackageVerifierSummary(null)).isNull();
|
assertThat(mSummaryProvider.getPackageVerifierSummary(null)).isNull();
|
||||||
|
Reference in New Issue
Block a user