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 #include "open_camera_test.h"
16
SetUpTestCase(void)17 void UtestOpenCameraTest::SetUpTestCase(void)
18 {}
TearDownTestCase(void)19 void UtestOpenCameraTest::TearDownTestCase(void)
20 {}
SetUp(void)21 void UtestOpenCameraTest::SetUp(void)
22 {
23 std::cout << "==========[test log] UtestOpenCameraTest::SetUp.display_0: "<<display_<< std::endl;
24 if (display_ == nullptr) {
25 std::cout << "==========[test log] UtestOpenCameraTest::SetUp.display_1: "<<display_<< std::endl;
26 display_ = std::make_shared<TestDisplay>();
27 std::cout << "==========[test log] UtestOpenCameraTest::SetUp.display_2: "<<display_<< std::endl;
28 display_->FBInit();
29 std::cout << "==========[test log] UtestOpenCameraTest::SetUp.display_3: "<<display_<< std::endl;
30 display_->Init();
31 std::cout << "==========[test log] UtestOpenCameraTest::SetUp.display_4: "<<display_<< std::endl;
32 }
33 }
TearDown(void)34 void UtestOpenCameraTest::TearDown(void)
35 {
36 display_->Close();
37 }
38
39 /**
40 * @tc.name: OpenCamera
41 * @tc.desc: OpenCamera, success.
42 * @tc.level: Level0
43 * @tc.size: MediumTest
44 * @tc.type: Function
45 */
TEST_F(UtestOpenCameraTest,camera_open_0001)46 TEST_F(UtestOpenCameraTest, camera_open_0001)
47 {
48 std::cout << "==========[test log] OpenCamera, success."<< std::endl;
49 std::vector<std::string> cameraIds;
50 display_->cameraHost->GetCameraIds(cameraIds);
51 for (auto &cameraId : cameraIds) {
52 std::cout << "cameraId = " << cameraId << std::endl;
53 }
54 std::string cameraId = cameraIds.front();
55 const std::shared_ptr<OHOS::Camera::ICameraDeviceCallback> callback =
56 std::make_shared<OHOS::Camera::ICameraDeviceCallback>();
57 std::shared_ptr<OHOS::Camera::ICameraDevice> cameraDevice;
58 display_->rc = display_->cameraHost->OpenCamera(cameraId, callback, cameraDevice);
59 EXPECT_EQ(true, display_->rc == Camera::NO_ERROR);
60 }
61
62 /**
63 * @tc.name: OpenCamera cameraID input error
64 * @tc.desc: OpenCamera, cameraID is not found.
65 * @tc.level: Level2
66 * @tc.size: MediumTest
67 * @tc.type: Function
68 */
TEST_F(UtestOpenCameraTest,camera_open_0010)69 TEST_F(UtestOpenCameraTest, camera_open_0010)
70 {
71 std::cout << "==========[test log] OpenCamera, cameraID is not found."<< std::endl;
72 std::shared_ptr<OHOS::Camera::CameraHost> cameraHost = Camera::CameraHost::CreateCameraHost();
73 std::string cameraId = "qwerty";
74 std::shared_ptr<OHOS::Camera::ICameraDeviceCallback> callback =
75 std::make_shared<OHOS::Camera::ICameraDeviceCallback>();
76 std::cout << "opencamera begin" << std::endl;
77 display_->rc = cameraHost->OpenCamera(cameraId, callback, display_->cameraDevice);
78 std::cout << "opencamera end" << std::endl;
79 EXPECT_EQ(Camera::CamRetCode::INVALID_ARGUMENT, display_->rc);
80 }
81
82 /**
83 * @tc.name: OpenCamera cameraID input error
84 * @tc.desc: OpenCamera, cameraID is illegal.
85 * @tc.level: Level2
86 * @tc.size: MediumTest
87 * @tc.type: Function
88 */
TEST_F(UtestOpenCameraTest,camera_open_0011)89 TEST_F(UtestOpenCameraTest, camera_open_0011)
90 {
91 std::cout << "==========[test log] OpenCamera, cameraID is illegal."<< std::endl;
92 std::string cameraId = "1";
93 std::shared_ptr<OHOS::Camera::ICameraDeviceCallback> callback =
94 std::make_shared<OHOS::Camera::ICameraDeviceCallback>();
95 display_->rc = display_->cameraHost->OpenCamera(cameraId, callback, display_->cameraDevice);
96 EXPECT_EQ(Camera::CamRetCode::INVALID_ARGUMENT, display_->rc);
97 }
98
99 /**
100 * @tc.name: OpenCamera cameraID input error
101 * @tc.desc: OpenCamera, cameraID is Empty.
102 * @tc.level: Level2
103 * @tc.size: MediumTest
104 * @tc.type: Function
105 */
TEST_F(UtestOpenCameraTest,camera_open_0012)106 TEST_F(UtestOpenCameraTest, camera_open_0012)
107 {
108 std::cout << "==========[test log] OpenCamera, cameraID is Empty."<< std::endl;
109 std::string cameraId;
110 std::shared_ptr<OHOS::Camera::ICameraDeviceCallback> callback =
111 std::make_shared<OHOS::Camera::ICameraDeviceCallback>();
112 display_->rc = display_->cameraHost->OpenCamera(cameraId, callback, display_->cameraDevice);
113 EXPECT_EQ(Camera::CamRetCode::INVALID_ARGUMENT, display_->rc);
114 }
115
116 /**
117 * @tc.name: OpenCamera Callback input error
118 * @tc.desc: OpenCamera, Callback is Null.
119 * @tc.level: Level2
120 * @tc.size: MediumTest
121 * @tc.type: Function
122 */
TEST_F(UtestOpenCameraTest,camera_open_0020)123 TEST_F(UtestOpenCameraTest, camera_open_0020)
124 {
125 std::cout << "==========[test log] OpenCamera, Callback is Null."<< std::endl;
126 std::string cameraId = "CAMERA_FIRST";
127 std::shared_ptr<OHOS::Camera::ICameraDeviceCallback> callback = nullptr;
128 display_->rc = display_->cameraHost->OpenCamera(cameraId, callback, display_->cameraDevice);
129 EXPECT_EQ(Camera::CamRetCode::INVALID_ARGUMENT, display_->rc);
130 }
131
132 /**
133 * @tc.name: OpenCamera cameraID & Callback input error
134 * @tc.desc: OpenCamera, cameraID is not found, callback is null.
135 * @tc.level: Level1
136 * @tc.size: MediumTest
137 * @tc.type: Function
138 */
TEST_F(UtestOpenCameraTest,camera_open_0030)139 TEST_F(UtestOpenCameraTest, camera_open_0030)
140 {
141 std::cout << "==========[test log] OpenCamera, cameraID is not found, callback is null."<< std::endl;
142 std::shared_ptr<OHOS::Camera::CameraHost> cameraHost = Camera::CameraHost::CreateCameraHost();
143 std::string cameraId = "qwerty";
144 std::shared_ptr<OHOS::Camera::ICameraDeviceCallback> callback = nullptr;
145 std::cout << "opencamera begin" << std::endl;
146 display_->rc = display_->cameraHost->OpenCamera(cameraId, callback, display_->cameraDevice);
147 std::cout << "opencamera end" << std::endl;
148 EXPECT_EQ(Camera::CamRetCode::INVALID_ARGUMENT, display_-> rc);
149 }
150
151 /**
152 * @tc.name: OpenCamera cameraID & Callback input error
153 * @tc.desc: OpenCamera, cameraID is illegal, callback is null.
154 * @tc.level: Level1
155 * @tc.size: MediumTest
156 * @tc.type: Function
157 */
TEST_F(UtestOpenCameraTest,camera_open_0031)158 TEST_F(UtestOpenCameraTest, camera_open_0031)
159 {
160 std::cout << "==========[test log] OpenCamera, cameraID is illegal, callback is null."<< std::endl;
161 std::string cameraId = "1";
162 std::shared_ptr<OHOS::Camera::ICameraDeviceCallback> callback = nullptr;
163 display_->rc = display_->cameraHost->OpenCamera(cameraId, callback, display_->cameraDevice);
164 EXPECT_EQ(Camera::CamRetCode::INVALID_ARGUMENT, display_-> rc);
165 }
166
167 /**
168 * @tc.name: OpenCamera cameraID & Callback input error
169 * @tc.desc: OpenCamera, cameraID is Empty, callback is null.
170 * @tc.level: Level1
171 * @tc.size: MediumTest
172 * @tc.type: Function
173 */
TEST_F(UtestOpenCameraTest,camera_open_0032)174 TEST_F(UtestOpenCameraTest, camera_open_0032)
175 {
176 std::cout << "==========[test log] OpenCamera, cameraID is Empty, callback is null."<< std::endl;
177 std::string cameraId;
178 std::shared_ptr<OHOS::Camera::ICameraDeviceCallback> callback = nullptr;
179 display_->rc = display_->cameraHost->OpenCamera(cameraId, callback, display_->cameraDevice);
180 EXPECT_EQ(Camera::CamRetCode::INVALID_ARGUMENT, display_->rc);
181 }
182
183 /**
184 * @tc.name: Open all Cameras
185 * @tc.desc: Open every Cameras what the getCameraId get.
186 * @tc.level: Level2
187 * @tc.size: MediumTest
188 * @tc.type: Function
189 */
TEST_F(UtestOpenCameraTest,camera_open_0050)190 TEST_F(UtestOpenCameraTest, camera_open_0050)
191 {
192 std::cout << "==========[test log] Open all Cameras."<< std::endl;
193 std::vector<std::string> cameraIds;
194 display_->cameraHost->GetCameraIds(cameraIds);
195 for (auto &cameraId : cameraIds) {
196 std::cout << "cameraId = " << cameraId << std::endl;
197 const std::shared_ptr<OHOS::Camera::ICameraDeviceCallback> callback =
198 std::make_shared<OHOS::Camera::ICameraDeviceCallback>();
199 display_->rc = display_->cameraHost->OpenCamera(cameraId, callback, display_->cameraDevice);
200 EXPECT_EQ(true, display_->rc == Camera::NO_ERROR);
201 if (display_->rc == Camera::NO_ERROR) {
202 std::cout << "==========[test log] OpenCamera success, cameraId = " << cameraId << std::endl;
203 } else {
204 std::cout << "==========[test log] OpenCamera fail, rc = ";
205 std::cout << display_->rc << ", cameraId = " << cameraId << std::endl;
206 }
207 }
208 }
209
main(int argc,char * argv[])210 int main(int argc, char *argv[])
211 {
212 // 开始批跑
213 testing::InitGoogleTest(&argc, argv);
214 return RUN_ALL_TESTS();
215 }