1 /*
2  * Copyright (C) 2024 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 MOCK_SIM_MANAGER_H
17 #define MOCK_SIM_MANAGER_H
18 
19 #include <gtest/gtest.h>
20 #include <gmock/gmock.h>
21 #include "i_sim_manager.h"
22 
23 namespace OHOS {
24 namespace Telephony {
25 
26 class MockSimManager : public ISimManager {
27 public:
28     MockSimManager() = default;
29     virtual ~MockSimManager() = default;
30 
31     MOCK_METHOD0(GetDefaultVoiceSlotId, int32_t(void));
32     MOCK_METHOD0(GetDefaultSmsSlotId, int32_t(void));
33     MOCK_METHOD0(GetDefaultCellularDataSlotId, int32_t(void));
34     MOCK_METHOD0(IsSetPrimarySlotIdInProgress, bool(void));
35     MOCK_METHOD1(OnInit, bool(int32_t));
36     MOCK_METHOD1(InitTelExtraModule, int32_t(int32_t));
37     MOCK_METHOD1(RefreshSimState, int32_t(int32_t));
38     MOCK_METHOD1(IsSimActive, bool(int32_t));
39     MOCK_METHOD1(SetDefaultVoiceSlotId, int32_t(int32_t));
40     MOCK_METHOD1(SetDefaultSmsSlotId, int32_t(int32_t));
41     MOCK_METHOD1(SetDefaultCellularDataSlotId, int32_t(int32_t));
42     MOCK_METHOD1(SetPrimarySlotId, int32_t(int32_t));
43     MOCK_METHOD1(GetDefaultVoiceSimId, int32_t(int32_t &));
44     MOCK_METHOD1(GetDefaultSmsSimId, int32_t(int32_t &));
45     MOCK_METHOD1(GetDefaultCellularDataSimId, int32_t(int32_t &));
46     MOCK_METHOD1(GetPrimarySlotId, int32_t(int32_t &));
47     MOCK_METHOD1(UpdateOperatorConfigs, int32_t(int32_t));
48     MOCK_METHOD1(GetRadioProtocolTech, int32_t(int32_t));
49     MOCK_METHOD1(GetRadioProtocol, void(int32_t));
50     MOCK_METHOD1(GetDsdsMode, int32_t(int32_t &));
51     MOCK_METHOD1(SetDsdsMode, int32_t(int32_t));
52     MOCK_METHOD1(GetLocaleFromDefaultSim, std::u16string(int32_t));
53     MOCK_METHOD1(GetSlotId, int32_t(int32_t));
54     MOCK_METHOD1(GetSimId, int32_t(int32_t));
55     MOCK_METHOD1(GetSimGid2, std::u16string(int32_t));
56     MOCK_METHOD1(GetSimIst, std::u16string(int32_t));
57     MOCK_METHOD1(ObtainAllSmsOfIcc, std::vector<std::string>(int32_t));
58     MOCK_METHOD1(IsSetActiveSimInProgress, bool(int32_t));
59     MOCK_METHOD1(UnregisterSimAccountCallback, int32_t(const int32_t));
60     MOCK_METHOD1(GetSimTeleNumberIdentifier, std::u16string(const int32_t));
61     MOCK_METHOD1(SavePrimarySlotId, int32_t(int32_t));
62     MOCK_METHOD2(HasSimCard, int32_t(int32_t, bool &));
63     MOCK_METHOD2(GetSimState, int32_t(int32_t, SimState &));
64     MOCK_METHOD2(GetSimIccStatus, int32_t(int32_t, IccSimStatus &));
65     MOCK_METHOD2(GetCardType, int32_t(int32_t, CardType &));
66     MOCK_METHOD2(SetModemInit, int32_t(int32_t, bool));
67     MOCK_METHOD2(SetActiveSim, int32_t(int32_t, int32_t));
68     MOCK_METHOD2(GetShowNumber, int32_t(int32_t, std::u16string &));
69     MOCK_METHOD2(GetShowName, int32_t(int32_t, std::u16string &));
70     MOCK_METHOD2(GetActiveSimAccountInfoList, int32_t(bool, std::vector<IccAccountInfo> &));
71     MOCK_METHOD2(GetOperatorConfigs, int32_t(int, OperatorConfig &));
72     MOCK_METHOD2(SendCallSetupRequestResult, int32_t(int32_t, bool));
73     MOCK_METHOD2(GetSimOperatorNumeric, int32_t(int32_t, std::u16string &));
74     MOCK_METHOD2(GetISOCountryCodeForSim, int32_t(int32_t, std::u16string &));
75     MOCK_METHOD2(GetSimSpn, int32_t(int32_t, std::u16string &));
76     MOCK_METHOD2(GetSimIccId, int32_t(int32_t, std::u16string &));
77     MOCK_METHOD2(GetIMSI, int32_t(int32_t, std::u16string &));
78     MOCK_METHOD2(GetSimGid1, int32_t(int32_t, std::u16string &));
79     MOCK_METHOD2(GetOpName, int32_t(int32_t, std::u16string &));
80     MOCK_METHOD2(GetOpKey, int32_t(int32_t, std::u16string &));
81     MOCK_METHOD2(GetOpKeyExt, int32_t(int32_t, std::u16string &));
82     MOCK_METHOD2(GetSimTelephoneNumber, int32_t(int32_t, std::u16string &));
83     MOCK_METHOD2(GetVoiceMailIdentifier, int32_t(int32_t, std::u16string &));
84     MOCK_METHOD2(GetVoiceMailNumber, int32_t(int32_t, std::u16string &));
85     MOCK_METHOD2(GetVoiceMailCount, int32_t(int32_t, int32_t &));
86     MOCK_METHOD2(SetVoiceMailCount, int32_t(int32_t, int32_t));
87     MOCK_METHOD2(IsCTSimCard, int32_t(int32_t, bool &));
88     MOCK_METHOD2(DelSmsIcc, int32_t(int32_t, int));
89     MOCK_METHOD2(SaveImsSwitch, int32_t(int32_t, int32_t));
90     MOCK_METHOD2(QueryImsSwitch, int32_t(int32_t, int32_t &));
91     MOCK_METHOD2(SetShowNumber, int32_t(int32_t, const std::u16string &));
92     MOCK_METHOD2(SetShowName, int32_t(int32_t, const std::u16string &));
93     MOCK_METHOD2(HasOperatorPrivileges, int32_t(const int32_t, bool &));
94     MOCK_METHOD2(SendEnvelopeCmd, int32_t(int32_t, const std::string &));
95     MOCK_METHOD2(SendTerminalResponseCmd, int32_t(int32_t, const std::string &));
96     MOCK_METHOD2(RegisterSimAccountCallback, int32_t(const int32_t, const sptr<SimAccountCallback> &));
97     MOCK_METHOD3(GetLockState, int32_t(int32_t, LockType, LockState &));
98     MOCK_METHOD3(GetSimAccountInfo, int32_t(int32_t, bool, IccAccountInfo &));
99     MOCK_METHOD3(ObtainSpnCondition, int(int32_t, bool, std::string));
100     MOCK_METHOD3(QueryIccDiallingNumbers, int32_t(int, int, std::vector<std::shared_ptr<DiallingNumbersInfo>> &));
101     MOCK_METHOD3(UnlockPin, int32_t(int32_t, const std::string &, LockStatusResponse &));
102     MOCK_METHOD3(SetLockState, int32_t(int32_t, const LockInfo &, LockStatusResponse &));
103     MOCK_METHOD3(UnlockPin2, int32_t(int32_t, const std::string &, LockStatusResponse &));
104     MOCK_METHOD3(UnlockSimLock, int32_t(int32_t, const PersoLockInfo &, LockStatusResponse &));
105     MOCK_METHOD3(SetVoiceCallForwarding, int32_t(int32_t, bool, const std::string &));
106     MOCK_METHOD3(AddIccDiallingNumbers, int32_t(int, int, const std::shared_ptr<DiallingNumbersInfo> &));
107     MOCK_METHOD3(DelIccDiallingNumbers, int32_t(int, int, const std::shared_ptr<DiallingNumbersInfo> &));
108     MOCK_METHOD3(UpdateIccDiallingNumbers, int32_t(int, int, const std::shared_ptr<DiallingNumbersInfo> &));
109     MOCK_METHOD3(RegisterCoreNotify, void(int32_t, const HANDLE &, int));
110     MOCK_METHOD3(UnRegisterCoreNotify, void(int32_t, const HANDLE &, int));
111     MOCK_METHOD3(SetVoiceMailInfo, int32_t(int32_t, const std::u16string &, const std::u16string &));
112     MOCK_METHOD4(AddSmsToIcc, int32_t(int32_t, int, std::string &, std::string &));
113     MOCK_METHOD4(SimAuthentication, int32_t(int32_t, AuthType, const std::string &, SimAuthenticationResponse &));
114     MOCK_METHOD4(GetSimEons, std::u16string(int32_t, const std::string &, int32_t, bool));
115     MOCK_METHOD4(UnlockPuk, int32_t(int32_t, const std::string &, const std::string &, LockStatusResponse &));
116     MOCK_METHOD4(AlterPin, int32_t(int32_t, const std::string &, const std::string &, LockStatusResponse &));
117     MOCK_METHOD4(UnlockPuk2, int32_t(int32_t, const std::string &, const std::string &, LockStatusResponse &));
118     MOCK_METHOD4(AlterPin2, int32_t(int32_t, const std::string &, const std::string &, LockStatusResponse &));
119     MOCK_METHOD4(SendSimMatchedOperatorInfo, int32_t(int32_t, int32_t, const std::string &, const std::string &));
120     MOCK_METHOD5(UpdateSmsIcc, int32_t(int32_t, int, int, std::string &, std::string &));
121     MOCK_METHOD6(GetSimIO, int32_t(int32_t, int32_t, int32_t, const std::string &, const std::string &,
122                                    SimAuthenticationResponse &));
123 };
124 }  // namespace Telephony
125 }  // namespace OHOS
126 #endif  // MOCK_SIM_MANAGER_H