Merge "Change underlying preferenceControllers to an ArrayMap of Lists."

This commit is contained in:
TreeHugger Robot
2018-01-04 02:45:27 +00:00
committed by Android (Google) Code Review
3 changed files with 75 additions and 26 deletions

View File

@@ -90,6 +90,19 @@ public class DashboardFragmentTest {
assertThat(controller).isSameAs(retrievedController);
}
@Test
public void testPreferenceControllerSetter_shouldAddAndNotReplace() {
final TestPreferenceController controller1 = new TestPreferenceController(mContext);
mTestFragment.addPreferenceController(controller1);
final TestPreferenceController controller2 = new TestPreferenceController(mContext);
mTestFragment.addPreferenceController(controller2);
final TestPreferenceController retrievedController = mTestFragment.getPreferenceController
(TestPreferenceController.class);
assertThat(controller1).isSameAs(retrievedController);
}
@Test
public void displayTilesAsPreference_shouldAddTilesWithIntent() {
when(mFakeFeatureFactory.dashboardFeatureProvider
@@ -145,6 +158,23 @@ public class DashboardFragmentTest {
verify(mockController2).getPreferenceKey();
}
@Test
public void updateState_doesNotSkipControllersOfSameClass() {
final AbstractPreferenceController mockController1 =
mock(AbstractPreferenceController.class);
final AbstractPreferenceController mockController2 =
mock(AbstractPreferenceController.class);
mTestFragment.addPreferenceController(mockController1);
mTestFragment.addPreferenceController(mockController2);
when(mockController1.isAvailable()).thenReturn(true);
when(mockController2.isAvailable()).thenReturn(true);
mTestFragment.updatePreferenceStates();
verify(mockController1).getPreferenceKey();
verify(mockController2).getPreferenceKey();
}
@Test
public void tintTileIcon_hasMetadata_shouldReturnIconTintableMetadata() {
final Tile tile = new Tile();