Make Settings robotest work with tot Robolectric

Bug: 116278591
Test: make -j RunSettingsRoboTests
Change-Id: I32cb2fcf6094675f79d2fc24702ef6298a9691e4
This commit is contained in:
Fan Zhang
2018-10-11 15:37:36 -07:00
parent dd3feeb155
commit cdf284b732
140 changed files with 706 additions and 823 deletions

View File

@@ -60,13 +60,11 @@ public class SlicesIndexerTest {
private SlicesIndexer mManager;
private SQLiteDatabase mDb;
@Before
public void setUp() {
mContext = RuntimeEnvironment.application;
mManager = spy(new SlicesIndexer(mContext));
mDb = SlicesDatabaseHelper.getInstance(mContext).getWritableDatabase();
}
@After
@@ -84,11 +82,16 @@ public class SlicesIndexerTest {
// Attempt indexing - should not do anything.
mManager.run();
Cursor cursor = mDb.rawQuery("SELECT * FROM slices_index", null);
cursor.moveToFirst();
assertThat(cursor.getCount()).isEqualTo(1);
assertThat(cursor.getString(cursor.getColumnIndex(IndexColumns.KEY))).isEqualTo(newKey);
assertThat(cursor.getString(cursor.getColumnIndex(IndexColumns.TITLE))).isEqualTo(newTitle);
final SQLiteDatabase db = SlicesDatabaseHelper.getInstance(mContext).getWritableDatabase();
try (final Cursor cursor = db.rawQuery("SELECT * FROM slices_index", null)) {
cursor.moveToFirst();
assertThat(cursor.getCount()).isEqualTo(1);
assertThat(cursor.getString(cursor.getColumnIndex(IndexColumns.KEY))).isEqualTo(newKey);
assertThat(cursor.getString(cursor.getColumnIndex(IndexColumns.TITLE)))
.isEqualTo(newTitle);
} finally {
db.close();
}
}
@Test
@@ -109,33 +112,43 @@ public class SlicesIndexerTest {
mManager.run();
final Cursor cursor = mDb.rawQuery("SELECT * FROM slices_index", null);
assertThat(cursor.getCount()).isEqualTo(sliceData.size());
final SQLiteDatabase db = SlicesDatabaseHelper.getInstance(mContext).getWritableDatabase();
try (final Cursor cursor = db.rawQuery("SELECT * FROM slices_index", null)) {
assertThat(cursor.getCount()).isEqualTo(sliceData.size());
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.FRAGMENT))).isEqualTo(
FRAGMENT_NAME);
assertThat(cursor.getString(cursor.getColumnIndex(IndexColumns.SCREENTITLE))).isEqualTo(
SCREEN_TITLE);
assertThat(cursor.getString(cursor.getColumnIndex(IndexColumns.KEYWORDS))).isEqualTo(
KEYWORDS);
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);
assertThat(cursor.getInt(
cursor.getColumnIndex(IndexColumns.ALLOW_DYNAMIC_SUMMARY_IN_SLICE))).isEqualTo(
1 /* true */);
cursor.moveToNext();
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.FRAGMENT)))
.isEqualTo(FRAGMENT_NAME);
assertThat(cursor.getString(
cursor.getColumnIndex(IndexColumns.SCREENTITLE))).isEqualTo(SCREEN_TITLE);
assertThat(
cursor.getString(cursor.getColumnIndex(IndexColumns.KEYWORDS)))
.isEqualTo(KEYWORDS);
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);
assertThat(cursor.getInt(
cursor.getColumnIndex(
IndexColumns.ALLOW_DYNAMIC_SUMMARY_IN_SLICE)))
.isEqualTo(1 /* true */);
cursor.moveToNext();
}
} finally {
db.close();
}
}
@@ -143,8 +156,15 @@ public class SlicesIndexerTest {
final ContentValues values = new ContentValues();
values.put(IndexColumns.KEY, key);
values.put(IndexColumns.TITLE, title);
mDb.replaceOrThrow(SlicesDatabaseHelper.Tables.TABLE_SLICES_INDEX, null, values);
final SQLiteDatabase db = SlicesDatabaseHelper.getInstance(mContext).getWritableDatabase();
db.beginTransaction();
try {
db.replaceOrThrow(SlicesDatabaseHelper.Tables.TABLE_SLICES_INDEX, null, values);
db.setTransactionSuccessful();
} finally {
db.endTransaction();
}
db.close();
}
private List<SliceData> getDummyIndexableData() {