Merge "Update wallet setting availability" into tm-qpr-dev am: 61f81ffb07
am: 02cace2f67
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/20874103 Change-Id: I7efaad7adeb7f07e36608dda8eb05a72133659fb Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -64,15 +64,18 @@ public class WalletPrivacyPreferenceController extends TogglePreferenceControlle
|
|||||||
public int getAvailabilityStatus() {
|
public int getAvailabilityStatus() {
|
||||||
if (CustomizableLockScreenUtils.isFeatureEnabled(mContext)) {
|
if (CustomizableLockScreenUtils.isFeatureEnabled(mContext)) {
|
||||||
return UNSUPPORTED_ON_DEVICE;
|
return UNSUPPORTED_ON_DEVICE;
|
||||||
|
} else if (!isEnabled()) {
|
||||||
|
return UNSUPPORTED_ON_DEVICE;
|
||||||
|
} else if (!isSecure()) {
|
||||||
|
return DISABLED_DEPENDENT_SETTING;
|
||||||
}
|
}
|
||||||
|
return AVAILABLE;
|
||||||
return isEnabled() && isSecure() ? AVAILABLE : DISABLED_DEPENDENT_SETTING;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateState(Preference preference) {
|
public void updateState(Preference preference) {
|
||||||
super.updateState(preference);
|
super.updateState(preference);
|
||||||
preference.setEnabled(getAvailabilityStatus() != DISABLED_DEPENDENT_SETTING);
|
preference.setEnabled(getAvailabilityStatus() == AVAILABLE);
|
||||||
refreshSummary(preference);
|
refreshSummary(preference);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -141,11 +141,29 @@ public class WalletPrivacyPreferenceControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void getAvailabilityStatus_noService_returnsDisabled() {
|
public void getAvailabilityStatus_noServiceAndIsSecure_returnsUnsupported() {
|
||||||
when(mClient.isWalletServiceAvailable()).thenReturn(false);
|
when(mClient.isWalletServiceAvailable()).thenReturn(false);
|
||||||
when(mLockPatternUtils.isSecure(anyInt())).thenReturn(true);
|
when(mLockPatternUtils.isSecure(anyInt())).thenReturn(true);
|
||||||
|
|
||||||
|
assertThat(mController.getAvailabilityStatus()).isEqualTo(
|
||||||
|
BasePreferenceController.UNSUPPORTED_ON_DEVICE);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void getAvailabilityStatus_hasServiceButNotSecure_returnsDisabled() {
|
||||||
|
when(mClient.isWalletServiceAvailable()).thenReturn(true);
|
||||||
|
when(mLockPatternUtils.isSecure(anyInt())).thenReturn(false);
|
||||||
|
|
||||||
assertThat(mController.getAvailabilityStatus()).isEqualTo(
|
assertThat(mController.getAvailabilityStatus()).isEqualTo(
|
||||||
BasePreferenceController.DISABLED_DEPENDENT_SETTING);
|
BasePreferenceController.DISABLED_DEPENDENT_SETTING);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void getAvailabilityStatus_hasServiceAndIsSecure_returnsAvailable() {
|
||||||
|
when(mClient.isWalletServiceAvailable()).thenReturn(true);
|
||||||
|
when(mLockPatternUtils.isSecure(anyInt())).thenReturn(true);
|
||||||
|
|
||||||
|
assertThat(mController.getAvailabilityStatus()).isEqualTo(
|
||||||
|
BasePreferenceController.AVAILABLE);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user