1 /* 2 * Copyright (c) 2021-2022 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 #ifndef CAMERA_FRAMEWORK_UNITTEST_H 17 #define CAMERA_FRAMEWORK_UNITTEST_H 18 19 #include "gtest/gtest.h" 20 #include "hcamera_service.h" 21 #include "input/camera_manager.h" 22 23 namespace OHOS { 24 namespace CameraStandard { 25 class MockStreamOperator; 26 class MockCameraDevice; 27 class MockHCameraHostManager; 28 class CameraFrameworkUnitTest : public testing::Test { 29 public: 30 static const int32_t PHOTO_DEFAULT_WIDTH = 1280; 31 static const int32_t PHOTO_DEFAULT_HEIGHT = 960; 32 static const int32_t PREVIEW_DEFAULT_WIDTH = 640; 33 static const int32_t PREVIEW_DEFAULT_HEIGHT = 480; 34 static const int32_t VIDEO_DEFAULT_WIDTH = 640; 35 static const int32_t VIDEO_DEFAULT_HEIGHT = 360; 36 static const int32_t DEFAULT_MODE = 0; 37 static const int32_t MODE_FINISH = -1; 38 static const int32_t STREAM_FINISH = -1; 39 static const int32_t PREVIEW_STREAM = 0; 40 static const int32_t VIDEO_STREAM = 1; 41 static const int32_t PHOTO_STREAM = 2; 42 static const int32_t PREVIEW_FRAMERATE = 0; 43 static const int32_t VIDEO_FRAMERATE = 30; 44 static const int32_t PHOTO_FRAMERATE = 0; 45 sptr<MockStreamOperator> mockStreamOperator; 46 sptr<MockCameraDevice> mockCameraDevice; 47 sptr<MockHCameraHostManager> mockCameraHostManager; 48 sptr<CameraManager> cameraManager; 49 /* SetUpTestCase:The preset action of the test suite is executed before the first TestCase */ 50 static void SetUpTestCase(void); 51 52 /* TearDownTestCase:The test suite cleanup action is executed after the last TestCase */ 53 static void TearDownTestCase(void); 54 55 /* SetUp:Execute before each test case */ 56 void SetUp(); 57 58 /* TearDown:Execute after each test case */ 59 void TearDown(); 60 void SessionCommit(sptr<CaptureSession> session); 61 void SessionControlParams(sptr<CaptureSession> session); 62 sptr<CaptureOutput> CreatePhotoOutput(int32_t width = PHOTO_DEFAULT_WIDTH, int32_t height = PHOTO_DEFAULT_HEIGHT); 63 sptr<CaptureOutput> CreatePreviewOutput(int32_t width = PREVIEW_DEFAULT_WIDTH, 64 int32_t height = PREVIEW_DEFAULT_HEIGHT); 65 sptr<CaptureOutput> CreateVideoOutput(int32_t width = VIDEO_DEFAULT_WIDTH, int32_t height = VIDEO_DEFAULT_HEIGHT); 66 }; 67 } // CameraStandard 68 } // OHOS 69 #endif // CAMERA_FRAMEWORK_UNITTEST_H 70