Merge "Index SliceType and Official Platform flag" into pi-dev am: f663d78436
am: 467b47be5f
Change-Id: I34e60b72206616d4c569869ac8416972aa30c5ce
This commit is contained in:
@@ -48,7 +48,7 @@ import java.util.List;
|
||||
* with another preference with a matchin replacement attribute.
|
||||
*/
|
||||
@RunWith(SettingsRobolectricTestRunner.class)
|
||||
public class PreferenceXmlParserUtilTest {
|
||||
public class PreferenceXmlParserUtilsTest {
|
||||
|
||||
private Context mContext;
|
||||
|
||||
@@ -82,7 +82,7 @@ public class SettingsSliceProviderTest {
|
||||
|
||||
@Test
|
||||
public void testInitialSliceReturned_emptySlice() {
|
||||
insertSpecialCase(INTENT_PATH);
|
||||
insertSpecialCase(KEY);
|
||||
Uri uri = SliceBuilderUtils.getUri(INTENT_PATH, false);
|
||||
Slice slice = mProvider.onBindSlice(uri);
|
||||
|
||||
@@ -93,7 +93,7 @@ public class SettingsSliceProviderTest {
|
||||
@Test
|
||||
public void testLoadSlice_returnsSliceFromAccessor() {
|
||||
insertSpecialCase(KEY);
|
||||
Uri uri = SliceBuilderUtils.getUri(KEY, false);
|
||||
Uri uri = SliceBuilderUtils.getUri(INTENT_PATH, false);
|
||||
|
||||
mProvider.loadSlice(uri);
|
||||
SliceData data = mProvider.mSliceDataCache.get(uri);
|
||||
|
||||
@@ -24,6 +24,7 @@ import android.content.ContentResolver;
|
||||
import android.content.Context;
|
||||
import android.net.Uri;
|
||||
import android.provider.SettingsSlicesContract;
|
||||
import android.util.Pair;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.core.BasePreferenceController;
|
||||
@@ -188,6 +189,59 @@ public class SliceBuilderUtilsTest {
|
||||
assertThat(summary).isEqualTo(data.getScreenTitle());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getPathData_splitsIntentUri() {
|
||||
Uri uri = new Uri.Builder()
|
||||
.authority(SettingsSliceProvider.SLICE_AUTHORITY)
|
||||
.appendPath(SettingsSlicesContract.PATH_SETTING_INTENT)
|
||||
.appendPath(KEY)
|
||||
.build();
|
||||
|
||||
Pair<Boolean, String> pathPair = SliceBuilderUtils.getPathData(uri);
|
||||
|
||||
assertThat(pathPair.first).isFalse();
|
||||
assertThat(pathPair.second).isEqualTo(KEY);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getPathData_splitsActionUri() {
|
||||
Uri uri = new Uri.Builder()
|
||||
.authority(SettingsSliceProvider.SLICE_AUTHORITY)
|
||||
.appendPath(SettingsSlicesContract.PATH_SETTING_ACTION)
|
||||
.appendPath(KEY)
|
||||
.build();
|
||||
|
||||
Pair<Boolean, String> pathPair = SliceBuilderUtils.getPathData(uri);
|
||||
|
||||
assertThat(pathPair.first).isTrue();
|
||||
assertThat(pathPair.second).isEqualTo(KEY);
|
||||
}
|
||||
|
||||
@Test(expected = IllegalArgumentException.class)
|
||||
public void getPathData_noKey_returnsNull() {
|
||||
Uri uri = new Uri.Builder()
|
||||
.authority(SettingsSliceProvider.SLICE_AUTHORITY)
|
||||
.appendPath(SettingsSlicesContract.PATH_SETTING_ACTION)
|
||||
.build();
|
||||
|
||||
SliceBuilderUtils.getPathData(uri);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getPathData_extraArg_returnsNull() {
|
||||
Uri uri = new Uri.Builder()
|
||||
.authority(SettingsSliceProvider.SLICE_AUTHORITY)
|
||||
.appendPath(SettingsSlicesContract.PATH_SETTING_ACTION)
|
||||
.appendPath(KEY)
|
||||
.appendPath(KEY)
|
||||
.build();
|
||||
|
||||
Pair<Boolean, String> pathPair = SliceBuilderUtils.getPathData(uri);
|
||||
|
||||
assertThat(pathPair.first).isTrue();
|
||||
assertThat(pathPair.second).isEqualTo(KEY + "/" + KEY);
|
||||
}
|
||||
|
||||
private SliceData getDummyData() {
|
||||
return getDummyData(PREF_CONTROLLER, SUMMARY);
|
||||
}
|
||||
|
||||
@@ -89,8 +89,9 @@ public class SlicesDatabaseAccessorTest {
|
||||
@Test
|
||||
public void testGetSliceFromUri_validUri_validSliceReturned() {
|
||||
String key = "key";
|
||||
String path = "intent/" + key;
|
||||
insertSpecialCase(key);
|
||||
Uri uri = SliceBuilderUtils.getUri(key, false);
|
||||
Uri uri = SliceBuilderUtils.getUri(path, false);
|
||||
|
||||
SliceData data = mAccessor.getSliceDataFromUri(uri);
|
||||
|
||||
@@ -106,8 +107,7 @@ public class SlicesDatabaseAccessorTest {
|
||||
|
||||
@Test(expected = IllegalStateException.class)
|
||||
public void testGetSliceFromUri_invalidUri_errorThrown() {
|
||||
Uri uri = SliceBuilderUtils.getUri("durr", false);
|
||||
|
||||
Uri uri = SliceBuilderUtils.getUri("intent/durr", false);
|
||||
mAccessor.getSliceDataFromUri(uri);
|
||||
}
|
||||
|
||||
|
||||
@@ -68,7 +68,9 @@ public class SlicesDatabaseHelperTest {
|
||||
IndexColumns.SCREENTITLE,
|
||||
IndexColumns.ICON_RESOURCE,
|
||||
IndexColumns.FRAGMENT,
|
||||
IndexColumns.CONTROLLER
|
||||
IndexColumns.CONTROLLER,
|
||||
IndexColumns.PLATFORM_SLICE,
|
||||
IndexColumns.SLICE_TYPE,
|
||||
};
|
||||
|
||||
assertThat(columnNames).isEqualTo(expectedNames);
|
||||
|
||||
@@ -50,6 +50,8 @@ public class SlicesIndexerTest {
|
||||
private final int ICON = 1234; // I declare a thumb war
|
||||
private final Uri URI = Uri.parse("content://com.android.settings.slices/test");
|
||||
private final String PREF_CONTROLLER = "com.android.settings.slices.tester";
|
||||
private final boolean PLATFORM_DEFINED = true;
|
||||
private final int SLICE_TYPE = SliceData.SliceType.SLIDER;
|
||||
|
||||
private Context mContext;
|
||||
|
||||
@@ -109,10 +111,22 @@ public class SlicesIndexerTest {
|
||||
|
||||
cursor.moveToFirst();
|
||||
for (int i = 0; i < sliceData.size(); i++) {
|
||||
assertThat(cursor.getString(cursor.getColumnIndex(IndexColumns.KEY)))
|
||||
.isEqualTo(KEYS[i]);
|
||||
assertThat(cursor.getString(cursor.getColumnIndex(IndexColumns.TITLE)))
|
||||
.isEqualTo(TITLES[i]);
|
||||
assertThat(cursor.getString(cursor.getColumnIndex(IndexColumns.KEY))).isEqualTo(
|
||||
KEYS[i]);
|
||||
assertThat(cursor.getString(cursor.getColumnIndex(IndexColumns.TITLE))).isEqualTo(
|
||||
TITLES[i]);
|
||||
assertThat(cursor.getString(cursor.getColumnIndex(IndexColumns.FRAGMENT))).isEqualTo(
|
||||
FRAGMENT_NAME);
|
||||
assertThat(cursor.getString(cursor.getColumnIndex(IndexColumns.SCREENTITLE))).isEqualTo(
|
||||
SCREEN_TITLE);
|
||||
assertThat(cursor.getInt(cursor.getColumnIndex(IndexColumns.ICON_RESOURCE))).isEqualTo(
|
||||
ICON);
|
||||
assertThat(cursor.getString(cursor.getColumnIndex(IndexColumns.CONTROLLER))).isEqualTo(
|
||||
PREF_CONTROLLER);
|
||||
assertThat(cursor.getInt(cursor.getColumnIndex(IndexColumns.PLATFORM_SLICE))).isEqualTo(
|
||||
1 /* true */);
|
||||
assertThat(cursor.getInt(cursor.getColumnIndex(IndexColumns.SLICE_TYPE))).isEqualTo(
|
||||
SLICE_TYPE);
|
||||
cursor.moveToNext();
|
||||
}
|
||||
}
|
||||
@@ -126,15 +140,17 @@ public class SlicesIndexerTest {
|
||||
}
|
||||
|
||||
private List<SliceData> getDummyIndexableData() {
|
||||
final SliceData.Builder builder = new SliceData.Builder()
|
||||
.setSummary(SUMMARY)
|
||||
.setScreenTitle(SCREEN_TITLE)
|
||||
.setFragmentName(FRAGMENT_NAME)
|
||||
.setIcon(ICON)
|
||||
.setUri(URI)
|
||||
.setPreferenceControllerClassName(PREF_CONTROLLER);
|
||||
|
||||
final List<SliceData> sliceData = new ArrayList<>();
|
||||
final SliceData.Builder builder = new SliceData.Builder()
|
||||
.setSummary(SUMMARY)
|
||||
.setScreenTitle(SCREEN_TITLE)
|
||||
.setFragmentName(FRAGMENT_NAME)
|
||||
.setIcon(ICON)
|
||||
.setUri(URI)
|
||||
.setPreferenceControllerClassName(PREF_CONTROLLER)
|
||||
.setPlatformDefined(PLATFORM_DEFINED)
|
||||
.setSliceType(SLICE_TYPE);
|
||||
|
||||
for (int i = 0; i < KEYS.length; i++) {
|
||||
builder.setKey(KEYS[i]).setTitle(TITLES[i]);
|
||||
sliceData.add(builder.build());
|
||||
|
||||
Reference in New Issue
Block a user