• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1## -*- coding: utf-8 -*-
2/*
3 * Copyright (C) 2013 The Android Open Source Project
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 *      http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18/**
19 * ! Do not edit this file directly !
20 *
21 * Generated automatically from system/media/camera/docs/CameraCharacteristicsTest.mako.
22 * This file contains only the auto-generated CameraCharacteristics CTS tests; it does
23 * not contain any additional manual tests, which would be in a separate file.
24 */
25
26package android.hardware.camera2.cts;
27
28import android.content.Context;
29import android.hardware.camera2.CameraCharacteristics;
30import android.hardware.camera2.CameraManager;
31import android.hardware.camera2.CameraMetadata.Key;
32import android.test.AndroidTestCase;
33import android.util.Log;
34
35import java.util.List;
36
37/**
38 * Auto-generated CTS test for CameraCharacteristics fields.
39 */
40public class CameraCharacteristicsTest extends AndroidTestCase {
41    private CameraManager mCameraManager;
42    private static final String TAG = "CameraCharacteristicsTest";
43
44    @Override
45    public void setContext(Context context) {
46        super.setContext(context);
47        mCameraManager = (CameraManager)context.getSystemService(Context.CAMERA_SERVICE);
48        assertNotNull("Can't connect to camera manager", mCameraManager);
49    }
50
51    @Override
52    protected void setUp() throws Exception {
53        super.setUp();
54    }
55
56    @Override
57    protected void tearDown() throws Exception {
58        super.tearDown();
59    }
60    % for sec in find_all_sections(metadata):
61      % for entry in find_unique_entries(sec):
62        % if entry.kind == 'static' and entry.visibility == "public":
63
64    public void testCameraCharacteristics${pascal_case(entry.name)}() throws Exception {
65        String[] ids = mCameraManager.getCameraIdList();
66        for (int i = 0; i < ids.length; i++) {
67            CameraCharacteristics props = mCameraManager.getCameraCharacteristics(ids[i]);
68            assertNotNull(String.format("Can't get camera characteristics from: ID %s", ids[i]),
69                                        props);
70
71          % if entry.applied_optional:
72            Integer hwLevel = props.get(CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL);
73            assertNotNull("No hardware level reported! android.info.supportedHardwareLevel",
74                    hwLevel);
75            if (hwLevel == CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL_FULL)
76          % endif
77            {
78
79                assertNotNull("Invalid property: ${entry.name}",
80                        props.get(CameraCharacteristics.${jkey_identifier(entry.name)}));
81
82                List<Key<?>> allKeys = props.getKeys();
83                assertNotNull(String.format("Can't get camera characteristics keys from: ID %s",
84                        ids[i], props));
85                assertTrue("Key not in keys list: ${entry.name}", allKeys.contains(
86                        CameraCharacteristics.${jkey_identifier(entry.name)}));
87
88            }
89
90        }
91    }
92        % endif
93      % endfor
94    % endfor
95}
96
97