Merge "Dashboard search bar polish"

This commit is contained in:
TreeHugger Robot
2017-06-27 00:11:56 +00:00
committed by Android (Google) Code Review
7 changed files with 45 additions and 161 deletions

View File

@@ -123,53 +123,6 @@ public class DashboardAdapterTest {
when(mView.getTag()).thenReturn(mCondition);
}
@Test
public void testOnBindViewHolder_spacer_noSuggestions_noConditions() {
makeCategory();
DashboardAdapter.DashboardItemHolder holder = setupSpacer();
mDashboardAdapter.onBindViewHolder(holder, 0);
assertThat(holder.itemView.getBackground()).isNull();
}
@Test
public void testOnBindViewHolder_spacer_suggestion_noConditions() {
setupSuggestions(makeSuggestions("pkg1"));
makeCategory();
DashboardAdapter.DashboardItemHolder holder = setupSpacer();
mDashboardAdapter.onBindViewHolder(holder, 0);
assertThat(holder.itemView.getBackground()).isNotNull();
assertThat(holder.itemView.getBackground()).isInstanceOf(ColorDrawable.class);
}
@Test
public void testOnBindViewHolder_spacer_noSuggestion_condition() {
makeCondition();
makeCategory();
DashboardAdapter.DashboardItemHolder holder = setupSpacer();
mDashboardAdapter.onBindViewHolder(holder, 0);
assertThat(holder.itemView.getBackground()).isNotNull();
assertThat(holder.itemView.getBackground()).isInstanceOf(ColorDrawable.class);
}
@Test
public void testOnBindViewHolder_spacer_suggestion_condition() {
setupSuggestions(makeSuggestions("pkg1"));
makeCondition();
makeCategory();
DashboardAdapter.DashboardItemHolder holder = setupSpacer();
mDashboardAdapter.onBindViewHolder(holder, 0);
assertThat(holder.itemView.getBackground()).isNotNull();
assertThat(holder.itemView.getBackground()).isInstanceOf(ColorDrawable.class);
}
@Test
public void testSuggestionsLogs_NotExpanded() {
setupSuggestions(makeSuggestions("pkg1", "pkg2", "pkg3"));
@@ -388,7 +341,7 @@ public class DashboardAdapterTest {
new FrameLayout(RuntimeEnvironment.application),
R.layout.suggestion_tile_card);
mDashboardAdapter.onBindViewHolder(mSuggestionHolder, 2);
mDashboardAdapter.onBindViewHolder(mSuggestionHolder, 1);
assertThat(textView.getParent()).isSameAs(mSuggestionHolder.itemView);
mSuggestionHolder.itemView.performClick();
@@ -413,7 +366,7 @@ public class DashboardAdapterTest {
new FrameLayout(context),
R.layout.suggestion_tile_card);
mDashboardAdapter.onBindViewHolder(mSuggestionHolder, 2);
mDashboardAdapter.onBindViewHolder(mSuggestionHolder, 1);
mSuggestionHolder.itemView.performClick();
assertThat(ShadowApplication.getInstance().getNextStartedActivity()).isNull();
@@ -442,8 +395,8 @@ public class DashboardAdapterTest {
new FrameLayout(context),
R.layout.suggestion_tile_card);
mDashboardAdapter.onBindViewHolder(mSuggestionHolder, 2);
mDashboardAdapter.onBindViewHolder(mSuggestionHolder, 2);
mDashboardAdapter.onBindViewHolder(mSuggestionHolder, 1);
mDashboardAdapter.onBindViewHolder(mSuggestionHolder, 1);
ViewGroup itemView = (ViewGroup) mSuggestionHolder.itemView;
assertThat(itemView.getChildCount()).isEqualTo(1);
@@ -509,25 +462,4 @@ public class DashboardAdapterTest {
new FrameLayout(RuntimeEnvironment.application),
mDashboardAdapter.getItemViewType(1));
}
private void makeCondition() {
final List<Condition> conditions = new ArrayList<>();
Condition condition = mock(Condition.class);
when(condition.shouldShow()).thenReturn(true);
conditions.add(condition);
mDashboardAdapter.setConditions(conditions);
}
private void makeCategory() {
List<DashboardCategory> categories = new ArrayList<>();
categories.add(new DashboardCategory());
mDashboardAdapter.setCategory(categories);
}
private DashboardAdapter.DashboardItemHolder setupSpacer() {
Context context = RuntimeEnvironment.application;
final View view = LayoutInflater.from(context)
.inflate(R.layout.dashboard_header_spacer, new LinearLayout(context), false);
return new DashboardAdapter.DashboardItemHolder(view);
}
}

View File

@@ -118,8 +118,8 @@ public class DashboardDataTest {
public void testBuildItemsData_containsAllData() {
final DashboardData.SuggestionConditionHeaderData data =
new DashboardData.SuggestionConditionHeaderData(
mDashboardDataWithOneConditions.getConditions(), 0);
final Object[] expectedObjects = {null, data,
mDashboardDataWithOneConditions.getConditions(), 0);
final Object[] expectedObjects = {data,
mDashboardDataWithOneConditions.getSuggestions(),
mDashboardDataWithOneConditions.getConditions(),
null, mTestCategoryTile};
@@ -198,11 +198,11 @@ public class DashboardDataTest {
// Item in position 1 is the header, which contains the number of conditions, changed from
// 1 to 2
testResultData.add(new ListUpdateResult.ResultData(
ListUpdateResult.ResultData.TYPE_OPERATION_CHANGE, 1, 1));
ListUpdateResult.ResultData.TYPE_OPERATION_CHANGE, 0, 1));
// Item in position 3 is the condition container containing the list of conditions, which
// gets 1 more item
testResultData.add(new ListUpdateResult.ResultData(
ListUpdateResult.ResultData.TYPE_OPERATION_CHANGE, 3, 1));
ListUpdateResult.ResultData.TYPE_OPERATION_CHANGE, 2, 1));
testDiffUtil(mDashboardDataWithOneConditions,
mDashboardDataWithTwoConditions, testResultData);
@@ -213,7 +213,7 @@ public class DashboardDataTest {
//Build testResultData
final List<ListUpdateResult.ResultData> testResultData = new ArrayList<>();
testResultData.add(new ListUpdateResult.ResultData(
ListUpdateResult.ResultData.TYPE_OPERATION_REMOVE, 1, 5));
ListUpdateResult.ResultData.TYPE_OPERATION_REMOVE, 0, 5));
testDiffUtil(mDashboardDataWithOneConditions, mDashboardDataWithNoItems, testResultData);
}