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
SetUpTestCase(void)18 void CameraDeviceImplTest::SetUpTestCase(void)
19 {
20 }
21
TearDownTestCase(void)22 void CameraDeviceImplTest::TearDownTestCase(void)
23 {
24 std::cout << "Camera::CameraDeviceImpl TearDownTestCase" << std::endl;
25 }
26
SetUp(void)27 void CameraDeviceImplTest::SetUp(void)
28 {
29 bool ret = InitCameraHost();
30 if (!ret) {
31 std::cout << "CameraDeviceImplTest init camerahost failed" << std::endl;
32 return;
33 }
34
35 ret = GetCameraIds();
36 if (!ret) {
37 std::cout << "CameraDeviceImplTest init GetCameraIds failed" << std::endl;
38 return;
39 }
40
41 ret = GetCameraDevice();
42 if (!ret) {
43 std::cout << "CameraDeviceImplTest init GetCameraDevice failed" << std::endl;
44 return;
45 }
46 }
47
TearDown(void)48 void CameraDeviceImplTest::TearDown(void)
49 {
50 }
51
52 HWTEST_F(CameraDeviceImplTest, UTestGetStreamOperator, TestSize.Level0)
53 {
54 EXPECT_EQ(false, cameraHost_ == nullptr);
55 EXPECT_EQ(false, cameraDevice_ == nullptr);
56
57 bool ret = GetStreamOperator();
58 EXPECT_EQ(true, ret);
59 }
60
61 HWTEST_F(CameraDeviceImplTest, UTestUpdateSettings, TestSize.Level0)
62 {
63 EXPECT_EQ(false, cameraHost_ == nullptr);
64 EXPECT_EQ(false, cameraDevice_ == nullptr);
65
66 std::vector<std::string> cameraIds;
67 Camera::CamRetCode ret = cameraHost_->GetCameraIds(cameraIds);
68 EXPECT_EQ(true, ret == OHOS::Camera::NO_ERROR);
69
70 std::shared_ptr<CameraAbility> ability = nullptr;
71 std::string cameraId = cameraIds.front();
72 ret = cameraHost_->GetCameraAbility(cameraId, ability);
73 EXPECT_EQ(true, ret == OHOS::Camera::NO_ERROR);
74
75 ret = cameraDevice_->UpdateSettings(ability);
76 EXPECT_EQ(true, ret == OHOS::Camera::NO_ERROR);
77 std::cout << "UTestUpdateSettings ret = " << ret << std::endl;
78 }
79
80 HWTEST_F(CameraDeviceImplTest, UTestSetResultMode, TestSize.Level0)
81 {
82 EXPECT_EQ(false, cameraHost_ == nullptr);
83 EXPECT_EQ(false, cameraDevice_ == nullptr);
84
85 ResultCallbackMode mode = PER_FRAME;
86 CamRetCode rc = cameraDevice_->SetResultMode(mode);
87 EXPECT_EQ(true, rc == OHOS::Camera::NO_ERROR);
88 }
89
90 HWTEST_F(CameraDeviceImplTest, UTestGetEnabledResults, TestSize.Level0)
91 {
92 EXPECT_EQ(false, cameraHost_ == nullptr);
93 EXPECT_EQ(false, cameraDevice_ == nullptr);
94
95 std::vector<MetaType> results;
96 CamRetCode rc = cameraDevice_->GetEnabledResults(results);
97 EXPECT_EQ(true, rc == OHOS::Camera::NO_ERROR);
98
99 for (auto &type : results) {
100 std::cout << "MetaType = " << type << std::endl;
101 }
102 }
103
104 HWTEST_F(CameraDeviceImplTest, UTestEnableResult, TestSize.Level0)
105 {
106 EXPECT_EQ(false, cameraHost_ == nullptr);
107 EXPECT_EQ(false, cameraDevice_ == nullptr);
108
109 std::vector<MetaType> results;
110 CamRetCode rc = cameraDevice_->GetEnabledResults(results);
111 EXPECT_EQ(true, rc == OHOS::Camera::NO_ERROR);
112
113 rc = cameraDevice_->EnableResult(results);
114 EXPECT_EQ(true, rc == OHOS::Camera::NO_ERROR);
115 }
116
117 HWTEST_F(CameraDeviceImplTest, UTestDisableResult, TestSize.Level0)
118 {
119 EXPECT_EQ(false, cameraHost_ == nullptr);
120 EXPECT_EQ(false, cameraDevice_ == nullptr);
121
122 std::vector<MetaType> results;
123 CamRetCode rc = cameraDevice_->GetEnabledResults(results);
124 EXPECT_EQ(true, rc == OHOS::Camera::NO_ERROR);
125
126 rc = cameraDevice_->DisableResult(results);
127 EXPECT_EQ(true, rc == OHOS::Camera::NO_ERROR);
128 }
129
130 HWTEST_F(CameraDeviceImplTest, UTestClose, TestSize.Level0)
131 {
132 EXPECT_EQ(false, cameraHost_ == nullptr);
133 EXPECT_EQ(false, cameraDevice_ == nullptr);
134
135 if (cameraDevice_ != nullptr) {
136 cameraDevice_->Close();
137 cameraDevice_ = nullptr;
138 }
139 }