use of org.robolectric.shadows.ShadowMatrix in project picasso by square.
the class BitmapHunterTest method centerInsideTallTooSmall.
@Test
public void centerInsideTallTooSmall() {
Bitmap source = Bitmap.createBitmap(20, 10, ARGB_8888);
Request data = new Request.Builder(URI_1).resize(50, 50).centerInside().build();
Bitmap result = transformResult(data, source, 0);
ShadowBitmap shadowBitmap = shadowOf(result);
assertThat(shadowBitmap.getCreatedFromBitmap()).isSameAs(source);
Matrix matrix = shadowBitmap.getCreatedFromMatrix();
ShadowMatrix shadowMatrix = shadowOf(matrix);
assertThat(shadowMatrix.getPreOperations()).containsOnly("scale 2.5 2.5");
}
use of org.robolectric.shadows.ShadowMatrix in project picasso by square.
the class BitmapHunterTest method exifRotationWithManualRotation.
@Test
public void exifRotationWithManualRotation() {
Bitmap source = Bitmap.createBitmap(10, 10, ARGB_8888);
Request data = new Request.Builder(URI_1).rotate(-45).build();
Bitmap result = transformResult(data, source, ORIENTATION_ROTATE_90);
ShadowBitmap shadowBitmap = shadowOf(result);
assertThat(shadowBitmap.getCreatedFromBitmap()).isSameAs(source);
Matrix matrix = shadowBitmap.getCreatedFromMatrix();
ShadowMatrix shadowMatrix = shadowOf(matrix);
assertThat(shadowMatrix.getPreOperations()).containsOnly("rotate 90.0");
assertThat(shadowMatrix.getSetOperations()).contains(entry("rotate", "-45.0"));
}
use of org.robolectric.shadows.ShadowMatrix in project picasso by square.
the class BitmapHunterTest method centerCropResultMatchesTargetSizeWhileDesiredWidthIs0.
@Test
public void centerCropResultMatchesTargetSizeWhileDesiredWidthIs0() {
Request request = new Request.Builder(URI_1).resize(0, 642).centerCrop().build();
Bitmap source = Bitmap.createBitmap(640, 640, ARGB_8888);
Bitmap result = transformResult(request, source, 0);
ShadowBitmap shadowBitmap = shadowOf(result);
Matrix matrix = shadowBitmap.getCreatedFromMatrix();
ShadowMatrix shadowMatrix = shadowOf(matrix);
String scalePreOperation = shadowMatrix.getPreOperations().get(0);
assertThat(scalePreOperation).startsWith("scale ");
float scaleX = Float.valueOf(scalePreOperation.split(" ")[1]);
float scaleY = Float.valueOf(scalePreOperation.split(" ")[2]);
int transformedWidth = Math.round(result.getWidth() * scaleX);
int transformedHeight = Math.round(result.getHeight() * scaleY);
assertThat(transformedWidth).isEqualTo(642);
assertThat(transformedHeight).isEqualTo(642);
}
use of org.robolectric.shadows.ShadowMatrix in project picasso by square.
the class BitmapHunterTest method exifTranspose.
@Test
public void exifTranspose() {
Request data = new Request.Builder(URI_1).rotate(-45).build();
Bitmap source = Bitmap.createBitmap(10, 10, ARGB_8888);
Bitmap result = transformResult(data, source, ORIENTATION_TRANSPOSE);
ShadowBitmap shadowBitmap = shadowOf(result);
assertThat(shadowBitmap.getCreatedFromBitmap()).isSameAs(source);
Matrix matrix = shadowBitmap.getCreatedFromMatrix();
ShadowMatrix shadowMatrix = shadowOf(matrix);
assertThat(shadowMatrix.getPostOperations()).containsOnly("scale -1.0 1.0");
assertThat(shadowMatrix.getPreOperations()).containsOnly("rotate 90.0");
}
use of org.robolectric.shadows.ShadowMatrix in project picasso by square.
the class BitmapHunterTest method centerInsideWideTooLarge.
@Test
public void centerInsideWideTooLarge() {
Bitmap source = Bitmap.createBitmap(50, 100, ARGB_8888);
Request data = new Request.Builder(URI_1).resize(50, 50).centerInside().build();
Bitmap result = transformResult(data, source, 0);
ShadowBitmap shadowBitmap = shadowOf(result);
assertThat(shadowBitmap.getCreatedFromBitmap()).isSameAs(source);
Matrix matrix = shadowBitmap.getCreatedFromMatrix();
ShadowMatrix shadowMatrix = shadowOf(matrix);
assertThat(shadowMatrix.getPreOperations()).containsOnly("scale 0.5 0.5");
}
Aggregations