1 /* 2 * Copyright (c) 2023 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 CAPTURE_SESSION_FUZZER_H 17 #define CAPTURE_SESSION_FUZZER_H 18 19 #include "session/capture_session.h" 20 21 namespace OHOS { 22 namespace CameraStandard { 23 namespace CaptureSessionFuzzer { 24 25 void Test(uint8_t *rawData, size_t size); 26 void TestSession(sptr<CaptureSession> session, uint8_t *rawData, size_t size); 27 void TestWhiteBalance(sptr<CaptureSession> session, uint8_t *rawData, size_t size); 28 void TestExposure(sptr<CaptureSession> session, uint8_t *rawData, size_t size); 29 void TestFocus(sptr<CaptureSession> session, uint8_t *rawData, size_t size); 30 void TestZoom(sptr<CaptureSession> session, uint8_t *rawData, size_t size); 31 void TestCallback(sptr<CaptureSession> session, uint8_t *rawData, size_t size); 32 void TestStabilization(sptr<CaptureSession> session, uint8_t *rawData, size_t size); 33 void TestFlash(sptr<CaptureSession> session, uint8_t *rawData, size_t size); 34 void TestCreateMediaLibrary(sptr<CaptureSession> session, uint8_t *rawData, size_t size); 35 void TestProcess(sptr<CaptureSession> session, uint8_t *rawData, size_t size); 36 void TestAperture(sptr<CaptureSession> session, uint8_t *rawData, size_t size); 37 void TestBeauty(sptr<CaptureSession> session, uint8_t *rawData, size_t size); 38 void TestOther(sptr<CaptureSession> session, uint8_t *rawData, size_t size); 39 void TestOther2(sptr<CaptureSession> session, uint8_t *rawData, size_t size); 40 41 class SessionCallbackMock : public SessionCallback { 42 public: OnError(int32_t errorCode)43 void OnError(int32_t errorCode) override {} 44 }; 45 46 class ExposureCallbackMock : public ExposureCallback { 47 public: OnExposureState(ExposureState state)48 void OnExposureState(ExposureState state) override {} 49 }; 50 51 class FocusCallbackMock : public FocusCallback { 52 public: OnFocusState(FocusState state)53 void OnFocusState(FocusState state) override {} 54 }; 55 56 class MacroStatusCallbackMock : public MacroStatusCallback { 57 public: OnMacroStatusChanged(MacroStatus status)58 void OnMacroStatusChanged(MacroStatus status) override {} 59 }; 60 61 class MoonCaptureBoostStatusCallbackMock : public MoonCaptureBoostStatusCallback { 62 public: OnMoonCaptureBoostStatusChanged(MoonCaptureBoostStatus status)63 void OnMoonCaptureBoostStatusChanged(MoonCaptureBoostStatus status) override {} 64 }; 65 66 class FeatureDetectionStatusCallbackMock : public FeatureDetectionStatusCallback { 67 public: FeatureDetectionStatusCallbackMock(bool ret)68 explicit FeatureDetectionStatusCallbackMock(bool ret) : ret_(ret) {} OnFeatureDetectionStatusChanged(SceneFeature feature,FeatureDetectionStatus status)69 void OnFeatureDetectionStatusChanged(SceneFeature feature, FeatureDetectionStatus status) override {} IsFeatureSubscribed(SceneFeature feature)70 bool IsFeatureSubscribed(SceneFeature feature) override 71 { 72 return ret_; 73 } 74 private: 75 bool ret_; 76 }; 77 78 class EffectSuggestionCallbackMock : public EffectSuggestionCallback { 79 public: OnEffectSuggestionChange(EffectSuggestionType effectSuggestionType)80 void OnEffectSuggestionChange(EffectSuggestionType effectSuggestionType) override {} 81 }; 82 83 class ARCallbackMock : public ARCallback { 84 public: OnResult(const ARStatusInfo & arStatusInfo)85 void OnResult(const ARStatusInfo &arStatusInfo) const override {} 86 }; 87 88 class SmoothZoomCallbackMock : public SmoothZoomCallback { 89 public: OnSmoothZoom(int32_t duration)90 void OnSmoothZoom(int32_t duration) override {} 91 }; 92 93 class AbilityCallbackMock : public AbilityCallback { 94 public: OnAbilityChange()95 void OnAbilityChange() override {} 96 }; 97 98 } 99 } 100 } 101 #endif