AR/FR: Updated resources to confirm via component.
Due to issues with an Intent filter not being configured with a category. We needed to move to launching the confirmation activity via Component targeting Intent. Hopefully this can be addressed post IC. Manual Testing: Start by navigating in Settings to: Settings > System > Reset Options > Erase Then click on "Reset Phone." At this point the behavior depends on the state of GmsCore. With forthcoming GmsCore changes (and accompanying SettingsGoogle changes), the user will see a prompt telling them that they can confirm their credentials. Regardless of whether the user successfully confirms or hits back, they will end up in the MasterClearConfirm UX. As per the feature spec. Test: make RunSettingsRoboTests -j40 Bug: 6393703 Change-Id: Idca02bda1fa2e388d612bd2014e16e2b6665fe70
This commit is contained in:
@@ -66,7 +66,8 @@ import org.robolectric.shadows.ShadowActivity;
|
||||
)
|
||||
public class MasterClearTest {
|
||||
private static final String TEST_ACCOUNT_TYPE = "android.test.account.type";
|
||||
private static final String TEST_CONFIRMATION_PACKAGE = "android.test.confirmation.pkg";
|
||||
private static final String TEST_CONFIRMATION_PACKAGE = "android.test.conf.pkg";
|
||||
private static final String TEST_CONFIRMATION_CLASS = "android.test.conf.pkg.ConfActivity";
|
||||
private static final String TEST_ACCOUNT_NAME = "test@example.com";
|
||||
|
||||
@Mock
|
||||
@@ -223,6 +224,7 @@ public class MasterClearTest {
|
||||
when(mMasterClear.getActivity()).thenReturn(mMockActivity);
|
||||
when(mMockActivity.getString(R.string.account_type)).thenReturn(TEST_ACCOUNT_TYPE);
|
||||
when(mMockActivity.getString(R.string.account_confirmation_package)).thenReturn(TEST_CONFIRMATION_PACKAGE);
|
||||
when(mMockActivity.getString(R.string.account_confirmation_class)).thenReturn(TEST_CONFIRMATION_CLASS);
|
||||
|
||||
Account[] accounts = new Account[0];
|
||||
when(mMockActivity.getSystemService(Context.ACCOUNT_SERVICE)).thenReturn(mAccountManager);
|
||||
@@ -235,6 +237,7 @@ public class MasterClearTest {
|
||||
when(mMasterClear.getActivity()).thenReturn(mMockActivity);
|
||||
when(mMockActivity.getString(R.string.account_type)).thenReturn(TEST_ACCOUNT_TYPE);
|
||||
when(mMockActivity.getString(R.string.account_confirmation_package)).thenReturn(TEST_CONFIRMATION_PACKAGE);
|
||||
when(mMockActivity.getString(R.string.account_confirmation_class)).thenReturn(TEST_CONFIRMATION_CLASS);
|
||||
Account[] accounts = new Account[] { new Account(TEST_ACCOUNT_NAME, TEST_ACCOUNT_TYPE) };
|
||||
when(mMockActivity.getSystemService(Context.ACCOUNT_SERVICE)).thenReturn(mAccountManager);
|
||||
when(mAccountManager.getAccountsByType(TEST_ACCOUNT_TYPE)).thenReturn(accounts);
|
||||
@@ -250,6 +253,7 @@ public class MasterClearTest {
|
||||
// Only try to show account confirmation if the appropriate resource overlays are available.
|
||||
when(mMockActivity.getString(R.string.account_type)).thenReturn(TEST_ACCOUNT_TYPE);
|
||||
when(mMockActivity.getString(R.string.account_confirmation_package)).thenReturn(TEST_CONFIRMATION_PACKAGE);
|
||||
when(mMockActivity.getString(R.string.account_confirmation_class)).thenReturn(TEST_CONFIRMATION_CLASS);
|
||||
// Add accounts to trigger the search for a resolving intent.
|
||||
Account[] accounts = new Account[] { new Account(TEST_ACCOUNT_NAME, TEST_ACCOUNT_TYPE) };
|
||||
when(mMockActivity.getSystemService(Context.ACCOUNT_SERVICE)).thenReturn(mAccountManager);
|
||||
@@ -265,7 +269,7 @@ public class MasterClearTest {
|
||||
when(mPackageManager.resolveActivity(any(), eq(0))).thenReturn(resolveInfo);
|
||||
|
||||
// Finally mock out the startActivityForResultCall
|
||||
doNothing().when(mMockActivity).startActivityForResult(any(), eq(MasterClear.CREDENTIAL_CONFIRM_REQUEST));
|
||||
doNothing().when(mMasterClear).startActivityForResult(any(), eq(MasterClear.CREDENTIAL_CONFIRM_REQUEST));
|
||||
|
||||
assertThat(mMasterClear.tryShowAccountConfirmation()).isTrue();
|
||||
}
|
||||
|
Reference in New Issue
Block a user