Use preference key specified in injected settings.
Bug: 31002801 Test: make RunSettingsRoboTests Reads in optional metadata field for specifying the key used for an injected preference. Change-Id: Ief2ff10c508d42f91906b531cf34906c1c42fdd4
This commit is contained in:
@@ -109,6 +109,9 @@ public class DashboardFeatureProviderImpl implements DashboardFeatureProvider {
|
|||||||
if (tile == null || tile.intent == null) {
|
if (tile == null || tile.intent == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
if (!TextUtils.isEmpty(tile.key)) {
|
||||||
|
return tile.key;
|
||||||
|
}
|
||||||
final StringBuilder sb = new StringBuilder(DASHBOARD_TILE_PREF_KEY_PREFIX);
|
final StringBuilder sb = new StringBuilder(DASHBOARD_TILE_PREF_KEY_PREFIX);
|
||||||
final ComponentName component = tile.intent.getComponent();
|
final ComponentName component = tile.intent.getComponent();
|
||||||
sb.append(component.getClassName());
|
sb.append(component.getClassName());
|
||||||
|
@@ -144,6 +144,20 @@ public class DashboardFeatureProviderImplTest {
|
|||||||
assertThat(preference.getOrder()).isEqualTo(Preference.DEFAULT_ORDER);
|
assertThat(preference.getOrder()).isEqualTo(Preference.DEFAULT_ORDER);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void bindPreference_withNullKeyTileKey_shouldUseTileKey() {
|
||||||
|
final Preference preference = new Preference(
|
||||||
|
ShadowApplication.getInstance().getApplicationContext());
|
||||||
|
final Tile tile = new Tile();
|
||||||
|
tile.key = "key";
|
||||||
|
tile.intent = new Intent();
|
||||||
|
tile.intent.setComponent(new ComponentName("pkg", "class"));
|
||||||
|
mImpl.bindPreferenceToTile(mActivity, preference, tile, null /* key */
|
||||||
|
, Preference.DEFAULT_ORDER);
|
||||||
|
|
||||||
|
assertThat(preference.getKey()).isEqualTo(tile.key);
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void bindPreference_withBaseOrder_shouldOffsetPriority() {
|
public void bindPreference_withBaseOrder_shouldOffsetPriority() {
|
||||||
final int baseOrder = 100;
|
final int baseOrder = 100;
|
||||||
|
Reference in New Issue
Block a user