Merge "Fix UsageProgressBarPreference progress bug when zero total size" into sc-dev
This commit is contained in:
@@ -113,7 +113,14 @@ public class UsageProgressBarPreference extends Preference {
|
|||||||
|
|
||||||
/** Set percentage of the progress bar. */
|
/** Set percentage of the progress bar. */
|
||||||
public void setPercent(long usage, long total) {
|
public void setPercent(long usage, long total) {
|
||||||
if (total == 0L || usage > total) {
|
if (usage > total) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (total == 0L) {
|
||||||
|
if (mPercent != 0) {
|
||||||
|
mPercent = 0;
|
||||||
|
notifyChanged();
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
final int percent = (int) (usage / (double) total * 100);
|
final int percent = (int) (usage / (double) total * 100);
|
||||||
|
|||||||
@@ -124,6 +124,17 @@ public class UsageProgressBarPreferenceTest {
|
|||||||
assertThat(progressBar.getProgress()).isEqualTo((int) (31.0f / 80 * 100));
|
assertThat(progressBar.getProgress()).isEqualTo((int) (31.0f / 80 * 100));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void setPercent_totalSizeZero_getProgressZero() {
|
||||||
|
mUsageProgressBarPreference.setPercent(0 /* usage */, 0 /* total */);
|
||||||
|
|
||||||
|
mUsageProgressBarPreference.onBindViewHolder(mViewHolder);
|
||||||
|
|
||||||
|
final ProgressBar progressBar = (ProgressBar) mViewHolder
|
||||||
|
.findViewById(android.R.id.progress);
|
||||||
|
assertThat(progressBar.getProgress()).isEqualTo(0);
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void setCustomContent_setNullImageView_noChild() {
|
public void setCustomContent_setNullImageView_noChild() {
|
||||||
mUsageProgressBarPreference.setCustomContent(null /* imageView */);
|
mUsageProgressBarPreference.setCustomContent(null /* imageView */);
|
||||||
|
|||||||
Reference in New Issue
Block a user