Merge "Architecture review of Copyable Slice"

This commit is contained in:
Stanley Wang
2018-11-06 05:00:05 +00:00
committed by Android (Google) Code Review
8 changed files with 205 additions and 2 deletions

View File

@@ -41,6 +41,7 @@ import androidx.slice.widget.SliceLiveData;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.testutils.FakeCopyableController;
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.FakeSliderController;
import com.android.settings.testutils.FakeToggleController;
@@ -67,6 +68,7 @@ public class SliceBuilderUtilsTest {
private final Uri URI = Uri.parse("content://com.android.settings.slices/test");
private final Class TOGGLE_CONTROLLER = FakeToggleController.class;
private final Class SLIDER_CONTROLLER = FakeSliderController.class;
private final Class COPYABLE_CONTROLLER = FakeCopyableController.class;
private final Class CONTEXT_CONTROLLER = FakeContextOnlyPreferenceController.class;
private final boolean IS_DYNAMIC_SUMMARY_ALLOWED = false;
@@ -116,7 +118,6 @@ public class SliceBuilderUtilsTest {
public void buildSliderSlice_returnsMatchingSlice() {
final SliceData data = getDummyData(SLIDER_CONTROLLER, SliceData.SliceType.SLIDER);
final Slice slice = SliceBuilderUtils.buildSlice(mContext, data);
verify(mFeatureFactory.metricsFeatureProvider)
.action(eq(mContext), eq(MetricsEvent.ACTION_SETTINGS_SLICE_REQUESTED),
@@ -130,6 +131,23 @@ public class SliceBuilderUtilsTest {
SliceTester.testSettingsSliderSlice(mContext, slice, data);
}
@Test
public void buildCopyableSlice_returnsMatchingSlice() {
final SliceData dummyData = getDummyData(COPYABLE_CONTROLLER, -1);
final Slice slice = SliceBuilderUtils.buildSlice(mContext, dummyData);
verify(mFeatureFactory.metricsFeatureProvider)
.action(eq(mContext), eq(MetricsEvent.ACTION_SETTINGS_SLICE_REQUESTED),
mLoggingArgumentCatpor.capture());
final Pair<Integer, Object> capturedLoggingPair = mLoggingArgumentCatpor.getValue();
assertThat(capturedLoggingPair.first)
.isEqualTo(MetricsEvent.FIELD_SETTINGS_PREFERENCE_CHANGE_NAME);
assertThat(capturedLoggingPair.second)
.isEqualTo(dummyData.getKey());
SliceTester.testSettingsCopyableSlice(mContext, slice, dummyData);
}
@Test
public void testUriBuilder_oemAuthority_intentPath_returnsValidSliceUri() {
final Uri expectedUri = new Uri.Builder()