Handle ransferring state in output switcher
-Add subtitle on Slice item for transferring and failed case -Add test cases Bug: 150903460 Test: make -j50 RunSettingsRoboTests Change-Id: I45fee20194dc6c9ec86ca88158393dfda455d0c0
This commit is contained in:
@@ -335,6 +335,81 @@ public class MediaOutputSliceTest {
|
||||
assertThat(TextUtils.indexOf(sliceInfo, mContext.getText(R.string.add))).isNotEqualTo(-1);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getSlice_onTransferring_containTransferringSubtitle() {
|
||||
final List<MediaDevice> mSelectedDevices = new ArrayList<>();
|
||||
final List<MediaDevice> mSelectableDevices = new ArrayList<>();
|
||||
mDevices.clear();
|
||||
final MediaDevice device = mock(MediaDevice.class);
|
||||
when(device.getName()).thenReturn(TEST_DEVICE_1_NAME);
|
||||
when(device.getIcon()).thenReturn(mTestDrawable);
|
||||
when(device.getMaxVolume()).thenReturn(100);
|
||||
when(device.isConnected()).thenReturn(true);
|
||||
when(device.getDeviceType()).thenReturn(MediaDevice.MediaDeviceType.TYPE_CAST_DEVICE);
|
||||
when(device.getId()).thenReturn(TEST_DEVICE_1_ID);
|
||||
final MediaDevice device2 = mock(MediaDevice.class);
|
||||
when(device2.getName()).thenReturn(TEST_DEVICE_2_NAME);
|
||||
when(device2.getIcon()).thenReturn(mTestDrawable);
|
||||
when(device2.getMaxVolume()).thenReturn(100);
|
||||
when(device2.isConnected()).thenReturn(false);
|
||||
when(device2.getState()).thenReturn(LocalMediaManager.MediaDeviceState.STATE_CONNECTING);
|
||||
when(device2.getDeviceType()).thenReturn(MediaDevice.MediaDeviceType.TYPE_CAST_DEVICE);
|
||||
when(device2.getId()).thenReturn(TEST_DEVICE_2_ID);
|
||||
mSelectedDevices.add(device);
|
||||
mSelectableDevices.add(device2);
|
||||
when(mLocalMediaManager.getCurrentConnectedDevice()).thenReturn(device);
|
||||
mDevices.add(device);
|
||||
mDevices.add(device2);
|
||||
when(mLocalMediaManager.getSelectedMediaDevice()).thenReturn(mSelectedDevices);
|
||||
when(mLocalMediaManager.getSelectableMediaDevice()).thenReturn(mSelectableDevices);
|
||||
mMediaDeviceUpdateWorker.onDeviceListUpdate(mDevices);
|
||||
|
||||
final Slice mediaSlice = mMediaOutputSlice.getSlice();
|
||||
final String sliceInfo = SliceQuery.findAll(mediaSlice, FORMAT_SLICE, HINT_LIST_ITEM,
|
||||
null).toString();
|
||||
|
||||
assertThat(TextUtils.indexOf(sliceInfo, mContext.getText(R.string.media_output_switching)))
|
||||
.isNotEqualTo(-1);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getSlice_onTransferringFailed_containFailedSubtitle() {
|
||||
final List<MediaDevice> mSelectedDevices = new ArrayList<>();
|
||||
final List<MediaDevice> mSelectableDevices = new ArrayList<>();
|
||||
mDevices.clear();
|
||||
final MediaDevice device = mock(MediaDevice.class);
|
||||
when(device.getName()).thenReturn(TEST_DEVICE_1_NAME);
|
||||
when(device.getIcon()).thenReturn(mTestDrawable);
|
||||
when(device.getMaxVolume()).thenReturn(100);
|
||||
when(device.isConnected()).thenReturn(true);
|
||||
when(device.getDeviceType()).thenReturn(MediaDevice.MediaDeviceType.TYPE_CAST_DEVICE);
|
||||
when(device.getId()).thenReturn(TEST_DEVICE_1_ID);
|
||||
final MediaDevice device2 = mock(MediaDevice.class);
|
||||
when(device2.getName()).thenReturn(TEST_DEVICE_2_NAME);
|
||||
when(device2.getIcon()).thenReturn(mTestDrawable);
|
||||
when(device2.getMaxVolume()).thenReturn(100);
|
||||
when(device2.isConnected()).thenReturn(false);
|
||||
when(device2.getState()).thenReturn(LocalMediaManager.MediaDeviceState
|
||||
.STATE_CONNECTING_FAILED);
|
||||
when(device2.getDeviceType()).thenReturn(MediaDevice.MediaDeviceType.TYPE_CAST_DEVICE);
|
||||
when(device2.getId()).thenReturn(TEST_DEVICE_2_ID);
|
||||
mSelectedDevices.add(device);
|
||||
mSelectableDevices.add(device2);
|
||||
when(mLocalMediaManager.getCurrentConnectedDevice()).thenReturn(device);
|
||||
mDevices.add(device);
|
||||
mDevices.add(device2);
|
||||
when(mLocalMediaManager.getSelectedMediaDevice()).thenReturn(mSelectedDevices);
|
||||
when(mLocalMediaManager.getSelectableMediaDevice()).thenReturn(mSelectableDevices);
|
||||
mMediaDeviceUpdateWorker.onDeviceListUpdate(mDevices);
|
||||
|
||||
final Slice mediaSlice = mMediaOutputSlice.getSlice();
|
||||
final String sliceInfo = SliceQuery.findAll(mediaSlice, FORMAT_SLICE, HINT_LIST_ITEM,
|
||||
null).toString();
|
||||
|
||||
assertThat(TextUtils.indexOf(sliceInfo, mContext.getText(
|
||||
R.string.media_output_switch_error_text))).isNotEqualTo(-1);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onNotifyChange_foundMediaDevice_connect() {
|
||||
mDevices.clear();
|
||||
|
Reference in New Issue
Block a user