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 #ifndef MOCK_RDB_STORE_H 16 #define MOCK_RDB_STORE_H 17 18 #include <string> 19 20 namespace OHOS { 21 namespace AppExecFwk { 22 using namespace OHOS::NativeRdb; 23 24 class MockRdbStore : public RdbStore { 25 public: MockRdbStore(const RdbStoreConfig& config)26 MockRdbStore(const RdbStoreConfig& config) {} MockRdbStore(const RdbStoreConfig& config, int& errCode)27 MockRdbStore(const RdbStoreConfig& config, int& errCode) {} ~MockRdbStore()28 virtual ~MockRdbStore() {} 29 30 MOCK_METHOD3(Insert, int(int64_t&, const std::string&, const ValuesBucket&)); 31 MOCK_METHOD3(BatchInsert, int(int64_t&, const std::string&, const std::vector<ValuesBucket>&)); 32 MOCK_METHOD3(Replace, int(int64_t&, const std::string&, const ValuesBucket&)); 33 MOCK_METHOD4(InsertWithConflictResolution, int(int64_t&, const std::string&, const ValuesBucket&, 34 ConflictResolution)); 35 MOCK_METHOD5(Update, int(int&, const std::string&, const ValuesBucket&, 36 const std::string&, const std::vector<std::string>&)); 37 MOCK_METHOD5(Update, int(int&, const std::string&, const ValuesBucket&, 38 const std::string&, const std::vector<ValueObject>&)); 39 MOCK_METHOD6(UpdateWithConflictResolution, int(int&, const std::string&, const ValuesBucket&, 40 const std::string&, const std::vector<std::string>&, ConflictResolution)); 41 MOCK_METHOD6(UpdateWithConflictResolution, int(int&, const std::string&, const ValuesBucket&, 42 const std::string&, const std::vector<ValueObject>&, ConflictResolution)); 43 MOCK_METHOD4(Delete, int(int&, const std::string&, const std::string&, const std::vector<std::string>&)); 44 MOCK_METHOD4(Delete, int(int&, const std::string&, const std::string&, const std::vector<ValueObject>&)); 45 MOCK_METHOD11(Query, std::shared_ptr<AbsSharedResultSet>(int&, bool, const std::string&, 46 const std::vector<std::string>&, const std::string&, const std::vector<ValueObject>&, 47 const std::string&, const std::string&, const std::string&, const int&, const int&)); 48 MOCK_METHOD2(QuerySql, std::shared_ptr<AbsSharedResultSet>(const std::string&, const std::vector<std::string>&)); 49 MOCK_METHOD2(QuerySql, std::shared_ptr<AbsSharedResultSet>(const std::string&, const std::vector<ValueObject>&)); 50 MOCK_METHOD2(QueryByStep, std::shared_ptr<ResultSet>(const std::string&, const std::vector<std::string>&)); 51 MOCK_METHOD2(QueryByStep, std::shared_ptr<ResultSet>(const std::string&, const std::vector<ValueObject>&)); 52 MOCK_METHOD2(ExecuteSql, int(const std::string&, const std::vector<ValueObject>&)); 53 MOCK_METHOD3(ExecuteAndGetLong, int(int64_t&, const std::string&, const std::vector<ValueObject>&)); 54 MOCK_METHOD3(ExecuteAndGetString, int(std::string&, const std::string&, const std::vector<ValueObject>&)); 55 MOCK_METHOD3(ExecuteForLastInsertedRowId, int(int64_t&, const std::string&, const std::vector<ValueObject>&)); 56 MOCK_METHOD3(ExecuteForChangedRowCount, int(int64_t&, const std::string&, const std::vector<ValueObject>&)); 57 MOCK_METHOD2(Backup, int(const std::string&, const std::vector<uint8_t>&)); 58 MOCK_METHOD2(Count, int(int64_t&, const AbsRdbPredicates&)); 59 MOCK_METHOD2(Query, std::shared_ptr<AbsSharedResultSet>(const AbsRdbPredicates&, const std::vector<std::string>&)); 60 MOCK_METHOD2(QueryByStep, std::shared_ptr<ResultSet>(const AbsRdbPredicates&, const std::vector<std::string>&)); 61 MOCK_METHOD4(RemoteQuery, std::shared_ptr<ResultSet>(const std::string&, const AbsRdbPredicates&, 62 const std::vector<std::string>&, int&)); 63 MOCK_METHOD3(Update, int(int&, const ValuesBucket&, const AbsRdbPredicates&)); 64 MOCK_METHOD2(Delete, int(int&, const AbsRdbPredicates&)); 65 MOCK_METHOD1(GetVersion, int(int&)); 66 MOCK_METHOD1(SetVersion, int(int)); 67 MOCK_METHOD0(BeginTransaction, int()); 68 MOCK_METHOD0(RollBack, int()); 69 MOCK_METHOD0(Commit, int()); 70 MOCK_METHOD0(IsInTransaction, bool()); 71 MOCK_METHOD0(GetPath, std::string()); 72 MOCK_METHOD0(IsHoldingConnection, bool()); 73 MOCK_CONST_METHOD0(IsOpen, bool()); 74 MOCK_CONST_METHOD0(IsReadOnly, bool()); 75 MOCK_CONST_METHOD0(IsMemoryRdb, bool()); 76 MOCK_METHOD2(Restore, int(const std::string&, const std::vector<uint8_t>&)); 77 MOCK_METHOD3(SetDistributedTables, int(const std::vector<std::string>&, int32_t, 78 const DistributedRdb::DistributedConfig&)); 79 MOCK_METHOD3(ObtainDistributedTableName, std::string(const std::string&, const std::string&, int&)); 80 MOCK_METHOD3(Sync, int(const SyncOption&, const AbsRdbPredicates&, const AsyncBrief&)); 81 MOCK_METHOD3(Sync, int(const SyncOption&, const std::vector<std::string>&, const AsyncDetail&)); 82 MOCK_METHOD3(Sync, int(const SyncOption&, const AbsRdbPredicates&, const AsyncDetail&)); 83 MOCK_METHOD2(Subscribe, int(const SubscribeOption&, RdbStoreObserver*)); 84 MOCK_METHOD2(UnSubscribe, int(const SubscribeOption&, RdbStoreObserver*)); 85 MOCK_METHOD1(RegisterAutoSyncCallback, int(std::shared_ptr<DetailProgressObserver>)); 86 MOCK_METHOD1(UnregisterAutoSyncCallback, int(std::shared_ptr<DetailProgressObserver>)); 87 MOCK_METHOD1(Notify, int(const std::string&)); 88 MOCK_CONST_METHOD0(IsSlaveDiffFromMaster, bool()); 89 MOCK_METHOD3(GetModifyTime, ModifyTime(const std::string&, const std::string&, std::vector<PRIKey>&)); 90 MOCK_METHOD2(CleanDirtyData, int(const std::string&, uint64_t)); 91 MOCK_METHOD1(GetRebuilt, int(RebuiltType&)); 92 }; 93 } 94 } 95 #endif // MOCK_RDB_STORE_H 96