Redirect user to original pairing page from pair dialog
After pairing ASHA devices from "Hearing devices", the pair another dialog will bring user to the "Connected devices" pairing page. We should redirect user to "Hearing devices" pairing page if user is pairing their devices from A11y hearing devices page. Bug: 295713308 Test: atest HearingAidPairingDialogFragmentTest Test: manually connect an ASHA device and check the redirect page Change-Id: Ia18e53a85e2b21a17e7a843d8979917c8c468e09
This commit is contained in:
@@ -79,6 +79,7 @@ public class HearingAidPairingDialogFragmentTest {
|
||||
public final MockitoRule mockito = MockitoJUnit.rule();
|
||||
|
||||
private static final String TEST_DEVICE_ADDRESS = "00:A1:A1:A1:A1:A1";
|
||||
private static final int TEST_LAUNCH_PAGE = SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY;
|
||||
|
||||
private final Context mContext = ApplicationProvider.getApplicationContext();
|
||||
@Mock
|
||||
@@ -99,13 +100,7 @@ public class HearingAidPairingDialogFragmentTest {
|
||||
@Before
|
||||
public void setUp() {
|
||||
setupEnvironment();
|
||||
mFragment = spy(HearingAidPairingDialogFragment.newInstance(TEST_DEVICE_ADDRESS));
|
||||
mActivity = (FragmentActivity) ActivityControllerWrapper.setup(
|
||||
Robolectric.buildActivity(FragmentActivity.class)).get();
|
||||
mFragmentManager = mActivity.getSupportFragmentManager();
|
||||
when(mFragment.getActivity()).thenReturn(mActivity);
|
||||
doReturn(mFragmentManager).when(mFragment).getParentFragmentManager();
|
||||
mFragment.onAttach(mContext);
|
||||
setupDialog(TEST_LAUNCH_PAGE);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -122,7 +117,8 @@ public class HearingAidPairingDialogFragmentTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void dialogPositiveButtonClick_intentToExpectedClass() {
|
||||
public void dialogPositiveButtonClick_intentToBluetoothPairingPage() {
|
||||
setupDialog(SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY);
|
||||
final AlertDialog dialog = (AlertDialog) mFragment.onCreateDialog(Bundle.EMPTY);
|
||||
dialog.show();
|
||||
|
||||
@@ -133,6 +129,19 @@ public class HearingAidPairingDialogFragmentTest {
|
||||
.isEqualTo(BluetoothPairingDetail.class.getName());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void dialogPositiveButtonClick_intentToA11yPairingPage() {
|
||||
setupDialog(SettingsEnums.ACCESSIBILITY);
|
||||
final AlertDialog dialog = (AlertDialog) mFragment.onCreateDialog(Bundle.EMPTY);
|
||||
dialog.show();
|
||||
|
||||
dialog.getButton(DialogInterface.BUTTON_POSITIVE).performClick();
|
||||
|
||||
final Intent intent = shadowOf(mActivity).getNextStartedActivity();
|
||||
assertThat(intent.getStringExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT))
|
||||
.isEqualTo(HearingDevicePairingDetail.class.getName());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void dialogNegativeButtonClick_dismissDialog() {
|
||||
final AlertDialog dialog = (AlertDialog) mFragment.onCreateDialog(Bundle.EMPTY);
|
||||
@@ -159,6 +168,17 @@ public class HearingAidPairingDialogFragmentTest {
|
||||
verify(mFragment).dismiss();
|
||||
}
|
||||
|
||||
private void setupDialog(int launchPage) {
|
||||
mFragment = spy(
|
||||
HearingAidPairingDialogFragment.newInstance(TEST_DEVICE_ADDRESS, launchPage));
|
||||
mActivity = (FragmentActivity) ActivityControllerWrapper.setup(
|
||||
Robolectric.buildActivity(FragmentActivity.class)).get();
|
||||
mFragmentManager = mActivity.getSupportFragmentManager();
|
||||
when(mFragment.getActivity()).thenReturn(mActivity);
|
||||
doReturn(mFragmentManager).when(mFragment).getParentFragmentManager();
|
||||
mFragment.onAttach(mContext);
|
||||
}
|
||||
|
||||
private void setupEnvironment() {
|
||||
ShadowBluetoothUtils.sLocalBluetoothManager = mLocalBluetoothManager;
|
||||
mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
|
||||
|
Reference in New Issue
Block a user