Merge "Index SliceType and Official Platform flag" into pi-dev am: f663d78436

am: 467b47be5f

Change-Id: I34e60b72206616d4c569869ac8416972aa30c5ce
This commit is contained in:
Matthew Fritze
2018-03-21 04:33:12 +00:00
committed by android-build-merger
11 changed files with 167 additions and 29 deletions

View File

@@ -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;

View File

@@ -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);

View File

@@ -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);
}

View File

@@ -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);
}

View File

@@ -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);

View File

@@ -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());