Loading src/com/android/settings/bluetooth/BluetoothKeyMissingDialog.java +2 −1 Original line number Diff line number Diff line Loading @@ -40,7 +40,8 @@ public class BluetoothKeyMissingDialog extends FragmentActivity { finish(); return; } BluetoothKeyMissingDialogFragment fragment = new BluetoothKeyMissingDialogFragment(device); BluetoothKeyMissingDialogFragment fragment = BluetoothKeyMissingDialogFragment.newInstance(device); fragment.show(getSupportFragmentManager(), FRAGMENT_TAG); closeSystemDialogs(); } Loading src/com/android/settings/bluetooth/BluetoothKeyMissingDialogFragment.java +14 −3 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ import androidx.appcompat.app.AlertDialog; import com.android.settings.R; import com.android.settings.core.instrumentation.InstrumentedDialogFragment; import com.android.settingslib.bluetooth.LocalBluetoothManager; /** * A dialogFragment used by {@link BluetoothKeyMissingDialog} to create a dialog for the Loading @@ -40,16 +41,26 @@ public class BluetoothKeyMissingDialogFragment extends InstrumentedDialogFragmen implements OnClickListener { private static final String TAG = "BTKeyMissingDialogFragment"; private static final String KEY_CACHED_DEVICE_ADDRESS = "cached_device"; private BluetoothDevice mBluetoothDevice; public BluetoothKeyMissingDialogFragment(@NonNull BluetoothDevice bluetoothDevice) { mBluetoothDevice = bluetoothDevice; /** Creates a new instant of the fragment. */ public static BluetoothKeyMissingDialogFragment newInstance(BluetoothDevice device) { Bundle args = new Bundle(1); args.putString(KEY_CACHED_DEVICE_ADDRESS, device.getAddress()); BluetoothKeyMissingDialogFragment fragment = new BluetoothKeyMissingDialogFragment(); fragment.setArguments(args); return fragment; } @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { String deviceAddress = getArguments().getString(KEY_CACHED_DEVICE_ADDRESS); LocalBluetoothManager manager = Utils.getLocalBtManager(getContext()); mBluetoothDevice = manager.getBluetoothAdapter().getRemoteDevice(deviceAddress); AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); View view = getActivity().getLayoutInflater().inflate(R.layout.bluetooth_key_missing, null); TextView keyMissingTitle = view.findViewById(R.id.bluetooth_key_missing_title); Loading @@ -66,7 +77,7 @@ public class BluetoothKeyMissingDialogFragment extends InstrumentedDialogFragmen @Override public void onDestroy() { super.onDestroy(); if (!getActivity().isFinishing()) { if (!getActivity().isChangingConfigurations() && !getActivity().isFinishing()) { getActivity().finish(); } } Loading tests/robotests/src/com/android/settings/bluetooth/BluetoothKeyMissingDialogTest.java +14 −2 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ import static com.google.common.truth.Truth.assertThat; import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import static org.robolectric.shadows.ShadowLooper.shadowMainLooper; import android.bluetooth.BluetoothDevice; Loading @@ -27,10 +28,13 @@ import androidx.appcompat.app.AlertDialog; import androidx.fragment.app.FragmentActivity; import com.android.settings.testutils.shadow.ShadowAlertDialogCompat; import com.android.settings.testutils.shadow.ShadowBluetoothUtils; import com.android.settingslib.bluetooth.LocalBluetoothManager; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Answers; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.Robolectric; Loading @@ -38,18 +42,26 @@ import org.robolectric.RobolectricTestRunner; import org.robolectric.annotation.Config; @RunWith(RobolectricTestRunner.class) @Config(shadows = ShadowAlertDialogCompat.class) @Config(shadows = {ShadowAlertDialogCompat.class, ShadowBluetoothUtils.class}) public class BluetoothKeyMissingDialogTest { @Mock private BluetoothDevice mBluetoothDevice; @Mock(answer = Answers.RETURNS_DEEP_STUBS) private LocalBluetoothManager mLocalBtManager; private BluetoothKeyMissingDialogFragment mFragment = null; private FragmentActivity mActivity = null; private static final String MAC_ADDRESS = "12:34:56:78:90:12"; @Before public void setUp() { MockitoAnnotations.initMocks(this); when(mBluetoothDevice.getAddress()).thenReturn(MAC_ADDRESS); when(mLocalBtManager.getBluetoothAdapter().getRemoteDevice(MAC_ADDRESS)) .thenReturn(mBluetoothDevice); ShadowBluetoothUtils.sLocalBluetoothManager = mLocalBtManager; mActivity = Robolectric.setupActivity(FragmentActivity.class); mFragment = new BluetoothKeyMissingDialogFragment(mBluetoothDevice); mFragment = BluetoothKeyMissingDialogFragment.newInstance(mBluetoothDevice); mActivity .getSupportFragmentManager() .beginTransaction() Loading Loading
src/com/android/settings/bluetooth/BluetoothKeyMissingDialog.java +2 −1 Original line number Diff line number Diff line Loading @@ -40,7 +40,8 @@ public class BluetoothKeyMissingDialog extends FragmentActivity { finish(); return; } BluetoothKeyMissingDialogFragment fragment = new BluetoothKeyMissingDialogFragment(device); BluetoothKeyMissingDialogFragment fragment = BluetoothKeyMissingDialogFragment.newInstance(device); fragment.show(getSupportFragmentManager(), FRAGMENT_TAG); closeSystemDialogs(); } Loading
src/com/android/settings/bluetooth/BluetoothKeyMissingDialogFragment.java +14 −3 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ import androidx.appcompat.app.AlertDialog; import com.android.settings.R; import com.android.settings.core.instrumentation.InstrumentedDialogFragment; import com.android.settingslib.bluetooth.LocalBluetoothManager; /** * A dialogFragment used by {@link BluetoothKeyMissingDialog} to create a dialog for the Loading @@ -40,16 +41,26 @@ public class BluetoothKeyMissingDialogFragment extends InstrumentedDialogFragmen implements OnClickListener { private static final String TAG = "BTKeyMissingDialogFragment"; private static final String KEY_CACHED_DEVICE_ADDRESS = "cached_device"; private BluetoothDevice mBluetoothDevice; public BluetoothKeyMissingDialogFragment(@NonNull BluetoothDevice bluetoothDevice) { mBluetoothDevice = bluetoothDevice; /** Creates a new instant of the fragment. */ public static BluetoothKeyMissingDialogFragment newInstance(BluetoothDevice device) { Bundle args = new Bundle(1); args.putString(KEY_CACHED_DEVICE_ADDRESS, device.getAddress()); BluetoothKeyMissingDialogFragment fragment = new BluetoothKeyMissingDialogFragment(); fragment.setArguments(args); return fragment; } @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { String deviceAddress = getArguments().getString(KEY_CACHED_DEVICE_ADDRESS); LocalBluetoothManager manager = Utils.getLocalBtManager(getContext()); mBluetoothDevice = manager.getBluetoothAdapter().getRemoteDevice(deviceAddress); AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); View view = getActivity().getLayoutInflater().inflate(R.layout.bluetooth_key_missing, null); TextView keyMissingTitle = view.findViewById(R.id.bluetooth_key_missing_title); Loading @@ -66,7 +77,7 @@ public class BluetoothKeyMissingDialogFragment extends InstrumentedDialogFragmen @Override public void onDestroy() { super.onDestroy(); if (!getActivity().isFinishing()) { if (!getActivity().isChangingConfigurations() && !getActivity().isFinishing()) { getActivity().finish(); } } Loading
tests/robotests/src/com/android/settings/bluetooth/BluetoothKeyMissingDialogTest.java +14 −2 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ import static com.google.common.truth.Truth.assertThat; import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import static org.robolectric.shadows.ShadowLooper.shadowMainLooper; import android.bluetooth.BluetoothDevice; Loading @@ -27,10 +28,13 @@ import androidx.appcompat.app.AlertDialog; import androidx.fragment.app.FragmentActivity; import com.android.settings.testutils.shadow.ShadowAlertDialogCompat; import com.android.settings.testutils.shadow.ShadowBluetoothUtils; import com.android.settingslib.bluetooth.LocalBluetoothManager; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Answers; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.Robolectric; Loading @@ -38,18 +42,26 @@ import org.robolectric.RobolectricTestRunner; import org.robolectric.annotation.Config; @RunWith(RobolectricTestRunner.class) @Config(shadows = ShadowAlertDialogCompat.class) @Config(shadows = {ShadowAlertDialogCompat.class, ShadowBluetoothUtils.class}) public class BluetoothKeyMissingDialogTest { @Mock private BluetoothDevice mBluetoothDevice; @Mock(answer = Answers.RETURNS_DEEP_STUBS) private LocalBluetoothManager mLocalBtManager; private BluetoothKeyMissingDialogFragment mFragment = null; private FragmentActivity mActivity = null; private static final String MAC_ADDRESS = "12:34:56:78:90:12"; @Before public void setUp() { MockitoAnnotations.initMocks(this); when(mBluetoothDevice.getAddress()).thenReturn(MAC_ADDRESS); when(mLocalBtManager.getBluetoothAdapter().getRemoteDevice(MAC_ADDRESS)) .thenReturn(mBluetoothDevice); ShadowBluetoothUtils.sLocalBluetoothManager = mLocalBtManager; mActivity = Robolectric.setupActivity(FragmentActivity.class); mFragment = new BluetoothKeyMissingDialogFragment(mBluetoothDevice); mFragment = BluetoothKeyMissingDialogFragment.newInstance(mBluetoothDevice); mActivity .getSupportFragmentManager() .beginTransaction() Loading