fix "rough scaling" bitmaps

Fixes #3347
Closes #3408
// FREEBIE
This commit is contained in:
Jake McGinty
2015-06-11 22:32:30 -07:00
committed by Moxie Marlinspike
parent 5116c61f43
commit f72cd5b0ff
2 changed files with 51 additions and 9 deletions

View File

@@ -0,0 +1,34 @@
package org.thoughtcrime.securesms.util;
import org.thoughtcrime.securesms.TextSecureTestCase;
public class BitmapUtilTest extends TextSecureTestCase {
public void testScaleFactorNormal() {
assertEquals(1, BitmapUtil.getScaleFactor(1000, 1000, 9000, 9000, false));
assertEquals(1, BitmapUtil.getScaleFactor(1000, 1000, 750, 750, false));
assertEquals(2, BitmapUtil.getScaleFactor(1000, 1000, 500, 500, false));
assertEquals(2, BitmapUtil.getScaleFactor(1000, 1000, 499, 499, false));
assertEquals(4, BitmapUtil.getScaleFactor(1000, 1000, 250, 250, false));
assertEquals(4, BitmapUtil.getScaleFactor(1000, 1000, 249, 249, false));
assertEquals(1, BitmapUtil.getScaleFactor(1000, 500, 750, 750, false));
assertEquals(1, BitmapUtil.getScaleFactor(2000, 1000, 501, 501, false));
assertEquals(2, BitmapUtil.getScaleFactor(2000, 1000, 500, 500, false));
assertEquals(2, BitmapUtil.getScaleFactor(1000, 2000, 499, 499, false));
}
public void testScaleFactorConstrained() {
assertEquals(1, BitmapUtil.getScaleFactor(1000, 1000, 9000, 9000, true));
assertEquals(2, BitmapUtil.getScaleFactor(1000, 1000, 750, 750, true));
assertEquals(2, BitmapUtil.getScaleFactor(1000, 1000, 500, 500, true));
assertEquals(4, BitmapUtil.getScaleFactor(1000, 1000, 499, 499, true));
assertEquals(4, BitmapUtil.getScaleFactor(1000, 1000, 250, 250, true));
assertEquals(8, BitmapUtil.getScaleFactor(1000, 1000, 249, 249, true));
assertEquals(2, BitmapUtil.getScaleFactor(1000, 500, 750, 750, true));
assertEquals(4, BitmapUtil.getScaleFactor(2000, 1000, 500, 500, true));
assertEquals(8, BitmapUtil.getScaleFactor(1000, 2000, 499, 499, true));
}
}