Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c29aec4b authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Prioritize dynamic summaries" into pi-dev

parents 4ef7b5f9 8db4358f
Loading
Loading
Loading
Loading
+7 −6
Original line number Diff line number Diff line
@@ -253,11 +253,7 @@ public class SliceBuilderUtils {
    @VisibleForTesting
    static CharSequence getSubtitleText(Context context, AbstractPreferenceController controller,
            SliceData sliceData) {
        CharSequence summaryText = sliceData.getSummary();
        if (isValidSummary(context, summaryText)) {
            return summaryText;
        }

        CharSequence summaryText;
        if (controller != null) {
            summaryText = controller.getSummary();

@@ -266,7 +262,12 @@ public class SliceBuilderUtils {
            }
        }

        return sliceData.getScreenTitle();
        summaryText = sliceData.getSummary();
        if (isValidSummary(context, summaryText)) {
            return summaryText;
        }

        return "";
    }

    private static boolean isValidSummary(Context context, CharSequence summary) {
+18 −7
Original line number Diff line number Diff line
@@ -188,26 +188,25 @@ public class SliceBuilderUtilsTest {
    }

    @Test
    public void testDynamicSummary_returnsSliceScreenTitle() {
    public void testDynamicSummary_returnsSliceEmptyString() {
        final SliceData data = getDummyData((String) null);
        final FakePreferenceController controller = new FakePreferenceController(mContext, KEY);

        final CharSequence summary = SliceBuilderUtils.getSubtitleText(mContext, controller, data);

        assertThat(summary).isEqualTo(data.getScreenTitle());
        assertThat(summary).isEqualTo("");
    }

    @Test
    public void testDynamicSummary_placeHolderString_returnsScreenTitle() {
    public void testDynamicSummary_placeHolderString_returnsEmptyString() {
        final SliceData data = getDummyData(mContext.getString(R.string.summary_placeholder));
        final FakePreferenceController controller = new FakePreferenceController(mContext, KEY);
        final CharSequence summary = SliceBuilderUtils.getSubtitleText(mContext, controller, data);

        assertThat(summary).isEqualTo(data.getScreenTitle());
        assertThat(summary).isEqualTo("");
    }

    @Test
    public void testDynamicSummary_sliceDataAndFragmentPlaceholder_returnsSliceScreenTitle() {
    public void testDynamicSummary_sliceDataAndFragmentPlaceholder_returnsSliceEmptyString() {
        final String summaryPlaceholder = mContext.getString(R.string.summary_placeholder);
        final SliceData data = getDummyData(summaryPlaceholder);
        final FakePreferenceController controller = spy(
@@ -216,7 +215,19 @@ public class SliceBuilderUtilsTest {

        CharSequence summary = SliceBuilderUtils.getSubtitleText(mContext, controller, data);

        assertThat(summary).isEqualTo(data.getScreenTitle());
        assertThat(summary).isEqualTo("");
    }

    @Test
    public void summaryText_bothDynamicAndStaticSummary_dynamicSummaryReturned() {
        SliceData data = getDummyData("bad_summary");
        FakePreferenceController controller = spy(new FakePreferenceController(mContext, KEY));
        String controllerSummary = "new_Summary";
        doReturn(controllerSummary).when(controller).getSummary();

        CharSequence summary = SliceBuilderUtils.getSubtitleText(mContext, controller, data);

        assertThat(summary).isEqualTo(controllerSummary);
    }

    @Test