• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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