1 /* 2 * Copyright (c) 2025 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 <fcntl.h> 17 #include <iostream> 18 #include <string> 19 #include "media_errors.h" 20 #include "screen_capture_unit_test.h" 21 #include "ability_manager_client.h" 22 #include "accesstoken_kit.h" 23 #include "token_setproc.h" 24 25 using namespace OHOS; 26 using namespace OHOS::Media; 27 using namespace testing::ext; 28 using namespace std; 29 using namespace OHOS::Rosen; 30 using namespace OHOS::Media::ScreenCaptureTestParam; 31 32 namespace OHOS { 33 namespace Media { 34 /** 35 * @tc.name: screen_capture_keep_capture_during_call_001 36 * @tc.desc: keepCaptureDuringCall == false 37 * @tc.type: FUNC 38 * @tc.require: 39 */ 40 HWTEST_F(ScreenCaptureUnitTest, screen_capture_keep_capture_during_call_001, TestSize.Level2) 41 { 42 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_keep_capture_during_call_001 before"); 43 RecorderInfo recorderInfo; 44 SetRecorderInfo("screen_capture_keep_capture_during_call_001.mp4", recorderInfo); 45 SetConfigFile(config_, recorderInfo); 46 AudioCaptureInfo micCapInfo = { 47 .audioSampleRate = 16000, 48 .audioChannels = 2, 49 .audioSource = AudioCaptureSourceType::SOURCE_DEFAULT 50 }; 51 config_.audioInfo.micCapInfo = micCapInfo; 52 AudioCaptureInfo innerCapInfo = { 53 .audioSampleRate = 16000, 54 .audioChannels = 2, 55 .audioSource = AudioCaptureSourceType::APP_PLAYBACK 56 }; 57 config_.audioInfo.innerCapInfo = innerCapInfo; 58 EXPECT_EQ(MSERR_OK, screenCapture_->Init(config_)); 59 EXPECT_EQ(MSERR_OK, screenCapture_->CreateCaptureStrategy()); 60 EXPECT_EQ(MSERR_OK, screenCapture_->StrategyForKeepCaptureDuringCall(false)); 61 EXPECT_EQ(MSERR_OK, screenCapture_->SetCaptureStrategy()); 62 EXPECT_EQ(MSERR_OK, screenCapture_->ReleaseCaptureStrategy()); 63 EXPECT_EQ(MSERR_OK, screenCapture_->StartScreenRecording()); 64 sleep(RECORDER_TIME); 65 EXPECT_EQ(MSERR_OK, screenCapture_->StopScreenRecording()); 66 EXPECT_EQ(MSERR_OK, screenCapture_->Release()); 67 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_keep_capture_during_call_001 after"); 68 } 69 70 /** 71 * @tc.name: screen_capture_keep_capture_during_call_002 72 * @tc.desc: keepCaptureDuringCall == true 73 * @tc.type: FUNC 74 * @tc.require: 75 */ 76 HWTEST_F(ScreenCaptureUnitTest, screen_capture_keep_capture_during_call_002, TestSize.Level2) 77 { 78 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_keep_capture_during_call_002 before"); 79 RecorderInfo recorderInfo; 80 SetRecorderInfo("screen_capture_keep_capture_during_call_002.mp4", recorderInfo); 81 SetConfigFile(config_, recorderInfo); 82 AudioCaptureInfo micCapInfo = { 83 .audioSampleRate = 16000, 84 .audioChannels = 2, 85 .audioSource = AudioCaptureSourceType::SOURCE_DEFAULT 86 }; 87 config_.audioInfo.micCapInfo = micCapInfo; 88 AudioCaptureInfo innerCapInfo = { 89 .audioSampleRate = 16000, 90 .audioChannels = 2, 91 .audioSource = AudioCaptureSourceType::APP_PLAYBACK 92 }; 93 config_.audioInfo.innerCapInfo = innerCapInfo; 94 EXPECT_EQ(MSERR_OK, screenCapture_->Init(config_)); 95 EXPECT_EQ(MSERR_OK, screenCapture_->CreateCaptureStrategy()); 96 EXPECT_EQ(MSERR_OK, screenCapture_->StrategyForKeepCaptureDuringCall(true)); 97 EXPECT_EQ(MSERR_OK, screenCapture_->SetCaptureStrategy()); 98 EXPECT_EQ(MSERR_OK, screenCapture_->ReleaseCaptureStrategy()); 99 EXPECT_EQ(MSERR_OK, screenCapture_->StartScreenRecording()); 100 sleep(RECORDER_TIME); 101 EXPECT_EQ(MSERR_OK, screenCapture_->StopScreenRecording()); 102 EXPECT_EQ(MSERR_OK, screenCapture_->Release()); 103 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_keep_capture_during_call_002 after"); 104 } 105 106 /** 107 * @tc.name: screen_capture_canvas_follow_rotation_001 108 * @tc.desc: canvasFollowRotation == true 109 * @tc.type: FUNC 110 * @tc.require: 111 */ 112 HWTEST_F(ScreenCaptureUnitTest, screen_capture_canvas_follow_rotation_001, TestSize.Level2) 113 { 114 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_canvas_follow_rotation_001 before"); 115 RecorderInfo recorderInfo; 116 SetRecorderInfo("screen_capture_canvas_follow_rotation_001.mp4", recorderInfo); 117 SetConfigFile(config_, recorderInfo); 118 AudioCaptureInfo micCapInfo = { 119 .audioSampleRate = 16000, 120 .audioChannels = 2, 121 .audioSource = AudioCaptureSourceType::SOURCE_DEFAULT 122 }; 123 config_.audioInfo.micCapInfo = micCapInfo; 124 AudioCaptureInfo innerCapInfo = { 125 .audioSampleRate = 16000, 126 .audioChannels = 2, 127 .audioSource = AudioCaptureSourceType::APP_PLAYBACK 128 }; 129 config_.audioInfo.innerCapInfo = innerCapInfo; 130 EXPECT_EQ(MSERR_OK, screenCapture_->Init(config_)); 131 EXPECT_EQ(MSERR_OK, screenCapture_->CreateCaptureStrategy()); 132 screenCapture_->SetCanvasFollowRotationStrategy(true); 133 EXPECT_EQ(MSERR_OK, screenCapture_->SetCaptureStrategy()); 134 EXPECT_EQ(MSERR_OK, screenCapture_->ReleaseCaptureStrategy()); 135 EXPECT_EQ(MSERR_OK, screenCapture_->StartScreenRecording()); 136 sleep(RECORDER_TIME); 137 EXPECT_EQ(MSERR_OK, screenCapture_->StopScreenRecording()); 138 EXPECT_EQ(MSERR_OK, screenCapture_->Release()); 139 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_canvas_follow_rotation_001 after"); 140 } 141 142 /** 143 * @tc.name: screen_capture_enable_b_frame_001 144 * @tc.desc: enableBFrame == false 145 * @tc.type: FUNC 146 * @tc.require: 147 */ 148 HWTEST_F(ScreenCaptureUnitTest, screen_capture_enable_b_frame_001, TestSize.Level2) 149 { 150 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_enable_b_frame_001 before"); 151 RecorderInfo recorderInfo; 152 SetRecorderInfo("screen_capture_enable_b_frame_001.mp4", recorderInfo); 153 SetConfigFile(config_, recorderInfo); 154 AudioCaptureInfo micCapInfo = { 155 .audioSampleRate = 16000, 156 .audioChannels = 2, 157 .audioSource = AudioCaptureSourceType::SOURCE_DEFAULT 158 }; 159 config_.audioInfo.micCapInfo = micCapInfo; 160 AudioCaptureInfo innerCapInfo = { 161 .audioSampleRate = 16000, 162 .audioChannels = 2, 163 .audioSource = AudioCaptureSourceType::APP_PLAYBACK 164 }; 165 config_.audioInfo.innerCapInfo = innerCapInfo; 166 EXPECT_EQ(MSERR_OK, screenCapture_->Init(config_)); 167 EXPECT_EQ(MSERR_OK, screenCapture_->CreateCaptureStrategy()); 168 EXPECT_EQ(MSERR_OK, screenCapture_->StrategyForBFramesEncoding(false)); 169 EXPECT_EQ(MSERR_OK, screenCapture_->SetCaptureStrategy()); 170 EXPECT_EQ(MSERR_OK, screenCapture_->ReleaseCaptureStrategy()); 171 EXPECT_EQ(MSERR_OK, screenCapture_->StartScreenRecording()); 172 sleep(RECORDER_TIME); 173 EXPECT_EQ(MSERR_OK, screenCapture_->StopScreenRecording()); 174 EXPECT_EQ(MSERR_OK, screenCapture_->Release()); 175 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_enable_b_frame_001 after"); 176 } 177 178 /** 179 * @tc.name: screen_capture_enable_b_frame_002 180 * @tc.desc: enableBFrame == true 181 * @tc.type: FUNC 182 * @tc.require: 183 */ 184 HWTEST_F(ScreenCaptureUnitTest, screen_capture_enable_b_frame_002, TestSize.Level2) 185 { 186 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_enable_b_frame_002 before"); 187 RecorderInfo recorderInfo; 188 SetRecorderInfo("screen_capture_enable_b_frame_002.mp4", recorderInfo); 189 SetConfigFile(config_, recorderInfo); 190 AudioCaptureInfo micCapInfo = { 191 .audioSampleRate = 16000, 192 .audioChannels = 2, 193 .audioSource = AudioCaptureSourceType::SOURCE_DEFAULT 194 }; 195 config_.audioInfo.micCapInfo = micCapInfo; 196 AudioCaptureInfo innerCapInfo = { 197 .audioSampleRate = 16000, 198 .audioChannels = 2, 199 .audioSource = AudioCaptureSourceType::APP_PLAYBACK 200 }; 201 config_.audioInfo.innerCapInfo = innerCapInfo; 202 EXPECT_EQ(MSERR_OK, screenCapture_->Init(config_)); 203 EXPECT_EQ(MSERR_OK, screenCapture_->CreateCaptureStrategy()); 204 EXPECT_EQ(MSERR_OK, screenCapture_->StrategyForBFramesEncoding(true)); 205 EXPECT_EQ(MSERR_OK, screenCapture_->SetCaptureStrategy()); 206 EXPECT_EQ(MSERR_OK, screenCapture_->ReleaseCaptureStrategy()); 207 EXPECT_EQ(MSERR_OK, screenCapture_->StartScreenRecording()); 208 sleep(RECORDER_TIME); 209 EXPECT_EQ(MSERR_OK, screenCapture_->StopScreenRecording()); 210 EXPECT_EQ(MSERR_OK, screenCapture_->Release()); 211 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_enable_b_frame_002 after"); 212 } 213 214 /** 215 * @tc.name: screen_capture_strategy_for_maskmode_001 216 * @tc.desc: setStrategyForPrivacyMaskMode == 0 217 * @tc.type: FUNC 218 * @tc.require: 219 */ 220 HWTEST_F(ScreenCaptureUnitTest, screen_capture_strategy_for_maskmode_001, TestSize.Level2) 221 { 222 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_strategy_for_maskmode_001 S"); 223 RecorderInfo recorderInfo; 224 SetRecorderInfo("screen_capture_strategy_for_maskmode_001.mp4", recorderInfo); 225 SetConfigFile(config_, recorderInfo); 226 AudioCaptureInfo micCapInfo = { 227 .audioSampleRate = 16000, 228 .audioChannels = 2, 229 .audioSource = AudioCaptureSourceType::SOURCE_DEFAULT 230 }; 231 config_.audioInfo.micCapInfo = micCapInfo; 232 AudioCaptureInfo innerCapInfo = { 233 .audioSampleRate = 16000, 234 .audioChannels = 2, 235 .audioSource = AudioCaptureSourceType::APP_PLAYBACK 236 }; 237 config_.audioInfo.innerCapInfo = innerCapInfo; 238 EXPECT_EQ(MSERR_OK, screenCapture_->Init(config_)); 239 EXPECT_EQ(MSERR_OK, screenCapture_->CreateCaptureStrategy()); 240 EXPECT_EQ(MSERR_OK, screenCapture_->StrategyForPrivacyMaskMode(0)); 241 EXPECT_EQ(MSERR_OK, screenCapture_->SetCaptureStrategy()); 242 EXPECT_EQ(MSERR_OK, screenCapture_->ReleaseCaptureStrategy()); 243 EXPECT_EQ(MSERR_OK, screenCapture_->StartScreenRecording()); 244 sleep(RECORDER_TIME); 245 EXPECT_EQ(MSERR_OK, screenCapture_->StopScreenRecording()); 246 EXPECT_EQ(MSERR_OK, screenCapture_->Release()); 247 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_strategy_for_maskmode_001 E"); 248 } 249 250 /** 251 * @tc.name: screen_capture_strategy_for_maskmode_002 252 * @tc.desc: setStrategyForPrivacyMaskMode == 1 253 * @tc.type: FUNC 254 * @tc.require: 255 */ 256 HWTEST_F(ScreenCaptureUnitTest, screen_capture_strategy_for_maskmode_002, TestSize.Level2) 257 { 258 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_strategy_for_maskmode_002 S"); 259 RecorderInfo recorderInfo; 260 SetRecorderInfo("screen_capture_strategy_for_maskmode_002.mp4", recorderInfo); 261 SetConfigFile(config_, recorderInfo); 262 AudioCaptureInfo micCapInfo = { 263 .audioSampleRate = 16000, 264 .audioChannels = 2, 265 .audioSource = AudioCaptureSourceType::SOURCE_DEFAULT 266 }; 267 config_.audioInfo.micCapInfo = micCapInfo; 268 AudioCaptureInfo innerCapInfo = { 269 .audioSampleRate = 16000, 270 .audioChannels = 2, 271 .audioSource = AudioCaptureSourceType::APP_PLAYBACK 272 }; 273 config_.audioInfo.innerCapInfo = innerCapInfo; 274 EXPECT_EQ(MSERR_OK, screenCapture_->Init(config_)); 275 EXPECT_EQ(MSERR_OK, screenCapture_->CreateCaptureStrategy()); 276 EXPECT_EQ(MSERR_OK, screenCapture_->StrategyForPrivacyMaskMode(1)); 277 EXPECT_EQ(MSERR_OK, screenCapture_->SetCaptureStrategy()); 278 EXPECT_EQ(MSERR_OK, screenCapture_->ReleaseCaptureStrategy()); 279 EXPECT_EQ(MSERR_OK, screenCapture_->StartScreenRecording()); 280 sleep(RECORDER_TIME); 281 EXPECT_EQ(MSERR_OK, screenCapture_->StopScreenRecording()); 282 EXPECT_EQ(MSERR_OK, screenCapture_->Release()); 283 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_strategy_for_maskmode_002 E"); 284 } 285 286 /** 287 * @tc.name: screen_capture_strategy_for_picker_pop_up_001 288 * @tc.desc: setStrategyForPickerPopUp == true 289 * @tc.type: FUNC 290 * @tc.require: 291 */ 292 HWTEST_F(ScreenCaptureUnitTest, screen_capture_strategy_for_picker_pop_up_001, TestSize.Level2) 293 { 294 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_strategy_for_picker_pop_up_001 S"); 295 RecorderInfo recorderInfo; 296 SetRecorderInfo("screen_capture_strategy_for_picker_pop_up_001.mp4", recorderInfo); 297 SetConfigFile(config_, recorderInfo); 298 AudioCaptureInfo micCapInfo = { 299 .audioSampleRate = 16000, 300 .audioChannels = 2, 301 .audioSource = AudioCaptureSourceType::SOURCE_DEFAULT 302 }; 303 config_.audioInfo.micCapInfo = micCapInfo; 304 AudioCaptureInfo innerCapInfo = { 305 .audioSampleRate = 16000, 306 .audioChannels = 2, 307 .audioSource = AudioCaptureSourceType::APP_PLAYBACK 308 }; 309 config_.audioInfo.innerCapInfo = innerCapInfo; 310 EXPECT_EQ(MSERR_OK, screenCapture_->Init(config_)); 311 EXPECT_EQ(MSERR_OK, screenCapture_->CreateCaptureStrategy()); 312 EXPECT_EQ(MSERR_OK, screenCapture_->StrategyForPickerPopUp(true)); 313 EXPECT_EQ(MSERR_OK, screenCapture_->SetCaptureStrategy()); 314 EXPECT_EQ(MSERR_OK, screenCapture_->ReleaseCaptureStrategy()); 315 EXPECT_EQ(MSERR_OK, screenCapture_->StartScreenRecording()); 316 sleep(RECORDER_TIME); 317 EXPECT_EQ(MSERR_OK, screenCapture_->StopScreenRecording()); 318 EXPECT_EQ(MSERR_OK, screenCapture_->Release()); 319 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_strategy_for_picker_pop_up_001 E"); 320 } 321 322 /** 323 * @tc.name: screen_capture_strategy_for_picker_pop_up_002 324 * @tc.desc: setStrategyForPickerPopUp == false 325 * @tc.type: FUNC 326 * @tc.require: 327 */ 328 HWTEST_F(ScreenCaptureUnitTest, screen_capture_strategy_for_picker_pop_up_002, TestSize.Level2) 329 { 330 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_strategy_for_picker_pop_up_002 S"); 331 RecorderInfo recorderInfo; 332 SetRecorderInfo("screen_capture_strategy_for_picker_pop_up_002.mp4", recorderInfo); 333 SetConfigFile(config_, recorderInfo); 334 AudioCaptureInfo micCapInfo = { 335 .audioSampleRate = 16000, 336 .audioChannels = 2, 337 .audioSource = AudioCaptureSourceType::SOURCE_DEFAULT 338 }; 339 config_.audioInfo.micCapInfo = micCapInfo; 340 AudioCaptureInfo innerCapInfo = { 341 .audioSampleRate = 16000, 342 .audioChannels = 2, 343 .audioSource = AudioCaptureSourceType::APP_PLAYBACK 344 }; 345 config_.audioInfo.innerCapInfo = innerCapInfo; 346 EXPECT_EQ(MSERR_OK, screenCapture_->Init(config_)); 347 EXPECT_EQ(MSERR_OK, screenCapture_->CreateCaptureStrategy()); 348 EXPECT_EQ(MSERR_OK, screenCapture_->StrategyForPickerPopUp(false)); 349 EXPECT_EQ(MSERR_OK, screenCapture_->SetCaptureStrategy()); 350 EXPECT_EQ(MSERR_OK, screenCapture_->ReleaseCaptureStrategy()); 351 EXPECT_EQ(MSERR_OK, screenCapture_->StartScreenRecording()); 352 sleep(RECORDER_TIME); 353 EXPECT_EQ(MSERR_OK, screenCapture_->StopScreenRecording()); 354 EXPECT_EQ(MSERR_OK, screenCapture_->Release()); 355 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_strategy_for_picker_pop_up_002 E"); 356 } 357 358 /** 359 * @tc.name: screen_capture_strategy_for_fill_mode_001 360 * @tc.desc: setFillMode == aspect_scale_fit 361 * @tc.type: FUNC 362 * @tc.require: 363 */ 364 HWTEST_F(ScreenCaptureUnitTest, screen_capture_strategy_for_fill_mode_001, TestSize.Level2) 365 { 366 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_strategy_for_fill_mode_001 S"); 367 RecorderInfo recorderInfo; 368 SetRecorderInfo("screen_capture_strategy_for_fill_mode_001.mp4", recorderInfo); 369 SetConfigFile(config_, recorderInfo); 370 AudioCaptureInfo micCapInfo = { 371 .audioSampleRate = 16000, 372 .audioChannels = 2, 373 .audioSource = AudioCaptureSourceType::SOURCE_DEFAULT 374 }; 375 config_.audioInfo.micCapInfo = micCapInfo; 376 AudioCaptureInfo innerCapInfo = { 377 .audioSampleRate = 16000, 378 .audioChannels = 2, 379 .audioSource = AudioCaptureSourceType::APP_PLAYBACK 380 }; 381 config_.audioInfo.innerCapInfo = innerCapInfo; 382 EXPECT_EQ(MSERR_OK, screenCapture_->Init(config_)); 383 EXPECT_EQ(MSERR_OK, screenCapture_->CreateCaptureStrategy()); 384 EXPECT_EQ(MSERR_OK, screenCapture_->StrategyForFillMode(AVScreenCaptureFillMode::PRESERVE_ASPECT_RATIO)); 385 EXPECT_EQ(MSERR_OK, screenCapture_->SetCaptureStrategy()); 386 EXPECT_EQ(MSERR_OK, screenCapture_->ReleaseCaptureStrategy()); 387 EXPECT_EQ(MSERR_OK, screenCapture_->StartScreenRecording()); 388 sleep(RECORDER_TIME); 389 EXPECT_EQ(MSERR_OK, screenCapture_->StopScreenRecording()); 390 EXPECT_EQ(MSERR_OK, screenCapture_->Release()); 391 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_strategy_for_fill_mode_001 E"); 392 } 393 394 /** 395 * @tc.name: screen_capture_strategy_for_fill_mode_002 396 * @tc.desc: setFillMode == scale_to_fill 397 * @tc.type: FUNC 398 * @tc.require: 399 */ 400 HWTEST_F(ScreenCaptureUnitTest, screen_capture_strategy_for_fill_mode_002, TestSize.Level2) 401 { 402 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_strategy_for_fill_mode_002 S"); 403 RecorderInfo recorderInfo; 404 SetRecorderInfo("screen_capture_strategy_for_fill_mode_002.mp4", recorderInfo); 405 SetConfigFile(config_, recorderInfo); 406 AudioCaptureInfo micCapInfo = { 407 .audioSampleRate = 16000, 408 .audioChannels = 2, 409 .audioSource = AudioCaptureSourceType::SOURCE_DEFAULT 410 }; 411 config_.audioInfo.micCapInfo = micCapInfo; 412 AudioCaptureInfo innerCapInfo = { 413 .audioSampleRate = 16000, 414 .audioChannels = 2, 415 .audioSource = AudioCaptureSourceType::APP_PLAYBACK 416 }; 417 config_.audioInfo.innerCapInfo = innerCapInfo; 418 EXPECT_EQ(MSERR_OK, screenCapture_->Init(config_)); 419 EXPECT_EQ(MSERR_OK, screenCapture_->CreateCaptureStrategy()); 420 EXPECT_EQ(MSERR_OK, screenCapture_->StrategyForFillMode(AVScreenCaptureFillMode::SCALE_TO_FILL)); 421 EXPECT_EQ(MSERR_OK, screenCapture_->SetCaptureStrategy()); 422 EXPECT_EQ(MSERR_OK, screenCapture_->ReleaseCaptureStrategy()); 423 EXPECT_EQ(MSERR_OK, screenCapture_->StartScreenRecording()); 424 sleep(RECORDER_TIME); 425 EXPECT_EQ(MSERR_OK, screenCapture_->StopScreenRecording()); 426 EXPECT_EQ(MSERR_OK, screenCapture_->Release()); 427 MEDIA_LOGI("ScreenCaptureUnitTest screen_capture_strategy_for_fill_mode_002 E"); 428 } 429 } // namespace Media 430 } // namespace OHOS