1 2 /* 3 * Copyright (c) 2023 Huawei Device Co., Ltd. 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 #ifndef FOUNDATION_ACE_INTERFACE_INNERKITS_ACE_TEST_MOCK_MOCK_UICONTENT_H 18 #define FOUNDATION_ACE_INTERFACE_INNERKITS_ACE_TEST_MOCK_MOCK_UICONTENT_H 19 20 #include "gmock/gmock.h" 21 #include "native_engine/native_engine.h" 22 #include "native_engine/native_value.h" 23 #include "ui_content.h" 24 #include "iremote_object.h" 25 #include "accessibility_element_info.h" 26 #include "serialized_gesture.h" 27 28 namespace OHOS { 29 namespace Ace { 30 class MockUIContent : public UIContent { 31 public: 32 MockUIContent() = default; 33 ~MockUIContent() override = default; 34 35 MOCK_METHOD3(Initialize, UIContentErrorCode(OHOS::Rosen::Window* window, const std::string& url, 36 napi_value storage)); 37 MOCK_METHOD3(Initialize, UIContentErrorCode(OHOS::Rosen::Window* window, 38 const std::shared_ptr<std::vector<uint8_t>>& content, napi_value storage)); 39 MOCK_METHOD3(InitializeByName, UIContentErrorCode(OHOS::Rosen::Window *window, 40 const std::string &name, napi_value storage)); 41 MOCK_METHOD4(Initialize, 42 void(OHOS::Rosen::Window* window, const std::string& url, napi_value storage, uint32_t focusWindowID)); 43 MOCK_METHOD0(Foreground, void()); 44 MOCK_METHOD0(Background, void()); 45 MOCK_METHOD0(Focus, void()); 46 MOCK_METHOD0(UnFocus, void()); 47 MOCK_METHOD0(Destroy, void()); 48 MOCK_METHOD1(OnNewWant, void(const OHOS::AAFwk::Want& want)); 49 MOCK_METHOD4(Restore, UIContentErrorCode(OHOS::Rosen::Window* window, const std::string& contentInfo, 50 napi_value storage, ContentInfoType type)); 51 MOCK_CONST_METHOD1(GetContentInfo, std::string(ContentInfoType type)); 52 MOCK_METHOD0(DestroyUIDirector, void()); 53 MOCK_METHOD0(ProcessBackPressed, bool()); 54 MOCK_METHOD1(ProcessPointerEvent, bool(const std::shared_ptr<OHOS::MMI::PointerEvent>& pointerEvent)); 55 MOCK_METHOD2(ProcessPointerEventWithCallback, 56 bool(const std::shared_ptr<OHOS::MMI::PointerEvent>& pointerEvent, const std::function<void()>& callback)); 57 MOCK_METHOD2(ProcessKeyEvent, bool(const std::shared_ptr<OHOS::MMI::KeyEvent>& keyEvent, bool isPreIme)); 58 MOCK_METHOD1(ProcessAxisEvent, bool(const std::shared_ptr<OHOS::MMI::AxisEvent>& axisEvent)); 59 MOCK_METHOD1(ProcessVsyncEvent, bool(uint64_t timeStampNanos)); 60 MOCK_METHOD1(UpdateConfiguration, void(const std::shared_ptr<OHOS::AppExecFwk::Configuration>& config)); 61 MOCK_METHOD2(UpdateWindowMode, void(OHOS::Rosen::WindowMode mode, bool hasDeco)); 62 MOCK_METHOD2(UpdateTitleInTargetPos, void(bool isShow, int32_t height)); 63 MOCK_METHOD2(UpdateDecorVisible, void(bool visible, bool hasDeco)); 64 MOCK_METHOD4(HideWindowTitleButton, void(bool hideSplit, bool hideMaximize, bool hideMinimize, bool hideClose)); 65 MOCK_METHOD1(SetIgnoreViewSafeArea, void(bool ignoreViewSafeArea)); 66 MOCK_METHOD0(GetBackgroundColor, uint32_t()); 67 MOCK_METHOD1(SetBackgroundColor, void(uint32_t color)); 68 MOCK_METHOD2(DumpInfo, void(const std::vector<std::string>& params, std::vector<std::string>& info)); 69 MOCK_METHOD1(SetNextFrameLayoutCallback, void(std::function<void()>&& callback)); 70 MOCK_METHOD1(NotifyMemoryLevel, void(int32_t level)); 71 MOCK_METHOD1(SetAppWindowTitle, void(const std::string& title)); 72 MOCK_METHOD1(SetAppWindowIcon, void(const std::shared_ptr<Media::PixelMap>& pixelMap)); 73 MOCK_METHOD3(PreInitializeForm, void(OHOS::Rosen::Window* window, const std::string& url, napi_value storage)); 74 MOCK_METHOD0(RunFormPage, void()); 75 MOCK_METHOD0(GetFormRootNode, std::shared_ptr<Rosen::RSSurfaceNode>()); 76 MOCK_METHOD1(UpdateFormData, void(const std::string& data)); 77 MOCK_METHOD1( 78 UpdateFormSharedImage, void(const std::map<std::string, sptr<OHOS::AppExecFwk::FormAshmem>>& imageDataMap)); 79 MOCK_METHOD1(SetFormWidth, void(const float width)); 80 MOCK_METHOD1(SetFormHeight, void(const float height)); 81 MOCK_METHOD0(GetFormWidth, float()); 82 MOCK_METHOD0(GetFormHeight, float()); 83 MOCK_METHOD4(OnFormSurfaceChange, void(float width, float height, OHOS::Rosen::WindowSizeChangeReason reason, 84 const std::shared_ptr<OHOS::Rosen::RSTransaction> &rsTransaction)); 85 MOCK_METHOD1(SetActionEventHandler, void(std::function<void(const std::string& action)>&& actionCallback)); 86 MOCK_METHOD1(SetFormLinkInfoUpdateHandler, void(std::function<void(const std::vector<std::string>&)>&& callback)); 87 MOCK_METHOD1(SetErrorEventHandler, 88 void(std::function<void(const std::string& code, const std::string& msg)>&& actionCallback)); 89 MOCK_METHOD1(ReloadForm, void(const std::string& url)); 90 MOCK_METHOD1(SetIsFocusActive, void(bool isFocusActive)); 91 92 MOCK_METHOD3(CreateModalUIExtension, int32_t(const AAFwk::Want& want, 93 const ModalUIExtensionCallbacks& callbacks, const ModalUIExtensionConfig& config)); 94 MOCK_METHOD1(CloseModalUIExtension, void(int32_t sessionId)); 95 MOCK_METHOD1(SetParentToken, void(sptr<IRemoteObject> token)); 96 MOCK_METHOD0(GetParentToken, sptr<IRemoteObject>()); 97 98 MOCK_METHOD2(SetContainerModalTitleVisible, void(bool customTitleSettedShow, bool floatingTitleSettedShow)); 99 MOCK_METHOD1(SetContainerModalTitleHeight, void(int height)); 100 MOCK_METHOD0(GetContainerModalTitleHeight, int()); 101 MOCK_METHOD2(GetContainerModalButtonsRect, bool(Rosen::Rect& containerModal, Rosen::Rect& buttons)); 102 MOCK_METHOD1(SubscribeContainerModalButtonsRectChange, void( 103 std::function<void(Rosen::Rect& containerModal, Rosen::Rect& buttons)>&& callback)); 104 MOCK_METHOD0(GetFormSerializedGesture, SerializedGesture()); 105 MOCK_METHOD1(SetUIExtensionSubWindow, void(bool isUIExtensionSubWindow)); 106 MOCK_METHOD1(SetUIExtensionAbilityProcess, void(bool isUIExtensionAbilityProcess)); 107 MOCK_METHOD1(SetUIExtensionAbilityHost, void(bool isUIExtensionAbilityHost)); 108 MOCK_METHOD0(IsUIExtensionSubWindow, bool()); 109 MOCK_METHOD0(IsUIExtensionAbilityProcess, bool()); 110 MOCK_METHOD0(IsUIExtensionAbilityHost, bool()); 111 MOCK_METHOD2(SetForceSplitEnable, void(bool isForceSplit, const std::string& homePage)); 112 113 #ifndef PREVIEW 114 MOCK_METHOD4( 115 SearchElementInfoByAccessibilityId, void(int64_t elementId, 116 int32_t mode, int64_t baseParent, std::list<Accessibility::AccessibilityElementInfo>& output)); 117 MOCK_METHOD4( 118 SearchElementInfosByText, void(int64_t elementId, 119 const std::string& text, int64_t baseParent, std::list<Accessibility::AccessibilityElementInfo>& output)); 120 MOCK_METHOD4( 121 FindFocusedElementInfo, void(int64_t elementId, 122 int32_t focusType, int64_t baseParent, Accessibility::AccessibilityElementInfo& output)); 123 MOCK_METHOD4( 124 FocusMoveSearch, void(int64_t elementId, int32_t direction, 125 int64_t baseParent, Accessibility::AccessibilityElementInfo& output)); 126 #endif 127 MOCK_METHOD1(GetAppPaintSize, void(OHOS::Rosen::Rect&)); 128 MOCK_METHOD1(GetWindowPaintSize, void(OHOS::Rosen::Rect&)); 129 MOCK_METHOD3(CreateCustomPopupUIExtension, int32_t(const AAFwk::Want& want, 130 const ModalUIExtensionCallbacks& callbacks, const CustomPopupUIExtensionConfig& config)); 131 MOCK_METHOD1(DestroyCustomPopupUIExtension, void(int32_t nodeId)); 132 MOCK_METHOD1(UpdateTransform, void(const OHOS::Rosen::Transform& transform)); 133 MOCK_METHOD1(SetContentNodeGrayScale, void(float grayscale)); 134 MOCK_METHOD1(EnableContainerModalGesture, void(bool isEnable)); 135 MOCK_METHOD1(UpdateConfigurationSyncForAll, void(const std::shared_ptr<OHOS::AppExecFwk::Configuration>& config)); 136 }; 137 } // namespace Ace 138 } // namespace OHOS 139 140 #endif // FOUNDATION_ACE_INTERFACE_INNERKITS_ACE_TEST_MOCK_MOCK_UICONTENT_H 141