• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2021 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #include "utest_camera_device_impl.h"
17 
18 using namespace OHOS::HDI::Camera::V1_0;
19 
SetUpTestCase(void)20 void CameraDeviceImplTest::SetUpTestCase(void)
21 {
22 }
23 
TearDownTestCase(void)24 void CameraDeviceImplTest::TearDownTestCase(void)
25 {
26     std::cout << "Camera::CameraDeviceImpl TearDownTestCase" << std::endl;
27 }
28 
SetUp(void)29 void CameraDeviceImplTest::SetUp(void)
30 {
31     bool ret = InitCameraHost();
32     ASSERT_EQ(true, ret);
33 
34     ret = GetCameraIds();
35     ASSERT_EQ(true, ret);
36 
37     ret = GetCameraDevice();
38     ASSERT_EQ(true, ret);
39 }
40 
TearDown(void)41 void CameraDeviceImplTest::TearDown(void)
42 {
43 }
44 
45 HWTEST_F(CameraDeviceImplTest, UTestGetStreamOperator, TestSize.Level0)
46 {
47     bool ret = GetStreamOperator();
48     ASSERT_EQ(true, ret);
49 }
50 
51 HWTEST_F(CameraDeviceImplTest, UTestUpdateSettings, TestSize.Level0)
52 {
53     std::vector<std::string> cameraIds;
54     CamRetCode ret = (CamRetCode)cameraHost_->GetCameraIds(cameraIds);
55     ASSERT_EQ(HDI::Camera::V1_0::NO_ERROR, ret);
56 
57     std::vector<uint8_t> ability;
58     std::string cameraId = cameraIds.front();
59     ret = (CamRetCode)cameraHost_->GetCameraAbility(cameraId, ability);
60     ASSERT_EQ(HDI::Camera::V1_0::NO_ERROR, ret);
61 
62     ret = (CamRetCode)cameraDevice_->UpdateSettings(ability);
63     ASSERT_EQ(HDI::Camera::V1_0::NO_ERROR, ret);
64     std::cout << "UTestUpdateSettings ret = " << ret << std::endl;
65 }
66 
67 HWTEST_F(CameraDeviceImplTest, UTestSetResultMode, TestSize.Level0)
68 {
69     ResultCallbackMode mode = PER_FRAME;
70     CamRetCode rc = (CamRetCode)cameraDevice_->SetResultMode(mode);
71     ASSERT_EQ(HDI::Camera::V1_0::NO_ERROR, rc);
72 }
73 
74 HWTEST_F(CameraDeviceImplTest, UTestGetEnabledResults, TestSize.Level0)
75 {
76     std::vector<int32_t> results;
77     CamRetCode rc = (CamRetCode)cameraDevice_->GetEnabledResults(results);
78     ASSERT_EQ(HDI::Camera::V1_0::NO_ERROR, rc);
79 
80     for (const auto &type : results) {
81         std::cout << "MetaType = " << type << std::endl;
82     }
83 }
84 
85 HWTEST_F(CameraDeviceImplTest, UTestEnableResult, TestSize.Level0)
86 {
87     std::vector<int32_t> results;
88     results.push_back(OHOS_SENSOR_EXPOSURE_TIME);
89     results.push_back(OHOS_SENSOR_COLOR_CORRECTION_GAINS);
90     CamRetCode rc = (CamRetCode)cameraDevice_->EnableResult(results);
91     ASSERT_EQ(HDI::Camera::V1_0::NO_ERROR, rc);
92 }
93 
94 HWTEST_F(CameraDeviceImplTest, UTestDisableResult, TestSize.Level0)
95 {
96     std::vector<int32_t> results;
97     results.push_back(OHOS_SENSOR_EXPOSURE_TIME);
98     results.push_back(OHOS_SENSOR_COLOR_CORRECTION_GAINS);
99     CamRetCode rc = (CamRetCode)cameraDevice_->EnableResult(results);
100     ASSERT_EQ(HDI::Camera::V1_0::NO_ERROR, rc);
101     std::vector<int32_t> disable_tag;
102     rc = (CamRetCode)cameraDevice_->GetEnabledResults(disable_tag);
103     ASSERT_EQ(HDI::Camera::V1_0::NO_ERROR, rc);
104 
105     rc = (CamRetCode)cameraDevice_->DisableResult(disable_tag);
106     ASSERT_EQ(HDI::Camera::V1_0::NO_ERROR, rc);
107 }
108 
109 HWTEST_F(CameraDeviceImplTest, UTestClose, TestSize.Level0)
110 {
111     if (cameraDevice_ != nullptr) {
112         cameraDevice_->Close();
113         cameraDevice_ = nullptr;
114     }
115 }
116