Merge "Fix randomly showing anomaly icon"

This commit is contained in:
TreeHugger Robot
2017-05-05 03:13:56 +00:00
committed by Android (Google) Code Review
2 changed files with 14 additions and 2 deletions

View File

@@ -111,8 +111,9 @@ public class PowerGaugePreference extends TintablePreference {
if (mShowAnomalyIcon) { if (mShowAnomalyIcon) {
subtitle.setCompoundDrawablesRelativeWithIntrinsicBounds(R.drawable.ic_warning_24dp, 0, subtitle.setCompoundDrawablesRelativeWithIntrinsicBounds(R.drawable.ic_warning_24dp, 0,
0, 0); 0, 0);
} else {
subtitle.setCompoundDrawablesRelativeWithIntrinsicBounds(0, 0, 0, 0);
} }
((TextView) view.findViewById(R.id.widget_summary)).setText(mProgress);
if (mContentDescription != null) { if (mContentDescription != null) {
final TextView titleView = (TextView) view.findViewById(android.R.id.title); final TextView titleView = (TextView) view.findViewById(android.R.id.title);
titleView.setContentDescription(mContentDescription); titleView.setContentDescription(mContentDescription);

View File

@@ -82,7 +82,7 @@ public class PowerGaugePreferenceTest {
} }
@Test @Test
public void testOnBindViewHolder_bindAnomalyIcon() { public void testOnBindViewHolder_showAnomaly_bindAnomalyIcon() {
mPowerGaugePreference.shouldShowAnomalyIcon(true); mPowerGaugePreference.shouldShowAnomalyIcon(true);
mPowerGaugePreference.onBindViewHolder(mPreferenceViewHolder); mPowerGaugePreference.onBindViewHolder(mPreferenceViewHolder);
@@ -92,6 +92,17 @@ public class PowerGaugePreferenceTest {
assertThat(drawables[0]).isInstanceOf(VectorDrawable.class); assertThat(drawables[0]).isInstanceOf(VectorDrawable.class);
} }
@Test
public void testOnBindViewHolder_notShowAnomaly_bindAnomalyIcon() {
mPowerGaugePreference.shouldShowAnomalyIcon(false);
mPowerGaugePreference.onBindViewHolder(mPreferenceViewHolder);
final Drawable[] drawables = ((TextView) mPreferenceViewHolder.findViewById(
R.id.widget_summary)).getCompoundDrawablesRelative();
assertThat(drawables[0]).isNull();
}
@Test @Test
public void testOnBindViewHolder_bindContentDescription() { public void testOnBindViewHolder_bindContentDescription() {
mPowerGaugePreference.setContentDescription(CONTENT_DESCRIPTION); mPowerGaugePreference.setContentDescription(CONTENT_DESCRIPTION);