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 expected 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 "camera_3a_test.h"
16
17 using namespace OHOS;
18 using namespace std;
19 using namespace testing::ext;
20 using namespace OHOS::Camera;
21
SetUpTestCase(void)22 void Camera3ATest::SetUpTestCase(void) {}
TearDownTestCase(void)23 void Camera3ATest::TearDownTestCase(void) {}
SetUp(void)24 void Camera3ATest::SetUp(void)
25 {
26 Test_ = std::make_shared<OHOS::Camera::Test>();
27 Test_->Init();
28 Test_->Open();
29 }
TearDown(void)30 void Camera3ATest::TearDown(void)
31 {
32 Test_->Close();
33 }
34
35 /**
36 * @tc.name: updateSettings AE
37 * @tc.desc: Preview,updateSettings OHOS_CAMERA_AE_EXPOSURE_COMPENSATION, success.
38 * @tc.size: MediumTest
39 * @tc.type: Function
40 */
41 HWTEST_F(Camera3ATest, Camera_3a_0001, TestSize.Level0)
42 {
43 std::cout << "==========[test log]Preview,then UpdateSettings ";
44 std::cout <<"OHOS_CAMERA_AE_EXPOSURE_COMPENSATION, success." << std::endl;
45 // Start stream
46 Test_->intents = {Camera::PREVIEW};
47 Test_->StartStream(Test_->intents);
48 // Get preview
49 Test_->StartCapture(Test_->streamId_preview, Test_->captureId_preview, false, true);
50 // Issue 3A parameters
51 std::shared_ptr<CameraMetadata> meta = std::make_shared<Camera::CameraSetting>(100, 2000);
52 int32_t expo = 0xa0;
53 meta->addEntry(OHOS_CONTROL_AE_EXPOSURE_COMPENSATION, &expo, 1);
54 Test_->rc = Test_->cameraDevice->UpdateSettings(meta);
55 EXPECT_EQ(Test_->rc, Camera::NO_ERROR);
56 std::cout << "==========[test log]UpdateSettings, exposure for 10s." << std::endl;
57 sleep(3); // sleep for 3 seconds
58 Test_->GetCameraMetadata();
59 // release stream
60 Test_->captureIds = {Test_->captureId_preview};
61 Test_->streamIds = {Test_->streamId_preview};
62 Test_->StopStream(Test_->captureIds, Test_->streamIds);
63 Test_->StopConsumer(Test_->intents);
64 }
65
66 /**
67 * @tc.name: updateSettings AWB
68 * @tc.desc: Preview,updateSettings OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_AUTO, success.
69 * @tc.size: MediumTest
70 * @tc.type: Function
71 */
72 HWTEST_F(Camera3ATest, Camera_3a_0002, TestSize.Level1)
73 {
74 std::cout << "==========[test log]Preview,updateSettings";
75 std::cout <<" OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_AUTO, success." << std::endl;
76 // Start stream
77 Test_->intents = {Camera::PREVIEW};
78 Test_->StartStream(Test_->intents);
79 // Get preview
80 Test_->StartCapture(Test_->streamId_preview, Test_->captureId_preview, false, true);
81 // Issue 3A parameters
82 std::shared_ptr<Camera::CameraSetting> meta = std::make_shared<Camera::CameraSetting>(100, 2000);
83 uint8_t awbMode = OHOS_CAMERA_AWB_MODE_AUTO;
84 meta->addEntry(OHOS_CONTROL_AWB_MODE, &awbMode, 1);
85 std::cout << "==========[test log]UpdateSettings, awb : OHOS_CAMERA_AWB_MODE_AUTO." << std::endl;
86 Test_->rc = Test_->cameraDevice->UpdateSettings(meta);
87 EXPECT_EQ(Test_->rc, Camera::NO_ERROR);
88 sleep(2);
89 // release stream
90 Test_->captureIds = {Test_->captureId_preview};
91 Test_->streamIds = {Test_->streamId_preview};
92 Test_->StopStream(Test_->captureIds, Test_->streamIds);
93 Test_->StopConsumer(Test_->intents);
94 }
95
96 /**
97 * @tc.name: updateSettings AWB
98 * @tc.desc: Preview,updateSettings OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_INCANDESCENT, success.
99 * @tc.size: MediumTest
100 * @tc.type: Function
101 */
102 HWTEST_F(Camera3ATest, Camera_3a_0003, TestSize.Level1)
103 {
104 std::cout << "==========[test log]Preview,updateSettings ";
105 std::cout <<"OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_INCANDESCENT, success." << std::endl;
106 // Start stream
107 Test_->intents = {Camera::PREVIEW};
108 Test_->StartStream(Test_->intents);
109 // Get preview
110 Test_->StartCapture(Test_->streamId_preview, Test_->captureId_preview, false, true);
111 // Issue 3A parameters
112 std::shared_ptr<Camera::CameraSetting> meta = std::make_shared<Camera::CameraSetting>(100, 2000);
113 uint8_t awbMode = OHOS_CAMERA_AWB_MODE_INCANDESCENT;
114 meta->addEntry(OHOS_CONTROL_AWB_MODE, &awbMode, 1);
115 std::cout << "==========[test log]UpdateSettings, awb : OHOS_CAMERA_AWB_MODE_INCANDESCENT." << std::endl;
116 Test_->rc = Test_->cameraDevice->UpdateSettings(meta);
117 EXPECT_EQ(Test_->rc, Camera::NO_ERROR);
118 sleep(2);
119 // release stream
120 Test_->captureIds = {Test_->captureId_preview};
121 Test_->streamIds = {Test_->streamId_preview};
122 Test_->StopStream(Test_->captureIds, Test_->streamIds);
123 Test_->StopConsumer(Test_->intents);
124 }
125
126 /**
127 * @tc.name: updateSettings AWB
128 * @tc.desc: Preview,updateSettings OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_FLUORESCENT, success.
129 * @tc.size: MediumTest
130 * @tc.type: Function
131 */
132 HWTEST_F(Camera3ATest, Camera_3a_0004, TestSize.Level1)
133 {
134 std::cout << "==========[test log]Preview,updateSettings ";
135 std::cout <<"OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_FLUORESCENT, success." << std::endl;
136 // Start stream
137 Test_->intents = {Camera::PREVIEW};
138 Test_->StartStream(Test_->intents);
139 // Get preview
140 Test_->StartCapture(Test_->streamId_preview, Test_->captureId_preview, false, true);
141 // Issue 3A parameters
142 uint8_t awbMode = OHOS_CAMERA_AWB_MODE_FLUORESCENT;
143 std::shared_ptr<Camera::CameraSetting> meta = std::make_shared<Camera::CameraSetting>(100, 2000);
144 meta->addEntry(OHOS_CONTROL_AWB_MODE, &awbMode, 1);
145 std::cout << "==========[test log]UpdateSettings, awb : OHOS_CAMERA_AWB_MODE_FLUORESCENT." << std::endl;
146 Test_->rc = Test_->cameraDevice->UpdateSettings(meta);
147 EXPECT_EQ(Test_->rc, Camera::NO_ERROR);
148 // release stream
149 sleep(2);
150 Test_->captureIds = {Test_->captureId_preview};
151 Test_->streamIds = {Test_->streamId_preview};
152 Test_->StopStream(Test_->captureIds, Test_->streamIds);
153 Test_->StopConsumer(Test_->intents);
154 }
155
156 /**
157 * @tc.name: updateSettings AWB
158 * @tc.desc: Preview,updateSettings OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_WARM_FLUORESCENT, success.
159 * @tc.size: MediumTest
160 * @tc.type: Function
161 */
162 HWTEST_F(Camera3ATest, Camera_3a_0005, TestSize.Level1)
163 {
164 std::cout << "==========[test log]Preview,updateSettings ";
165 std::cout <<"OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_WARM_FLUORESCENT, success." << std::endl;
166 // Start stream
167 Test_->intents = {Camera::PREVIEW};
168 Test_->StartStream(Test_->intents);
169 // Get preview
170 Test_->StartCapture(Test_->streamId_preview, Test_->captureId_preview, false, true);
171 // Issue 3A parameters
172 uint8_t awbMode = OHOS_CAMERA_AWB_MODE_WARM_FLUORESCENT;
173 std::shared_ptr<Camera::CameraSetting> meta = std::make_shared<Camera::CameraSetting>(100, 2000);
174 meta->addEntry(OHOS_CONTROL_AWB_MODE, &awbMode, 1);
175 std::cout << "==========[test log]UpdateSettings, awb : OHOS_CAMERA_AWB_MODE_WARM_FLUORESCENT." << std::endl;
176 Test_->rc = Test_->cameraDevice->UpdateSettings(meta);
177 EXPECT_EQ(Test_->rc, Camera::NO_ERROR);
178 // release stream
179 sleep(2);
180 Test_->captureIds = {Test_->captureId_preview};
181 Test_->streamIds = {Test_->streamId_preview};
182 Test_->StopStream(Test_->captureIds, Test_->streamIds);
183 Test_->StopConsumer(Test_->intents);
184 }
185
186 /**
187 * @tc.name: updateSettings AWB
188 * @tc.desc: Preview,updateSettings OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_DAYLIGHT, success.
189 * @tc.size: MediumTest
190 * @tc.type: Function
191 */
192 HWTEST_F(Camera3ATest, Camera_3a_0006, TestSize.Level1)
193 {
194 std::cout << "==========[test log]Preview, updateSettings ";
195 std::cout <<"OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_DAYLIGHT, success." << std::endl;
196 // Start stream
197 Test_->intents = {Camera::PREVIEW};
198 Test_->StartStream(Test_->intents);
199 // Get preview
200 Test_->StartCapture(Test_->streamId_preview, Test_->captureId_preview, false, true);
201 // Issue 3A parameters
202 std::shared_ptr<Camera::CameraSetting> meta = std::make_shared<Camera::CameraSetting>(100, 2000);
203 uint8_t awbMode = OHOS_CAMERA_AWB_MODE_DAYLIGHT;
204 meta->addEntry(OHOS_CONTROL_AWB_MODE, &awbMode, 1);
205 std::cout << "==========[test log]UpdateSettings, awb : OHOS_CAMERA_AWB_MODE_DAYLIGHT." << std::endl;
206 Test_->rc = Test_->cameraDevice->UpdateSettings(meta);
207 EXPECT_EQ(Test_->rc, Camera::NO_ERROR);
208 sleep(2);
209 std::cout << "==========[test log]GetCameraMetadata ..." << std::endl;
210 Test_->GetCameraMetadata();
211 // release stream
212 Test_->captureIds = {Test_->captureId_preview};
213 Test_->streamIds = {Test_->streamId_preview};
214 Test_->StopStream(Test_->captureIds, Test_->streamIds);
215 Test_->StopConsumer(Test_->intents);
216 }
217
218 /**
219 * @tc.name: updateSettings AWB
220 * @tc.desc: Preview,updateSettings OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_CLOUDY_DAYLIGHT, success.
221 * @tc.size: MediumTest
222 * @tc.type: Function
223 */
224 HWTEST_F(Camera3ATest, Camera_3a_0007, TestSize.Level1)
225 {
226 std::cout << "==========[test log]Preview,updateSettings ";
227 std::cout <<"OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_CLOUDY_DAYLIGHT, success." << std::endl;
228 // Start stream
229 Test_->intents = {Camera::PREVIEW};
230 Test_->StartStream(Test_->intents);
231 // Get preview
232 Test_->StartCapture(Test_->streamId_preview, Test_->captureId_preview, false, true);
233 // Issue 3A parameters
234 uint8_t awbMode = OHOS_CAMERA_AWB_MODE_CLOUDY_DAYLIGHT;
235 std::shared_ptr<Camera::CameraSetting> meta = std::make_shared<Camera::CameraSetting>(100, 2000);
236 meta->addEntry(OHOS_CONTROL_AWB_MODE, &awbMode, 1);
237 std::cout << "==========[test log]UpdateSettings, awb : OHOS_CAMERA_AWB_MODE_CLOUDY_DAYLIGHT." << std::endl;
238 Test_->rc = Test_->cameraDevice->UpdateSettings(meta);
239 EXPECT_EQ(Test_->rc, Camera::NO_ERROR);
240 // release stream
241 sleep(2);
242 std::cout << "==========[test log]GetCameraMetadata ..." << std::endl;
243 Test_->GetCameraMetadata();
244 Test_->captureIds = {Test_->captureId_preview};
245 Test_->streamIds = {Test_->streamId_preview};
246 Test_->StopStream(Test_->captureIds, Test_->streamIds);
247 Test_->StopConsumer(Test_->intents);
248 }
249
250 /**
251 * @tc.name: updateSettings AWB
252 * @tc.desc: Preview,updateSettings OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_TWILIGHT, success.
253 * @tc.size: MediumTest
254 * @tc.type: Function
255 */
256 HWTEST_F(Camera3ATest, Camera_3a_0008, TestSize.Level1)
257 {
258 std::cout << "==========[test log]Preview,updateSettings ";
259 std::cout <<"OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_TWILIGHT, success." << std::endl;
260 // Start stream
261 Test_->intents = {Camera::PREVIEW};
262 Test_->StartStream(Test_->intents);
263 // Get preview
264 Test_->StartCapture(Test_->streamId_preview, Test_->captureId_preview, false, true);
265 // Issue 3A parameters
266 uint8_t awbMode = OHOS_CAMERA_AWB_MODE_TWILIGHT;
267 std::shared_ptr<Camera::CameraSetting> meta = std::make_shared<Camera::CameraSetting>(100, 2000);
268 meta->addEntry(OHOS_CONTROL_AWB_MODE, &awbMode, 1);
269 std::cout << "==========[test log]UpdateSettings, awb : OHOS_CAMERA_AWB_MODE_TWILIGHT." << std::endl;
270 Test_->rc = Test_->cameraDevice->UpdateSettings(meta);
271 EXPECT_EQ(Test_->rc, Camera::NO_ERROR);
272 // release stream
273 sleep(2);
274 Test_->captureIds = {Test_->captureId_preview};
275 Test_->streamIds = {Test_->streamId_preview};
276 Test_->StopStream(Test_->captureIds, Test_->streamIds);
277 Test_->StopConsumer(Test_->intents);
278 }
279
280 /**
281 * @tc.name: updateSettings AWB
282 * @tc.desc: Preview,updateSettings OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_SHADE, success.
283 * @tc.size: MediumTest
284 * @tc.type: Function
285 */
286 HWTEST_F(Camera3ATest, Camera_3a_0009, TestSize.Level1)
287 {
288 std::cout << "==========[test log]Preview,updateSettings ";
289 std::cout <<"OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_SHADE, success." << std::endl;
290 // Start stream
291 Test_->intents = {Camera::PREVIEW};
292 Test_->StartStream(Test_->intents);
293 // Get preview
294 Test_->StartCapture(Test_->streamId_preview, Test_->captureId_preview, false, true);
295 // Issue 3A parameters
296 std::shared_ptr<Camera::CameraSetting> meta = std::make_shared<Camera::CameraSetting>(100, 2000);
297 uint8_t awbMode = OHOS_CAMERA_AWB_MODE_SHADE;
298 meta->addEntry(OHOS_CONTROL_AWB_MODE, &awbMode, 1);
299 std::cout << "==========[test log]UpdateSettings, awb : OHOS_CAMERA_AWB_MODE_SHADE." << std::endl;
300 Test_->rc = Test_->cameraDevice->UpdateSettings(meta);
301 EXPECT_EQ(Test_->rc, Camera::NO_ERROR);
302 sleep(2);
303 // release stream
304 Test_->captureIds = {Test_->captureId_preview};
305 Test_->streamIds = {Test_->streamId_preview};
306 Test_->StopStream(Test_->captureIds, Test_->streamIds);
307 Test_->StopConsumer(Test_->intents);
308 }
309
310 /**
311 * @tc.name: updateSettings AWB
312 * @tc.desc: Preview,updateSettings OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_OFF, success.
313 * @tc.size: MediumTest
314 * @tc.type: Function
315 */
316 HWTEST_F(Camera3ATest, Camera_3a_0010, TestSize.Level1)
317 {
318 std::cout << "==========[test log]Preview,updateSettings ";
319 std::cout <<"OHOS_CAMERA_AWB_MODE-OHOS_CONTROL_AWB_MODE_OFF, success." << std::endl;
320 // Start stream
321 Test_->intents = {Camera::PREVIEW};
322 Test_->StartStream(Test_->intents);
323 // Get preview
324 Test_->StartCapture(Test_->streamId_preview, Test_->captureId_preview, false, true);
325 // Issue 3A parameters
326 std::shared_ptr<Camera::CameraSetting> meta = std::make_shared<Camera::CameraSetting>(100, 2000);
327 uint8_t awbMode = OHOS_CAMERA_AWB_MODE_OFF;
328 meta->addEntry(OHOS_CONTROL_AWB_MODE, &awbMode, 1);
329 std::cout << "==========[test log]UpdateSettings, awb : OHOS_CAMERA_AWB_MODE_OFF." << std::endl;
330 Test_->rc = Test_->cameraDevice->UpdateSettings(meta);
331 EXPECT_EQ(Test_->rc, Camera::NO_ERROR);
332 sleep(2);
333 // release stream
334 Test_->captureIds = {Test_->captureId_preview};
335 Test_->streamIds = {Test_->streamId_preview};
336 Test_->StopStream(Test_->captureIds, Test_->streamIds);
337 Test_->StopConsumer(Test_->intents);
338 }
339
340 /**
341 * @tc.name: updateSettings illegal value
342 * @tc.desc: UpdateSettings, OHOS_CAMERA_AWB_MODE: illegal value(input AE value).
343 * @tc.size: MediumTest
344 * @tc.type: Function
345 */
346 HWTEST_F(Camera3ATest, Camera_3a_0020, TestSize.Level2) {
347 std::cout << "==========[test log]UpdateSettings, ";
348 std::cout <<"OHOS_CAMERA_AWB_MODE: illegal value(input AE value)." << std::endl;
349 // Issue 3A parameters
350 std::shared_ptr<Camera::CameraSetting> meta = std::make_shared<Camera::CameraSetting>(100, 2000);
351 uint8_t awbMode = OHOS_CAMERA_AE_MODE_ON_ALWAYS_FLASH;
352 meta->addEntry(OHOS_CONTROL_AWB_MODE, &awbMode, 1);
353 Test_->rc = Test_->cameraDevice->UpdateSettings(meta);
354 std::cout << "rc = " << Test_->rc << std::endl;
355 EXPECT_EQ(true, Test_->rc == Camera::NO_ERROR);
356 }
357
358 /**
359 * @tc.name: updateSettings reset
360 * @tc.desc: Preview set 3A, then close device, and preview, 3A is reset.
361 * @tc.size: MediumTest
362 * @tc.type: Function
363 */
364 HWTEST_F(Camera3ATest, Camera_3a_0030, TestSize.Level2)
365 {
366 std::cout << "==========[test log]Preview set 3A, ";
367 std::cout <<"then close device, and preview, 3A is reset." << std::endl;
368 std::cout << "==========[test log]The 1st time set 3A." << std::endl;
369 // Start stream
370 Test_->intents = {Camera::PREVIEW};
371 Test_->StartStream(Test_->intents);
372 // Get preview
373 Test_->StartCapture(Test_->streamId_preview, Test_->captureId_preview, false, true);
374 // Issue 3A parameters
375 std::shared_ptr<Camera::CameraSetting> meta = std::make_shared<Camera::CameraSetting>(100, 2000);
376 int32_t expo = 0xa0;
377 meta->addEntry(OHOS_CONTROL_AE_EXPOSURE_COMPENSATION, &expo, 1);
378 Test_->rc = Test_->cameraDevice->UpdateSettings(meta);
379 EXPECT_EQ(Test_->rc, Camera::NO_ERROR);
380 std::cout << "==========[test log]UpdateSettings, exposure for 3s." << std::endl;
381 sleep(3); // sleep for 3 seconds
382 // release stream
383 Test_->captureIds = {Test_->captureId_preview};
384 Test_->streamIds = {Test_->streamId_preview};
385 Test_->StopStream(Test_->captureIds, Test_->streamIds);
386 Test_->StopConsumer(Test_->intents);
387 // Turn off the device
388 Test_->cameraDevice->Close();
389 std::cout << "cameraDevice->Close" << std::endl;
390 std::cout << "==========[test log]Close device, and preview, 3A is reset." << std::endl;
391 Test_->consumerMap_.clear();
392 // reopen the camera
393 Test_ = std::make_shared<OHOS::Camera::Test>();
394 Test_->Init();
395 Test_->Open();
396 // Start stream
397 Test_->intents = {Camera::PREVIEW};
398 Test_->StartStream(Test_->intents);
399 // Get preview
400 Test_->StartCapture(Test_->streamId_preview, Test_->captureId_preview, false, true);
401 // release stream
402 Test_->captureIds = {Test_->captureId_preview};
403 Test_->streamIds = {Test_->streamId_preview};
404 Test_->StopStream(Test_->captureIds, Test_->streamIds);
405 Test_->StopConsumer(Test_->intents);
406 }
407
408 /**
409 * @tc.name: updateSettings different 3A params
410 * @tc.desc: Preview, updatesetting different 3A params together.
411 * @tc.size: MediumTest
412 * @tc.type: Function
413 */
414 HWTEST_F(Camera3ATest, Camera_3a_0031, TestSize.Level1)
415 {
416 std::cout << "==========[test log]Preview, updatesetting different 3A params together." << std::endl;
417 // Start stream
418 Test_->intents = {Camera::PREVIEW};
419 Test_->StartStream(Test_->intents);
420 // Get preview
421 Test_->StartCapture(Test_->streamId_preview, Test_->captureId_preview, false, true);
422 // Issue 3A parameters
423 std::shared_ptr<Camera::CameraSetting> meta = std::make_shared<Camera::CameraSetting>(100, 2000);
424 int32_t expo = 0xa0;
425 meta->addEntry(OHOS_CONTROL_AE_EXPOSURE_COMPENSATION, &expo, 1);
426 uint8_t awbMode = OHOS_CAMERA_AWB_MODE_TWILIGHT;
427 meta->addEntry(OHOS_CONTROL_AWB_MODE, &awbMode, 1);
428 Test_->rc = Test_->cameraDevice->UpdateSettings(meta);
429 EXPECT_EQ(Test_->rc, Camera::NO_ERROR);
430 std::cout << "==========[test log]UpdateSettings, exposure for 10s." << std::endl;
431 sleep(3); // sleep for 3 seconds
432 std::cout << "==========[test log]GetCameraMetadata ..." << std::endl;
433 Test_->GetCameraMetadata();
434 // release stream
435 Test_->captureIds = {Test_->captureId_preview};
436 Test_->streamIds = {Test_->streamId_preview};
437 Test_->StopStream(Test_->captureIds, Test_->streamIds);
438 Test_->StopConsumer(Test_->intents);
439 }
440
441 /**
442 * @tc.name: updateSettings AE without preview
443 * @tc.desc: UpdateSettings-OHOS_CAMERA_AE_EXPOSURE_COMPENSATION, without preview, success.
444 * @tc.size: MediumTest
445 * @tc.type: Function
446 */
447 HWTEST_F(Camera3ATest, Camera_3a_0040, TestSize.Level2) {
448 std::cout << "UpdateSettings-OHOS_CAMERA_AE_EXPOSURE_COMPENSATION, success." << std::endl;
449
450 // Issue 3A parameters
451 std::shared_ptr<Camera::CameraSetting> meta = std::make_shared<Camera::CameraSetting>(100, 2000);
452 int32_t expo = 0xa0;
453 meta->addEntry(OHOS_CONTROL_AE_EXPOSURE_COMPENSATION, &expo, 1);
454 Test_->rc = Test_->cameraDevice->UpdateSettings(meta);
455 EXPECT_EQ(Test_->rc, Camera::NO_ERROR);
456 }
457
458 /**
459 * @tc.name: updateSettings AWB without preview
460 * @tc.desc: UpdateSettings-OHOS_CAMERA_AWB_MODE, without preview, success.
461 * @tc.size: MediumTest
462 * @tc.type: Function
463 */
464 HWTEST_F(Camera3ATest, Camera_3a_0041, TestSize.Level2) {
465 std::cout << "UpdateSettings-OHOS_CAMERA_AWB_MODE, success." << std::endl;
466
467 // Issue 3A parameters
468 std::shared_ptr<Camera::CameraSetting> meta = std::make_shared<Camera::CameraSetting>(100, 2000);
469 uint8_t awbMode = OHOS_CAMERA_AWB_MODE_AUTO;
470 meta->addEntry(OHOS_CONTROL_AWB_MODE, &awbMode, 1);
471 Test_->rc = Test_->cameraDevice->UpdateSettings(meta);
472 EXPECT_EQ(Test_->rc, Camera::NO_ERROR);
473 }
474