Don't upscale photos if they are too small
Change-Id: I4b0f6d7eaef47bc18fc94ec58e45b07066b33d35
diff --git a/tests/src/com/android/providers/contacts/PhotoStoreTest.java b/tests/src/com/android/providers/contacts/PhotoStoreTest.java
index 0186741..5f9809b 100644
--- a/tests/src/com/android/providers/contacts/PhotoStoreTest.java
+++ b/tests/src/com/android/providers/contacts/PhotoStoreTest.java
@@ -72,16 +72,21 @@
assertEquals(0, mPhotoStore.insert(new PhotoProcessor(photo, 256, 96)));
}
+ public void testStore200Photo() throws IOException {
+ // As 200 is below the full photo size, we don't want to see it upscaled
+ runStorageTestForResource(R.drawable.earth_200, 200);
+ }
+
public void testStoreMediumPhoto() throws IOException {
- runStorageTestForResource(R.drawable.earth_normal);
+ runStorageTestForResource(R.drawable.earth_normal, 256);
}
public void testStoreLargePhoto() throws IOException {
- runStorageTestForResource(R.drawable.earth_large);
+ runStorageTestForResource(R.drawable.earth_large, 256);
}
public void testStoreHugePhoto() throws IOException {
- runStorageTestForResource(R.drawable.earth_huge);
+ runStorageTestForResource(R.drawable.earth_huge, 256);
}
/**
@@ -99,7 +104,7 @@
* the size of the photo.
* @param resourceId The resource ID of the photo file to test.
*/
- public void runStorageTestForResource(int resourceId) throws IOException {
+ public void runStorageTestForResource(int resourceId, int expectedSize) throws IOException {
byte[] photo = loadPhotoFromResource(resourceId, PhotoSize.ORIGINAL);
long photoFileId = mPhotoStore.insert(new PhotoProcessor(photo, 256, 96));
assertTrue(photoFileId != 0);
@@ -117,8 +122,8 @@
try {
assertEquals(1, c.getCount());
c.moveToFirst();
- assertEquals(256, c.getInt(0));
- assertEquals(256, c.getInt(1));
+ assertEquals(expectedSize, c.getInt(0));
+ assertEquals(expectedSize, c.getInt(1));
assertEquals(expectedStoredVersion.length, c.getInt(2));
} finally {
c.close();