Update title of ConnectedDeviceSlice header
Bug: 114807655 Test: visual, robotest Change-Id: Ibda3f1439787541de0e7aac9f3bcfb016522cdc1
This commit is contained in:
@@ -10224,6 +10224,8 @@
|
|||||||
<item quantity="one"><xliff:g id="number_device_count">%1$d</xliff:g> device connected</item>
|
<item quantity="one"><xliff:g id="number_device_count">%1$d</xliff:g> device connected</item>
|
||||||
<item quantity="other"><xliff:g id="number_device_count">%1$d</xliff:g> devices connected</item>
|
<item quantity="other"><xliff:g id="number_device_count">%1$d</xliff:g> devices connected</item>
|
||||||
</plurals>
|
</plurals>
|
||||||
|
<!-- Title for bluetooth connected devices in connected device slice. [CHAR LIMIT=NONE] -->
|
||||||
|
<string name="bluetooth_connected_devices">Bluetooth Devices</string>
|
||||||
<!-- Title for no connected devices in connected device slice. [CHAR LIMIT=NONE] -->
|
<!-- Title for no connected devices in connected device slice. [CHAR LIMIT=NONE] -->
|
||||||
<string name="no_connected_devices">No connected devices</string>
|
<string name="no_connected_devices">No connected devices</string>
|
||||||
|
|
||||||
|
@@ -101,7 +101,7 @@ public class ConnectedDeviceSlice implements CustomSliceable {
|
|||||||
public Slice getSlice() {
|
public Slice getSlice() {
|
||||||
final IconCompat icon = IconCompat.createWithResource(mContext,
|
final IconCompat icon = IconCompat.createWithResource(mContext,
|
||||||
R.drawable.ic_homepage_connected_device);
|
R.drawable.ic_homepage_connected_device);
|
||||||
final CharSequence title = mContext.getText(R.string.connected_devices_dashboard_title);
|
final CharSequence title = mContext.getText(R.string.bluetooth_connected_devices);
|
||||||
final CharSequence titleNoConnectedDevices = mContext.getText(
|
final CharSequence titleNoConnectedDevices = mContext.getText(
|
||||||
R.string.no_connected_devices);
|
R.string.no_connected_devices);
|
||||||
final PendingIntent primaryActionIntent = PendingIntent.getActivity(mContext, 0,
|
final PendingIntent primaryActionIntent = PendingIntent.getActivity(mContext, 0,
|
||||||
|
@@ -36,6 +36,7 @@ import com.android.settings.testutils.SettingsRobolectricTestRunner;
|
|||||||
import com.android.settings.testutils.SliceTester;
|
import com.android.settings.testutils.SliceTester;
|
||||||
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
|
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
|
||||||
|
|
||||||
|
import org.junit.After;
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
@@ -49,12 +50,17 @@ import java.util.List;
|
|||||||
@RunWith(SettingsRobolectricTestRunner.class)
|
@RunWith(SettingsRobolectricTestRunner.class)
|
||||||
public class ConnectedDeviceSliceTest {
|
public class ConnectedDeviceSliceTest {
|
||||||
|
|
||||||
|
private static final String BLUETOOTH_SUMMARY = "BluetoothSummary";
|
||||||
|
private static final String BLUETOOTH_TITLE = "BluetoothTitle";
|
||||||
|
|
||||||
@Mock
|
@Mock
|
||||||
private CachedBluetoothDevice mCachedBluetoothDevice;
|
private CachedBluetoothDevice mCachedBluetoothDevice;
|
||||||
|
|
||||||
private List<CachedBluetoothDevice> mCachedDevices = new ArrayList<CachedBluetoothDevice>();
|
private List<CachedBluetoothDevice> mBluetoothConnectedDeviceList;
|
||||||
private Context mContext;
|
|
||||||
private ConnectedDeviceSlice mConnectedDeviceSlice;
|
private ConnectedDeviceSlice mConnectedDeviceSlice;
|
||||||
|
private Context mContext;
|
||||||
|
private IconCompat mIcon;
|
||||||
|
private PendingIntent mDetailIntent;
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setUp() {
|
public void setUp() {
|
||||||
@@ -65,35 +71,63 @@ public class ConnectedDeviceSliceTest {
|
|||||||
SliceProvider.setSpecs(SliceLiveData.SUPPORTED_SPECS);
|
SliceProvider.setSpecs(SliceLiveData.SUPPORTED_SPECS);
|
||||||
|
|
||||||
mConnectedDeviceSlice = spy(new ConnectedDeviceSlice(mContext));
|
mConnectedDeviceSlice = spy(new ConnectedDeviceSlice(mContext));
|
||||||
|
|
||||||
|
// Mock the icon and detail intent of Bluetooth.
|
||||||
|
mIcon = IconCompat.createWithResource(mContext, R.drawable.ic_homepage_connected_device);
|
||||||
|
mDetailIntent = PendingIntent.getActivity(mContext, 0, new Intent("test action"), 0);
|
||||||
|
doReturn(mIcon).when(mConnectedDeviceSlice).getConnectedDeviceIcon(any());
|
||||||
|
doReturn(mDetailIntent).when(mConnectedDeviceSlice).getBluetoothDetailIntent(any());
|
||||||
|
|
||||||
|
// Initial Bluetooth connected device list.
|
||||||
|
mBluetoothConnectedDeviceList = new ArrayList<>();
|
||||||
|
}
|
||||||
|
|
||||||
|
@After
|
||||||
|
public void tearDown() {
|
||||||
|
if (!mBluetoothConnectedDeviceList.isEmpty()) {
|
||||||
|
mBluetoothConnectedDeviceList.clear();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void getSlice_hasConnectedDevices_shouldBeCorrectSliceContent() {
|
public void getSlice_hasConnectedDevices_shouldHaveCorrectTitle() {
|
||||||
final String title = "BluetoothTitle";
|
mockBluetoothDeviceList();
|
||||||
final String summary = "BluetoothSummary";
|
doReturn(mBluetoothConnectedDeviceList).when(
|
||||||
final IconCompat icon = IconCompat.createWithResource(mContext,
|
mConnectedDeviceSlice).getBluetoothConnectedDevices();
|
||||||
R.drawable.ic_homepage_connected_device);
|
|
||||||
final PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0,
|
|
||||||
new Intent("test action"), 0);
|
|
||||||
doReturn(title).when(mCachedBluetoothDevice).getName();
|
|
||||||
doReturn(summary).when(mCachedBluetoothDevice).getConnectionSummary();
|
|
||||||
mCachedDevices.add(mCachedBluetoothDevice);
|
|
||||||
doReturn(mCachedDevices).when(mConnectedDeviceSlice).getBluetoothConnectedDevices();
|
|
||||||
doReturn(icon).when(mConnectedDeviceSlice).getConnectedDeviceIcon(any());
|
|
||||||
doReturn(pendingIntent).when(mConnectedDeviceSlice).getBluetoothDetailIntent(any());
|
|
||||||
final Slice slice = mConnectedDeviceSlice.getSlice();
|
final Slice slice = mConnectedDeviceSlice.getSlice();
|
||||||
|
|
||||||
final List<SliceItem> sliceItems = slice.getItems();
|
final List<SliceItem> sliceItems = slice.getItems();
|
||||||
SliceTester.assertTitle(sliceItems, title);
|
SliceTester.assertTitle(sliceItems,
|
||||||
|
mContext.getString(R.string.bluetooth_connected_devices));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void getSlice_hasNoConnectedDevices_shouldReturnCorrectHeader() {
|
public void getSlice_hasConnectedDevices_shouldHaveCorrectContent() {
|
||||||
final List<CachedBluetoothDevice> connectedBluetoothList = new ArrayList<>();
|
mockBluetoothDeviceList();
|
||||||
doReturn(connectedBluetoothList).when(mConnectedDeviceSlice).getBluetoothConnectedDevices();
|
doReturn(mBluetoothConnectedDeviceList).when(
|
||||||
|
mConnectedDeviceSlice).getBluetoothConnectedDevices();
|
||||||
|
|
||||||
|
final Slice slice = mConnectedDeviceSlice.getSlice();
|
||||||
|
|
||||||
|
final List<SliceItem> sliceItems = slice.getItems();
|
||||||
|
SliceTester.assertTitle(sliceItems, BLUETOOTH_TITLE);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void getSlice_noConnectedDevices_shouldHaveCorrectTitle() {
|
||||||
|
doReturn(mBluetoothConnectedDeviceList).when(
|
||||||
|
mConnectedDeviceSlice).getBluetoothConnectedDevices();
|
||||||
|
|
||||||
final Slice slice = mConnectedDeviceSlice.getSlice();
|
final Slice slice = mConnectedDeviceSlice.getSlice();
|
||||||
|
|
||||||
final List<SliceItem> sliceItems = slice.getItems();
|
final List<SliceItem> sliceItems = slice.getItems();
|
||||||
SliceTester.assertTitle(sliceItems, mContext.getString(R.string.no_connected_devices));
|
SliceTester.assertTitle(sliceItems, mContext.getString(R.string.no_connected_devices));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void mockBluetoothDeviceList() {
|
||||||
|
doReturn(BLUETOOTH_TITLE).when(mCachedBluetoothDevice).getName();
|
||||||
|
doReturn(BLUETOOTH_SUMMARY).when(mCachedBluetoothDevice).getConnectionSummary();
|
||||||
|
mBluetoothConnectedDeviceList.add(mCachedBluetoothDevice);
|
||||||
|
}
|
||||||
}
|
}
|
Reference in New Issue
Block a user