pull/37/head
Mattia Iavarone 8 years ago
parent bd6d8cdaa5
commit 4fb19d7faa
  1. 18
      cameraview/src/androidTest/java/com/otaliastudios/cameraview/AspectRatioTest.java
  2. 1
      cameraview/src/androidTest/java/com/otaliastudios/cameraview/CameraCallbacksTest.java
  3. 19
      cameraview/src/androidTest/java/com/otaliastudios/cameraview/CameraOptions1Test.java
  4. 11
      cameraview/src/androidTest/java/com/otaliastudios/cameraview/CameraUtilsTest.java
  5. 63
      cameraview/src/androidTest/java/com/otaliastudios/cameraview/CameraViewTest.java
  6. 2
      cameraview/src/main/java/com/otaliastudios/cameraview/AspectRatio.java
  7. 11
      cameraview/src/test/java/com/otaliastudios/cameraview/SizeTest.java

@ -29,13 +29,31 @@ public class AspectRatioTest {
@Test
public void testEquals() {
AspectRatio ratio = AspectRatio.of(50, 10);
assertFalse(ratio.equals(null));
assertTrue(ratio.equals(ratio));
AspectRatio ratio1 = AspectRatio.of(5, 1);
assertTrue(ratio.equals(ratio1));
AspectRatio.sCache.clear();
AspectRatio ratio2 = AspectRatio.of(500, 100);
assertTrue(ratio.equals(ratio2));
Size size = new Size(500, 100);
assertTrue(ratio.matches(size));
}
@Test
public void testCompare() {
AspectRatio ratio1 = AspectRatio.of(10, 2);
AspectRatio ratio2 = AspectRatio.of(10, 10);
AspectRatio ratio3 = AspectRatio.of(2, 10);
assertTrue(ratio1.compareTo(ratio2) > 0);
assertTrue(ratio1.compareTo(ratio3) < 0);
assertTrue(ratio1.compareTo(ratio1) == 0);
assertNotEquals(ratio1.hashCode(), ratio2.hashCode());
}
@Test
public void testInverse() {
AspectRatio ratio = AspectRatio.of(50, 10);

@ -75,6 +75,7 @@ public class CameraCallbacksTest extends BaseTest {
}
};
camera.addCameraListener(listener);
camera.addCameraListener(new CameraListener() {}); // Add another so the class is covered.
callbacks = camera.mCameraCallbacks;
task = new Task<>();
task.listen();

@ -11,6 +11,7 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
@ -51,9 +52,27 @@ public class CameraOptions1Test {
assertEquals(o.getSupportedFacing().size(), supported.size());
for (Facing facing : s) {
assertTrue(supported.contains(m.<Integer>map(facing)));
assertTrue(o.supports(facing));
}
}
@Test
public void testGestureActions() {
Camera.Parameters params = mock(Camera.Parameters.class);
when(params.getSupportedFocusModes()).thenReturn(Collections.<String>emptyList());
when(params.isZoomSupported()).thenReturn(true);
when(params.getMaxExposureCompensation()).thenReturn(0);
when(params.getMinExposureCompensation()).thenReturn(0);
CameraOptions o = new CameraOptions(params);
assertFalse(o.supports(GestureAction.FOCUS));
assertFalse(o.supports(GestureAction.FOCUS_WITH_MARKER));
assertTrue(o.supports(GestureAction.CAPTURE));
assertTrue(o.supports(GestureAction.NONE));
assertTrue(o.supports(GestureAction.ZOOM));
assertFalse(o.supports(GestureAction.EXPOSURE_CORRECTION));
}
@Test
public void testWhiteBalance() {
Camera.Parameters params = mock(Camera.Parameters.class);

@ -47,7 +47,16 @@ public class CameraUtilsTest {
source.compress(Bitmap.CompressFormat.PNG, 100, os);
// No orientation.
Bitmap other = CameraUtils.decodeBitmap(os.toByteArray());
final Task<Bitmap> decode = new Task<>();
decode.listen();
CameraUtils.decodeBitmap(os.toByteArray(), new CameraUtils.BitmapCallback() {
@Override
public void onBitmapReady(Bitmap bitmap) {
decode.end(bitmap);
}
});
Bitmap other = decode.await(800);
assertNotNull(other);
assertEquals(100, w);
assertEquals(200, h);
assertEquals(color, other.getPixel(0, 0));

@ -267,6 +267,16 @@ public class CameraViewTest extends BaseTest {
mockController.setMockPreviewSize(size);
}
@Test
public void testMeasure_early() {
mockController.setMockPreviewSize(null);
cameraView.measure(
makeMeasureSpec(500, EXACTLY),
makeMeasureSpec(500, EXACTLY));
assertEquals(cameraView.getMeasuredWidth(), 500);
assertEquals(cameraView.getMeasuredHeight(), 500);
}
@Test
public void testMeasure_matchParentBoth() {
mockPreviewSize();
@ -410,6 +420,34 @@ public class CameraViewTest extends BaseTest {
//endregion
//region test autofocus
@Test(expected = IllegalArgumentException.class)
public void testStartAutoFocus_illegal() {
cameraView.startAutoFocus(-1, -1);
}
@Test(expected = IllegalArgumentException.class)
public void testStartAutoFocus_illegal2() {
cameraView.setLeft(0);
cameraView.setRight(100);
cameraView.setTop(0);
cameraView.setBottom(100);
cameraView.startAutoFocus(200, 200);
}
@Test
public void testStartAutoFocus() {
cameraView.setLeft(0);
cameraView.setRight(100);
cameraView.setTop(0);
cameraView.setBottom(100);
cameraView.startAutoFocus(50, 50);
assertTrue(mockController.mFocusStarted);
}
//endregion
//region test setParameters
@Test
@ -428,6 +466,11 @@ public class CameraViewTest extends BaseTest {
assertEquals(cameraView.getJpegQuality(), 100);
}
@Test(expected = IllegalArgumentException.class)
public void testSetJpegQuality_illegal() {
cameraView.setJpegQuality(-10);
}
@Test
public void testSetFlash() {
cameraView.setFlash(Flash.TORCH);
@ -436,6 +479,17 @@ public class CameraViewTest extends BaseTest {
assertEquals(cameraView.getFlash(), Flash.OFF);
}
@Test
public void testToggleFlash() {
cameraView.setFlash(Flash.OFF);
cameraView.toggleFlash();
assertEquals(cameraView.getFlash(), Flash.ON);
cameraView.toggleFlash();
assertEquals(cameraView.getFlash(), Flash.AUTO);
cameraView.toggleFlash();
assertEquals(cameraView.getFlash(), Flash.OFF);
}
@Test
public void testSetFacing() {
cameraView.setFacing(Facing.FRONT);
@ -444,6 +498,15 @@ public class CameraViewTest extends BaseTest {
assertEquals(cameraView.getFacing(), Facing.BACK);
}
@Test
public void testToggleFacing() {
cameraView.setFacing(Facing.FRONT);
cameraView.toggleFacing();
assertEquals(cameraView.getFacing(), Facing.BACK);
cameraView.toggleFacing();
assertEquals(cameraView.getFacing(), Facing.FRONT);
}
@Test
public void testSetGrid() {
cameraView.setGrid(Grid.DRAW_3X3);

@ -7,7 +7,7 @@ import android.util.SparseArray;
public class AspectRatio implements Comparable<AspectRatio>, Parcelable {
private final static SparseArray<SparseArray<AspectRatio>> sCache = new SparseArray<>(16);
final static SparseArray<SparseArray<AspectRatio>> sCache = new SparseArray<>(16);
private final int mX;
private final int mY;

@ -19,12 +19,23 @@ public class SizeTest {
@Test
public void testEquals() {
Size s1 = new Size(10, 20);
assertTrue(s1.equals(s1));
assertFalse(s1.equals(null));
assertFalse(s1.equals(""));
Size s2 = new Size(10, 0);
Size s3 = new Size(10, 20);
assertTrue(s1.equals(s3));
assertFalse(s1.equals(s2));
}
@Test
public void testHashCode() {
Size s1 = new Size(10, 20);
Size s2 = new Size(10, 0);
assertNotEquals(s1.hashCode(), s2.hashCode());
}
@Test
public void testCompare() {
Size s1 = new Size(10, 20);

Loading…
Cancel
Save