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 FOUNDATION_ACE_TEST_MOCK_CORE_COMMON_MOCK_INTERACTION_H
17 #define FOUNDATION_ACE_TEST_MOCK_CORE_COMMON_MOCK_INTERACTION_H
18 
19 #include "gmock/gmock-function-mocker.h"
20 #include "gmock/gmock.h"
21 
22 #include "base/memory/ace_type.h"
23 #include "core/common/interaction/interaction_interface.h"
24 
25 namespace OHOS::Ace {
26 class MockInteractionInterface : public InteractionInterface {
27     DECLARE_ACE_TYPE(MockInteractionInterface, InteractionInterface);
28 
29 public:
30     MOCK_METHOD(int32_t, UpdateShadowPic, (const ShadowInfoCore& shadowInfo), (override));
31 
32     MOCK_METHOD(int32_t, SetDragWindowVisible, (bool visible), (override));
33 
34     MOCK_METHOD(int32_t, SetMouseDragMonitorState, (bool state), (override));
35 
36     MOCK_METHOD(int32_t, StartDrag, (const DragDataCore& dragData,
37         std::function<void(const OHOS::Ace::DragNotifyMsg&)> callback), (override));
38 
39     MOCK_METHOD(int32_t, UpdateDragStyle, (DragCursorStyleCore style, const int32_t eventId), (override));
40 
41     MOCK_METHOD(int32_t, UpdatePreviewStyle, (const PreviewStyle& previewStyle), (override));
42 
43     MOCK_METHOD(int32_t, UpdatePreviewStyleWithAnimation, (const PreviewStyle& previewStyle,
44         const PreviewAnimation& animation), (override));
45 
46     MOCK_METHOD(int32_t, StopDrag, (DragDropRet result), (override));
47 
48     MOCK_METHOD(int32_t, GetUdKey, (std::string& udKey), (override));
49 
50     MOCK_METHOD(int32_t, GetShadowOffset, (ShadowOffsetData& shadowOffsetData), (override));
51 
52     MOCK_METHOD(int32_t, GetDragSummary, ((std::map<std::string, int64_t>& summary)), (override));
53 
54     MOCK_METHOD(int32_t, GetDragExtraInfo, (std::string& extraInfo), (override));
55 
56     MOCK_METHOD(int32_t, GetDragState, (DragState& dragState), (const, override));
57 
58     MOCK_METHOD(int32_t, AddPrivilege, (), (override));
59 
60     MOCK_METHOD(int32_t, EnterTextEditorArea, (bool enable), (override));
61 
62     MOCK_METHOD(int32_t, RegisterCoordinationListener, (std::function<void()> dragOutCallback), (override));
63 
64     MOCK_METHOD(int32_t, UnRegisterCoordinationListener, (), (override));
65 
66 private:
67     std::function<void()> gDragOutCallback = nullptr;
68 };
69 } // namespace OHOS::Ace
70 #endif // FOUNDATION_ACE_TEST_MOCK_CORE_COMMON_MOCK_INTERACTION_H