• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2021-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 #ifndef APP_DOMAIN_VERIFY_MOCK_RDB_H
16 #define APP_DOMAIN_VERIFY_MOCK_RDB_H
17 #include "gmock/gmock.h"
18 #include "rdb_store.h"
19 namespace OHOS::AppDomainVerify {
20 void MockGetRdbStore(std::shared_ptr<OHOS::NativeRdb::RdbStore> mockRdbStore);
21 }
22 
23 namespace OHOS::NativeRdb {
24 class MockResultSet : public AbsSharedResultSet {
25 public:
26     MOCK_METHOD(int, GoToFirstRow, (), (override));
27     MOCK_METHOD(int, GoToNextRow, (), (override));
28     MOCK_METHOD(int, GetString, (int columnIndex, std::string& value), (override));
29     MOCK_METHOD(int, GetInt, (int columnIndex, int& value), (override));
30     MOCK_METHOD(int, Close, (), (override));
31 };
32 class MockRdbStore : public RdbStore {
33 public:
34     MockRdbStore() = default;
35     MOCK_METHOD(int, ExecuteSql, (const std::string& sql, const std::vector<ValueObject>& bindArgs), (override));
36     MOCK_METHOD(int, InsertWithConflictResolution,
37         (int64_t & outRowId, const std::string& table, const ValuesBucket& values,
38             ConflictResolution conflictResolution),
39         (override));
40     MOCK_METHOD(int, Delete, (int& deletedRows, const AbsRdbPredicates& predicates), (override));
41     MOCK_METHOD(int, Delete,
42         (int& deletedRows, const std::string& table, const std::string& whereClause,
43             const std::vector<std::string>& whereArgs),
44         (override));
45 
46     MOCK_METHOD(int, Delete,
47         (int& deletedRows, const std::string& table, const std::string& whereClause,
48             const std::vector<ValueObject>& bindArgs),
49         (override));
50 
51     MOCK_METHOD(std::shared_ptr<AbsSharedResultSet>, Query,
52         (const AbsRdbPredicates& predicates, const std::vector<std::string>& columns), (override));
53 
54     ~MockRdbStore() override = default;
55 
Insert(int64_t & outRowId,const std::string & table,const ValuesBucket & initialValues)56     int Insert(int64_t& outRowId, const std::string& table, const ValuesBucket& initialValues) override
57     {
58         return NativeRdb::E_ERROR;
59     };
BatchInsert(int64_t & outInsertNum,const std::string & table,const std::vector<ValuesBucket> & initialBatchValues)60     int BatchInsert(
61         int64_t& outInsertNum, const std::string& table, const std::vector<ValuesBucket>& initialBatchValues) override
62     {
63         return NativeRdb::E_ERROR;
64     };
Replace(int64_t & outRowId,const std::string & table,const ValuesBucket & initialValues)65     int Replace(int64_t& outRowId, const std::string& table, const ValuesBucket& initialValues) override
66     {
67         return NativeRdb::E_ERROR;
68     };
69 
Update(int & changedRows,const std::string & table,const ValuesBucket & values,const std::string & whereClaus,const std::vector<std::string> & whereArgs)70     int Update(int& changedRows, const std::string& table, const ValuesBucket& values, const std::string& whereClaus,
71         const std::vector<std::string>& whereArgs) override
72     {
73         return NativeRdb::E_ERROR;
74     };
Update(int & changedRows,const std::string & table,const ValuesBucket & values,const std::string & whereClause,const std::vector<ValueObject> & bindArgs)75     int Update(int& changedRows, const std::string& table, const ValuesBucket& values, const std::string& whereClause,
76         const std::vector<ValueObject>& bindArgs) override
77     {
78         return NativeRdb::E_ERROR;
79     };
UpdateWithConflictResolution(int & changedRows,const std::string & table,const ValuesBucket & values,const std::string & whereClause,const std::vector<std::string> & whereArgs,ConflictResolution conflictResolution)80     int UpdateWithConflictResolution(int& changedRows, const std::string& table, const ValuesBucket& values,
81         const std::string& whereClause, const std::vector<std::string>& whereArgs,
82         ConflictResolution conflictResolution) override
83     {
84         return NativeRdb::E_ERROR;
85     };
UpdateWithConflictResolution(int & changedRows,const std::string & table,const ValuesBucket & values,const std::string & whereClause,const std::vector<ValueObject> & bindArgs,ConflictResolution conflictResolution)86     int UpdateWithConflictResolution(int& changedRows, const std::string& table, const ValuesBucket& values,
87         const std::string& whereClause, const std::vector<ValueObject>& bindArgs,
88         ConflictResolution conflictResolution) override
89     {
90         return NativeRdb::E_ERROR;
91     };
92 
Query(int & errCode,bool distinct,const std::string & table,const std::vector<std::string> & columns,const std::string & whereClause,const std::vector<ValueObject> & bindArgs,const std::string & groupBy,const std::string & indexName,const std::string & orderBy,const int & limit,const int & offset)93     std::shared_ptr<AbsSharedResultSet> Query(int& errCode, bool distinct, const std::string& table,
94         const std::vector<std::string>& columns, const std::string& whereClause,
95         const std::vector<ValueObject>& bindArgs, const std::string& groupBy, const std::string& indexName,
96         const std::string& orderBy, const int& limit, const int& offset) override
97     {
98         return nullptr;
99     };
QuerySql(const std::string & sql,const std::vector<std::string> & selectionArgs)100     std::shared_ptr<AbsSharedResultSet> QuerySql(
101         const std::string& sql, const std::vector<std::string>& selectionArgs) override
102     {
103         return nullptr;
104     };
QuerySql(const std::string & sql,const std::vector<ValueObject> & selectionArgs)105     std::shared_ptr<AbsSharedResultSet> QuerySql(
106         const std::string& sql, const std::vector<ValueObject>& selectionArgs) override
107     {
108         return nullptr;
109     };
QueryByStep(const std::string & sql,const std::vector<std::string> & selectionArgs)110     std::shared_ptr<ResultSet> QueryByStep(
111         const std::string& sql, const std::vector<std::string>& selectionArgs) override
112     {
113         return nullptr;
114     };
QueryByStep(const std::string & sql,const std::vector<ValueObject> & bindArgs)115     std::shared_ptr<ResultSet> QueryByStep(const std::string& sql, const std::vector<ValueObject>& bindArgs) override
116     {
117         return nullptr;
118     };
119 
ExecuteAndGetLong(int64_t & outValue,const std::string & sql,const std::vector<ValueObject> & bindArgs)120     int ExecuteAndGetLong(int64_t& outValue, const std::string& sql, const std::vector<ValueObject>& bindArgs) override
121     {
122         return NativeRdb::E_ERROR;
123     };
ExecuteAndGetString(std::string & outValue,const std::string & sql,const std::vector<ValueObject> & bindArgs)124     int ExecuteAndGetString(
125         std::string& outValue, const std::string& sql, const std::vector<ValueObject>& bindArgs) override
126     {
127         return NativeRdb::E_ERROR;
128     };
ExecuteForLastInsertedRowId(int64_t & outValue,const std::string & sql,const std::vector<ValueObject> & bindArgs)129     int ExecuteForLastInsertedRowId(
130         int64_t& outValue, const std::string& sql, const std::vector<ValueObject>& bindArgs) override
131     {
132         return NativeRdb::E_ERROR;
133     };
ExecuteForChangedRowCount(int64_t & outValue,const std::string & sql,const std::vector<ValueObject> & bindArgs)134     int ExecuteForChangedRowCount(
135         int64_t& outValue, const std::string& sql, const std::vector<ValueObject>& bindArgs) override
136     {
137         return NativeRdb::E_ERROR;
138     };
Backup(const std::string & databasePath,const std::vector<uint8_t> & destEncryptKey)139     int Backup(const std::string& databasePath, const std::vector<uint8_t>& destEncryptKey) override
140     {
141         return NativeRdb::E_ERROR;
142     };
Attach(const std::string & alias,const std::string & pathName,const std::vector<uint8_t> destEncryptKey)143     int Attach(
144         const std::string& alias, const std::string& pathName, const std::vector<uint8_t> destEncryptKey) override
145     {
146         return NativeRdb::E_ERROR;
147     };
148 
Count(int64_t & outValue,const AbsRdbPredicates & predicates)149     int Count(int64_t& outValue, const AbsRdbPredicates& predicates) override
150     {
151         return NativeRdb::E_ERROR;
152     };
153 
QueryByStep(const AbsRdbPredicates & predicates,const std::vector<std::string> & columns)154     std::shared_ptr<ResultSet> QueryByStep(
155         const AbsRdbPredicates& predicates, const std::vector<std::string>& columns) override
156     {
157         return nullptr;
158     };
RemoteQuery(const std::string & device,const AbsRdbPredicates & predicates,const std::vector<std::string> & columns,int & errCode)159     std::shared_ptr<ResultSet> RemoteQuery(const std::string& device, const AbsRdbPredicates& predicates,
160         const std::vector<std::string>& columns, int& errCode) override
161     {
162         return nullptr;
163     };
Update(int & changedRows,const ValuesBucket & values,const AbsRdbPredicates & predicates)164     int Update(int& changedRows, const ValuesBucket& values, const AbsRdbPredicates& predicates) override
165     {
166         return NativeRdb::E_ERROR;
167     };
168 
GetStatus()169     virtual int GetStatus()
170     {
171         return NativeRdb::E_ERROR;
172     };
SetStatus(int status)173     virtual void SetStatus(int status){};
GetVersion(int & version)174     int GetVersion(int& version) override
175     {
176         return NativeRdb::E_ERROR;
177     };
SetVersion(int version)178     int SetVersion(int version) override
179     {
180         return NativeRdb::E_ERROR;
181     };
BeginTransaction()182     int BeginTransaction() override
183     {
184         return NativeRdb::E_ERROR;
185     };
RollBack()186     int RollBack() override
187     {
188         return NativeRdb::E_ERROR;
189     };
Commit()190     int Commit() override
191     {
192         return NativeRdb::E_ERROR;
193     };
IsInTransaction()194     bool IsInTransaction() override
195     {
196         return false;
197     };
GetPath()198     std::string GetPath() override
199     {
200         return "";
201     }
IsHoldingConnection()202     bool IsHoldingConnection() override
203     {
204         return false;
205     };
IsOpen()206     bool IsOpen() const override
207     {
208         return false;
209     };
IsReadOnly()210     bool IsReadOnly() const override
211     {
212         return false;
213     };
IsMemoryRdb()214     bool IsMemoryRdb() const override
215     {
216         return false;
217     };
Restore(const std::string & backupPath,const std::vector<uint8_t> & newKey)218     int Restore(const std::string& backupPath, const std::vector<uint8_t>& newKey) override
219     {
220         return NativeRdb::E_ERROR;
221     };
ChangeDbFileForRestore(const std::string newPath,const std::string backupPath,const std::vector<uint8_t> & newKey)222     virtual int ChangeDbFileForRestore(
223         const std::string newPath, const std::string backupPath, const std::vector<uint8_t>& newKey)
224     {
225         return NativeRdb::E_ERROR;
226     };
227 
SetDistributedTables(const std::vector<std::string> & tables,int type,const DistributedRdb::DistributedConfig & distributedConfig)228     int SetDistributedTables(const std::vector<std::string>& tables, int type,
229         const DistributedRdb::DistributedConfig& distributedConfig) override
230     {
231         return E_ERROR;
232     };
233 
ObtainDistributedTableName(const std::string & device,const std::string & table,int & errCode)234     std::string ObtainDistributedTableName(const std::string& device, const std::string& table, int& errCode) override
235     {
236         return "";
237     }
238 
Sync(const SyncOption & option,const AbsRdbPredicates & predicate,const AsyncBrief & async)239     int Sync(const SyncOption& option, const AbsRdbPredicates& predicate, const AsyncBrief& async) override
240     {
241         return E_ERROR;
242     };
243 
Sync(const SyncOption & option,const AbsRdbPredicates & predicate,const AsyncDetail & async)244     int Sync(const SyncOption& option, const AbsRdbPredicates& predicate, const AsyncDetail& async) override
245     {
246         return E_ERROR;
247     };
248 
Sync(const SyncOption & option,const std::vector<std::string> & tables,const AsyncDetail & async)249     int Sync(const SyncOption& option, const std::vector<std::string>& tables, const AsyncDetail& async) override
250     {
251         return E_ERROR;
252     };
253 
Subscribe(const SubscribeOption & option,RdbStoreObserver * observer)254     int Subscribe(const SubscribeOption& option, RdbStoreObserver* observer) override
255     {
256         return E_ERROR;
257     };
258 
UnSubscribe(const SubscribeOption & option,RdbStoreObserver * observer)259     int UnSubscribe(const SubscribeOption& option, RdbStoreObserver* observer) override
260     {
261         return E_ERROR;
262     };
263 
RegisterAutoSyncCallback(std::shared_ptr<DetailProgressObserver> syncObserver)264     int RegisterAutoSyncCallback(std::shared_ptr<DetailProgressObserver> syncObserver) override
265     {
266         return E_ERROR;
267     };
268 
UnregisterAutoSyncCallback(std::shared_ptr<DetailProgressObserver> syncObserver)269     int UnregisterAutoSyncCallback(std::shared_ptr<DetailProgressObserver> syncObserver) override
270     {
271         return E_ERROR;
272     };
273 
Notify(const std::string & event)274     int Notify(const std::string& event) override
275     {
276         return E_ERROR;
277     }
278 
DropDeviceData(const std::vector<std::string> & devices,const DropOption & option)279     virtual bool DropDeviceData(const std::vector<std::string>& devices, const DropOption& option)
280     {
281         return false;
282     };
283 
GetModifyTime(const std::string & table,const std::string & columnName,std::vector<PRIKey> & keys)284     ModifyTime GetModifyTime(
285         const std::string& table, const std::string& columnName, std::vector<PRIKey>& keys) override
286     {
287         return {};
288     };
289 
CleanDirtyData(const std::string & table,uint64_t cursor)290     int CleanDirtyData(const std::string& table, uint64_t cursor) override
291     {
292         return E_ERROR;
293     };
294 
GetRebuilt(RebuiltType & rebuilt)295     int GetRebuilt(RebuiltType& rebuilt) override
296     {
297         return E_OK;
298     }
299 };
300 
301 }
302 #endif  // APP_DOMAIN_VERIFY_MOCK_RDB_H
303