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 17using namespace OHOS; 18using namespace std; 19using namespace testing::ext; 20using namespace OHOS::Camera; 21 22void OpenCameraTest::SetUpTestCase(void) {} 23void OpenCameraTest::TearDownTestCase(void) {} 24void OpenCameraTest::SetUp(void) 25{ 26 Test_ = std::make_shared<OHOS::Camera::Test>(); 27 Test_->Init(); 28} 29void OpenCameraTest::TearDown(void) 30{ 31 ; 32} 33 34/** 35 * @tc.name: OpenCamera 36 * @tc.desc: OpenCamera, success. 37 * @tc.size: MediumTest 38 * @tc.type: Function 39 */ 40HWTEST_F(OpenCameraTest, Camera_Open_0001, TestSize.Level0) 41{ 42 std::cout << "==========[test log]OpenCamera, success."<< std::endl; 43 Test_->service->GetCameraIds(Test_->cameraIds); 44 std::cout << "==========[test log]cameraIds size = "<< Test_->cameraIds.size() << std::endl; 45 for (const auto &cameraId : Test_->cameraIds) { 46 std::cout << "==========[test log]cameraId = " << cameraId << std::endl; 47 } 48 std::string cameraId = Test_->cameraIds.front(); 49 Test_->CreateDeviceCallback(); 50 Test_->rc = Test_->service->OpenCamera(cameraId, Test_->deviceCallback, Test_->cameraDevice); 51 EXPECT_EQ(Test_->rc, Camera::NO_ERROR); 52 if (Test_->rc== Camera::NO_ERROR) { 53 std::cout << "==========[test log]OpenCamera success." << std::endl; 54 } else { 55 std::cout << "==========[test log]OpenCamera fail, rc = " << Test_->rc << std::endl; 56 } 57 if (Test_->cameraDevice != nullptr) { 58 Test_->cameraDevice->Close(); 59 std::cout << "==========[test log]Test_->cameraDevice->Close()." << std::endl; 60 } 61} 62 63/** 64 * @tc.name: Open all Cameras 65 * @tc.desc: Open every Cameras what the getCameraId get. 66 * @tc.size: MediumTest 67 * @tc.type: Function 68 */ 69HWTEST_F(OpenCameraTest, Camera_Open_0010, TestSize.Level2) 70{ 71 std::cout << "==========[test log]Open all Cameras."<< std::endl; 72 Test_->service->GetCameraIds(Test_->cameraIds); 73 for (auto &cameraId : Test_->cameraIds) { 74 std::cout << "cameraId = " << cameraId << std::endl; 75 Test_->CreateDeviceCallback(); 76 Test_->rc = Test_->service->OpenCamera(cameraId, Test_->deviceCallback, Test_->cameraDevice); 77 EXPECT_EQ(Test_->rc, Camera::NO_ERROR); 78 if (Test_->rc== Camera::NO_ERROR) { 79 std::cout << "==========[test log]OpenCamera success, cameraId = " << cameraId << std::endl; 80 } else { 81 std::cout << "==========[test log]OpenCamera fail, Test_->rc = "; 82 std::cout << Test_->rc << ", cameraId = " << cameraId << std::endl; 83 } 84 85 if (Test_->cameraDevice != nullptr) { 86 Test_->cameraDevice->Close(); 87 } 88 } 89} 90 91int main(int argc, char *argv[]) 92{ 93 // start test 94 testing::InitGoogleTest(&argc, argv); 95 return RUN_ALL_TESTS(); 96} 97