summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorWu-cheng Li <wuchengli@google.com>2012-01-18 11:08:16 +0800
committerWu-cheng Li <wuchengli@google.com>2012-01-19 17:04:17 +0800
commit32108707f57e12a5ccb1ab023e83abf8e0086330 (patch)
treeb9e1fb8ee643f7ebdbd27a343e6b726f6d885184 /tests
parentc37a61cb34d5537cbfada6bfaf654081924093c1 (diff)
downloadCamera-32108707f57e12a5ccb1ab023e83abf8e0086330.tar.gz
Add test for restore default.
bug:5888633 Change-Id: Ib3db9b86d0da04d5aa4e5aae13eb2c466ba75aa8
Diffstat (limited to 'tests')
-rw-r--r--tests/src/com/android/camera/activity/CameraActivityTest.java41
1 files changed, 41 insertions, 0 deletions
diff --git a/tests/src/com/android/camera/activity/CameraActivityTest.java b/tests/src/com/android/camera/activity/CameraActivityTest.java
index 95ef6376..e5253f63 100644
--- a/tests/src/com/android/camera/activity/CameraActivityTest.java
+++ b/tests/src/com/android/camera/activity/CameraActivityTest.java
@@ -20,11 +20,15 @@ import com.android.camera.Camera;
import com.android.camera.CameraDevice;
import com.android.camera.CameraHolder;
import com.android.camera.IntentExtras;
+import com.android.camera.MockCamera;
+import com.android.camera.R;
import android.app.Instrumentation;
import android.hardware.Camera.CameraInfo;
import android.test.ActivityInstrumentationTestCase2;
import android.test.suitebuilder.annotation.LargeTest;
+import android.view.MotionEvent;
+import android.view.View;
public class CameraActivityTest extends ActivityInstrumentationTestCase2 <Camera> {
private static final String TAG = "CameraActivityTest";
@@ -46,6 +50,7 @@ public class CameraActivityTest extends ActivityInstrumentationTestCase2 <Camera
@Override
protected void tearDown() throws Exception {
+ super.tearDown();
CameraHolder.injectMockCamera(null, null);
}
@@ -57,4 +62,40 @@ public class CameraActivityTest extends ActivityInstrumentationTestCase2 <Camera
Instrumentation inst = getInstrumentation();
inst.waitForIdleSync();
}
+
+ @LargeTest
+ public void testRestoreDefault() throws Exception {
+ MockCamera[] cameras = new MockCamera[2];
+ cameras[0] = new MockCamera();
+ cameras[1] = new MockCamera();
+ CameraHolder.injectMockCamera(mCameraInfo, cameras);
+
+ getActivity();
+ getInstrumentation().waitForIdleSync();
+ performClick(R.id.second_level_indicator);
+ performClick(R.id.other_setting_indicator);
+ performClick(R.id.restore_default);
+ performClick(R.id.rotate_dialog_button1);
+ }
+
+ private void performClick(final int id) {
+ assertNotNull(getActivity().findViewById(id));
+ Instrumentation inst = getInstrumentation();
+ inst.runOnMainSync(new Runnable() {
+ @Override
+ public void run() {
+ View v = getActivity().findViewById(id);
+ float x = (v.getLeft() + v.getRight()) / 2;
+ float y = (v.getTop() + v.getBottom()) / 2;
+ MotionEvent down = MotionEvent.obtain(0, 0,
+ MotionEvent.ACTION_DOWN, x, y, 0, 0, 0, 0, 0, 0, 0);
+ MotionEvent up = MotionEvent.obtain(0, 0,
+ MotionEvent.ACTION_UP, x, y, 0, 0, 0, 0, 0, 0, 0);
+ View parent = (View) v.getParent();
+ parent.dispatchTouchEvent(down);
+ parent.dispatchTouchEvent(up);
+ }
+ });
+ inst.waitForIdleSync();
+ }
}