• 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 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