1 /*
2  * Copyright 2016 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package android.hardware.camera2.cts;
18 
19 import android.hardware.camera2.cts.testcases.Camera2SurfaceViewTestCase;
20 import android.util.Log;
21 import android.util.Size;
22 import android.view.Surface;
23 
24 import org.junit.Test;
25 
26 import static org.junit.Assert.assertTrue;
27 
28 /**
29  * <p>Basic test for CameraManager class.</p>
30  */
31 public class NativeStillCaptureTest extends Camera2SurfaceViewTestCase {
32     private static final String TAG = "NativeStillCaptureTest";
33     private static final boolean VERBOSE = Log.isLoggable(TAG, Log.VERBOSE);
34 
35     /** Load jni on initialization */
36     static {
37         Log.i("NativeStillCaptureTest", "before loadlibrary");
38         System.loadLibrary("ctscamera2_jni");
39         Log.i("NativeStillCaptureTest", "after loadlibrary");
40     }
41 
42     @Test
testStillCapture()43     public void testStillCapture() {
44         // Init preview surface to a guaranteed working size
45         updatePreviewSurface(new Size(640, 480));
46         assertTrue("testStillCapture fail, see log for details",
47                 testStillCaptureNative(mDebugFileNameBase, mPreviewSurface));
48     }
49 
testStillCaptureNative( String filePath, Surface previewSurface)50     private static native boolean testStillCaptureNative(
51             String filePath, Surface previewSurface);
52 }
53