1 /*
2  * Copyright (c) 2022 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 #include "mock_single_kv_store.h"
17 #include "types.h"
18 
19 namespace {
20     bool g_mockSubscribeKvStoreRet = true;
21     bool g_mockRemoveDeviceDataRet = true;
22 }
23 
MockSubscribeKvStore(bool mockRet)24 void MockSubscribeKvStore(bool mockRet)
25 {
26     g_mockSubscribeKvStoreRet = mockRet;
27 }
28 
MockRemoveDeviceData(bool mockRet)29 void MockRemoveDeviceData(bool mockRet)
30 {
31     g_mockRemoveDeviceDataRet = mockRet;
32 }
33 
34 namespace OHOS {
35 namespace DistributedKv {
GetEntries(const Key & prefixKey,std::vector<Entry> & entries) const36 Status MockSingleKvStore::GetEntries(const Key &prefixKey, std::vector<Entry> &entries) const
37 {
38     return Status::INVALID_ARGUMENT;
39 }
40 
GetEntries(const DataQuery & query,std::vector<Entry> & entries) const41 Status MockSingleKvStore::GetEntries(const DataQuery &query, std::vector<Entry> &entries) const
42 {
43     return Status::SUCCESS;
44 }
45 
GetResultSet(const Key & prefixKey,std::shared_ptr<KvStoreResultSet> & resultSet) const46 Status MockSingleKvStore::GetResultSet(const Key &prefixKey, std::shared_ptr<KvStoreResultSet> &resultSet) const
47 {
48     return Status::SUCCESS;
49 }
50 
GetResultSet(const DataQuery & query,std::shared_ptr<KvStoreResultSet> & resultSet) const51 Status MockSingleKvStore::GetResultSet(
52     const DataQuery &query, std::shared_ptr<KvStoreResultSet> &resultSet) const
53 {
54     return Status::SUCCESS;
55 }
56 
CloseResultSet(std::shared_ptr<KvStoreResultSet> & resultSet)57 Status MockSingleKvStore::CloseResultSet(std::shared_ptr<KvStoreResultSet> &resultSet)
58 {
59     return Status::SUCCESS;
60 }
61 
GetCount(const DataQuery & query,int & result) const62 Status MockSingleKvStore::GetCount(const DataQuery &query, int &result) const
63 {
64     return Status::SUCCESS;
65 }
66 
Sync(const std::vector<std::string> & deviceIds,SyncMode mode,uint32_t allowedDelayMs)67 Status MockSingleKvStore::Sync(const std::vector<std::string> &deviceIds, SyncMode mode, uint32_t allowedDelayMs)
68 {
69     return Status::SUCCESS;
70 }
71 
RemoveDeviceData(const std::string & device)72 Status MockSingleKvStore::RemoveDeviceData(const std::string &device)
73 {
74     if (false == g_mockRemoveDeviceDataRet) {
75         return Status::INVALID_ARGUMENT;
76     }
77     return Status::SUCCESS;
78 }
79 
GetStoreId() const80 StoreId MockSingleKvStore::GetStoreId() const
81 {
82     StoreId storeId;
83     storeId.storeId = "";
84     return storeId;
85 }
86 
Delete(const Key & key)87 Status MockSingleKvStore::Delete(const Key &key)
88 {
89     return Status::INVALID_ARGUMENT;
90 }
91 
Put(const Key & key,const Value & value)92 Status MockSingleKvStore::Put(const Key &key, const Value &value)
93 {
94     return Status::INVALID_ARGUMENT;
95 }
96 
Get(const Key & key,Value & value)97 Status MockSingleKvStore::Get(const Key &key, Value &value)
98 {
99     return Status::INVALID_ARGUMENT;
100 }
101 
SubscribeKvStore(SubscribeType subscribeType,std::shared_ptr<KvStoreObserver> observer)102 Status MockSingleKvStore::SubscribeKvStore(SubscribeType subscribeType, std::shared_ptr<KvStoreObserver> observer)
103 {
104     if (false == g_mockSubscribeKvStoreRet) {
105         return Status::INVALID_ARGUMENT;
106     }
107     return Status::SUCCESS;
108 }
109 
UnSubscribeKvStore(SubscribeType subscribeType,std::shared_ptr<KvStoreObserver> observer)110 Status MockSingleKvStore::UnSubscribeKvStore(SubscribeType subscribeType, std::shared_ptr<KvStoreObserver> observer)
111 {
112     return Status::SUCCESS;
113 }
114 
RegisterSyncCallback(std::shared_ptr<KvStoreSyncCallback> callback)115 Status MockSingleKvStore::RegisterSyncCallback(std::shared_ptr<KvStoreSyncCallback> callback)
116 {
117     return Status::SUCCESS;
118 }
119 
UnRegisterSyncCallback()120 Status MockSingleKvStore::UnRegisterSyncCallback()
121 {
122     return Status::SUCCESS;
123 }
124 
PutBatch(const std::vector<Entry> & entries)125 Status MockSingleKvStore::PutBatch(const std::vector<Entry> &entries)
126 {
127     return Status::SUCCESS;
128 }
129 
DeleteBatch(const std::vector<Key> & keys)130 Status MockSingleKvStore::DeleteBatch(const std::vector<Key> &keys)
131 {
132     return Status::SUCCESS;
133 }
134 
StartTransaction()135 Status MockSingleKvStore::StartTransaction()
136 {
137     return Status::SUCCESS;
138 }
139 
Commit()140 Status MockSingleKvStore::Commit()
141 {
142     return Status::SUCCESS;
143 }
144 
Rollback()145 Status MockSingleKvStore::Rollback()
146 {
147     return Status::SUCCESS;
148 }
149 
SetSyncParam(const KvSyncParam & syncParam)150 Status MockSingleKvStore::SetSyncParam(const KvSyncParam &syncParam)
151 {
152     return Status::SUCCESS;
153 }
154 
GetSyncParam(KvSyncParam & syncParam)155 Status MockSingleKvStore::GetSyncParam(KvSyncParam &syncParam)
156 {
157     return Status::SUCCESS;
158 }
159 
SetCapabilityEnabled(bool enabled) const160 Status MockSingleKvStore::SetCapabilityEnabled(bool enabled) const
161 {
162     return Status::SUCCESS;
163 }
164 
SetCapabilityRange(const std::vector<std::string> & localLabels,const std::vector<std::string> & remoteSupportLabels) const165 Status MockSingleKvStore::SetCapabilityRange(
166     const std::vector<std::string> &localLabels, const std::vector<std::string> &remoteSupportLabels) const
167 {
168     return Status::SUCCESS;
169 }
170 
GetSecurityLevel(SecurityLevel & securityLevel) const171 Status MockSingleKvStore::GetSecurityLevel(SecurityLevel &securityLevel) const
172 {
173     return Status::SUCCESS;
174 }
175 
Sync(const std::vector<std::string> & deviceIds,SyncMode mode,const DataQuery & query,std::shared_ptr<KvStoreSyncCallback> syncCallback)176 Status MockSingleKvStore::Sync(const std::vector<std::string> &deviceIds, SyncMode mode,
177     const DataQuery &query, std::shared_ptr<KvStoreSyncCallback> syncCallback)
178 {
179     return Status::SUCCESS;
180 }
181 
SubscribeWithQuery(const std::vector<std::string> & deviceIds,const DataQuery & query)182 Status MockSingleKvStore::SubscribeWithQuery(const std::vector<std::string> &deviceIds, const DataQuery &query)
183 {
184     return Status::SUCCESS;
185 }
186 
UnsubscribeWithQuery(const std::vector<std::string> & deviceIds,const DataQuery & query)187 Status MockSingleKvStore::UnsubscribeWithQuery(const std::vector<std::string> &deviceIds, const DataQuery &query)
188 {
189     return Status::SUCCESS;
190 }
191 
Backup(const std::string & file,const std::string & baseDir)192 Status MockSingleKvStore::Backup(const std::string &file, const std::string &baseDir)
193 {
194     return Status::SUCCESS;
195 }
196 
Restore(const std::string & file,const std::string & baseDir)197 Status MockSingleKvStore::Restore(const std::string &file, const std::string &baseDir)
198 {
199     return Status::SUCCESS;
200 }
201 
DeleteBackup(const std::vector<std::string> & files,const std::string & baseDir,std::map<std::string,DistributedKv::Status> & status)202 Status MockSingleKvStore::DeleteBackup(
203     const std::vector<std::string> &files, const std::string &baseDir,
204     std::map<std::string, DistributedKv::Status> &status)
205 {
206     return Status::SUCCESS;
207 }
208 }  // namespace DistributedKv
209 }  // namespace OHOS
210