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

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

Merge "Hide the bar chart details text when no string is provided."

parents 8c9b1803 919f6ea4
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -165,9 +165,13 @@ public class BarChartPreference extends Preference {

    private void bindChartDetailsView(PreferenceViewHolder holder) {
        final Button detailsView = (Button) holder.findViewById(R.id.bar_chart_details);
        if (mDetailsId == 0) {
            detailsView.setVisibility(View.GONE);
        } else {
            detailsView.setText(mDetailsId);
            detailsView.setOnClickListener(mDetailsOnClickListener);
        }
    }

    private void updateBarChart(PreferenceViewHolder holder) {
        for (int index = 0; index < MAXIMUM_BAR_VIEWS; index++) {
+15 −10
Original line number Diff line number Diff line
@@ -41,6 +41,7 @@ public class BarChartPreferenceTest {
    private BarView mBarView2;
    private BarView mBarView3;
    private BarView mBarView4;
    private TextView mDetailsView;
    private PreferenceViewHolder mHolder;
    private BarChartPreference mPreference;

@@ -51,14 +52,13 @@ public class BarChartPreferenceTest {
        mHolder = PreferenceViewHolder.createInstanceForTests(mBarChartView);
        mPreference = new BarChartPreference(mContext, null /* attrs */);
        mPreference.setBarChartTitle(R.string.debug_app);
        mPreference.setBarChartDetails(R.string.debug_app);


        mIcon = mContext.getDrawable(R.drawable.ic_menu);
        mBarView1 = (BarView) mBarChartView.findViewById(R.id.bar_view1);
        mBarView2 = (BarView) mBarChartView.findViewById(R.id.bar_view2);
        mBarView3 = (BarView) mBarChartView.findViewById(R.id.bar_view3);
        mBarView4 = (BarView) mBarChartView.findViewById(R.id.bar_view4);
        mDetailsView = (TextView) mBarChartView.findViewById(R.id.bar_chart_details);
    }

    @Test
@@ -73,26 +73,31 @@ public class BarChartPreferenceTest {
    }

    @Test
    public void setBarChartDetailsRes_setDetailsRes_showInBarChartDetails() {
        final TextView detailsView = (TextView) mBarChartView.findViewById(R.id.bar_chart_details);
    public void onBindViewHolder_notSetDetailsRes_barChartDetailsViewIsGone() {
        // We don't call BarChartPreference#setBarChartDetails
        mPreference.onBindViewHolder(mHolder);

        assertThat(mDetailsView.getVisibility()).isEqualTo(View.GONE);
    }

    @Test
    public void setBarChartDetailsRes_setDetailsRes_showInBarChartDetails() {
        mPreference.setBarChartDetails(R.string.debug_app);
        mPreference.onBindViewHolder(mHolder);

        assertThat(detailsView.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(detailsView.getText()).isEqualTo(mContext.getText(R.string.debug_app));
        assertThat(mDetailsView.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mDetailsView.getText()).isEqualTo(mContext.getText(R.string.debug_app));
    }

    @Test
    public void setBarChartDetailsClickListener_setClickListener_detailsViewAttachClickListener() {
        final TextView detailsView = (TextView) mBarChartView.findViewById(R.id.bar_chart_details);

        mPreference.setBarChartDetails(R.string.debug_app);
        mPreference.setBarChartDetailsClickListener(v -> {
        });
        mPreference.onBindViewHolder(mHolder);

        assertThat(detailsView.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(detailsView.hasOnClickListeners()).isTrue();
        assertThat(mDetailsView.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mDetailsView.hasOnClickListeners()).isTrue();
    }

    @Test