Support contextual suggestion

- add a suggestion layout
- add an interface to get fragment in suggestion feature provider
- remove the first preference category of homepage IA to align its top
  with the bottom of the search box

Bug: 173768418
Test: robotest
Change-Id: I784e3eef29ca474c4c89f07b916c6500fabbf7d4
This commit is contained in:
Jason Chiu
2020-11-20 17:16:41 +08:00
parent 3932b07365
commit bd854ccd10
8 changed files with 148 additions and 40 deletions

View File

@@ -48,25 +48,36 @@ import org.robolectric.util.ReflectionHelpers;
@RunWith(RobolectricTestRunner.class)
public class SettingsHomepageActivityTest {
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
}
@Test
public void setHomepageContainerPaddingTop_shouldBeSetPaddingTop() {
public void setDefaultHomepageContainerPaddingTop_shouldSetSearchBoxHeight() {
final SettingsHomepageActivity activity = Robolectric.buildActivity(
SettingsHomepageActivity.class).create().get();
final int searchBarHeight = activity.getResources().getDimensionPixelSize(
R.dimen.search_bar_height);
final int searchBarMargin = activity.getResources().getDimensionPixelSize(
R.dimen.search_bar_margin);
final View view = activity.findViewById(R.id.homepage_container);
activity.setHomepageContainerPaddingTop();
activity.setDefaultHomepageContainerPaddingTop();
final int actualPaddingTop = view.getPaddingTop();
assertThat(actualPaddingTop).isEqualTo(searchBarHeight + searchBarMargin * 2);
assertThat(actualPaddingTop).isEqualTo(activity.getSearchBoxHeight());
}
@Test
public void setHomepageContainerTopOffset_shouldBeSetPaddingTop() {
final SettingsHomepageActivity activity = Robolectric.buildActivity(
SettingsHomepageActivity.class).create().get();
final View view = activity.findViewById(R.id.homepage_container);
final int offset = activity.getResources().getDimensionPixelSize(
R.dimen.suggestion_height);
activity.setHomepageContainerTopOffset(offset);
final int actualPaddingTop = view.getPaddingTop();
assertThat(actualPaddingTop).isEqualTo(activity.getSearchBoxHeight() + offset);
}
@Test