Merge "[hearing devices page] Launch 'Hearing decice controls' to Accessibility hearing device page."
This commit is contained in:
@@ -18,13 +18,24 @@ package com.android.settings.bluetooth;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.util.FeatureFlagUtils;
|
||||
|
||||
import androidx.preference.Preference;
|
||||
|
||||
import com.android.settings.SettingsActivity;
|
||||
import com.android.settings.accessibility.AccessibilityHearingAidsFragment;
|
||||
import com.android.settings.testutils.FakeFeatureFactory;
|
||||
|
||||
import org.junit.Rule;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.ArgumentCaptor;
|
||||
import org.mockito.Captor;
|
||||
import org.mockito.junit.MockitoJUnit;
|
||||
import org.mockito.junit.MockitoRule;
|
||||
import org.robolectric.RobolectricTestRunner;
|
||||
@@ -36,14 +47,18 @@ public class BluetoothDetailsHearingDeviceControlsControllerTest extends
|
||||
@Rule
|
||||
public final MockitoRule mockito = MockitoJUnit.rule();
|
||||
|
||||
@Captor
|
||||
private ArgumentCaptor<Intent> mIntentArgumentCaptor;
|
||||
private BluetoothDetailsHearingDeviceControlsController mController;
|
||||
|
||||
@Override
|
||||
public void setUp() {
|
||||
super.setUp();
|
||||
|
||||
mController = new BluetoothDetailsHearingDeviceControlsController(mContext, mFragment,
|
||||
FakeFeatureFactory.setupForTest();
|
||||
mController = new BluetoothDetailsHearingDeviceControlsController(mActivity, mFragment,
|
||||
mCachedDevice, mLifecycle);
|
||||
when(mCachedDevice.isHearingAidDevice()).thenReturn(true);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -63,4 +78,23 @@ public class BluetoothDetailsHearingDeviceControlsControllerTest extends
|
||||
|
||||
assertThat(mController.isAvailable()).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onPreferenceClick_hearingDeviceControlsKey_LaunchExpectedFragment() {
|
||||
final Preference hearingControlsKeyPreference = new Preference(mContext);
|
||||
hearingControlsKeyPreference.setKey(
|
||||
BluetoothDetailsHearingDeviceControlsController.KEY_HEARING_DEVICE_CONTROLS);
|
||||
|
||||
mController.onPreferenceClick(hearingControlsKeyPreference);
|
||||
|
||||
assertStartActivityWithExpectedFragment(mActivity,
|
||||
AccessibilityHearingAidsFragment.class.getName());
|
||||
}
|
||||
|
||||
private void assertStartActivityWithExpectedFragment(Context mockContext, String fragmentName) {
|
||||
verify(mockContext).startActivity(mIntentArgumentCaptor.capture());
|
||||
assertThat(mIntentArgumentCaptor.getValue()
|
||||
.getStringExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT))
|
||||
.isEqualTo(fragmentName);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user