• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2021-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 "data_storage_gtest.h"
17 
18 #include "data_storage_errors.h"
19 #include "data_storage_log_wrapper.h"
20 #include "datashare_helper.h"
21 #include "datashare_predicates.h"
22 #include "global_params_data.h"
23 #include "opkey_data.h"
24 #include "parameter.h"
25 #include "pdp_profile_data.h"
26 #include "sim_data.h"
27 #include "sms_mms_data.h"
28 
29 namespace OHOS {
30 namespace Telephony {
31 using namespace testing::ext;
32 const int NUM_MATCH_SHORT_EIGHT = 8;
33 const int NUM_MATCH_ELEVEN = 11;
34 const int PERMS_NUM = 4;
35 const int32_t VOICECALL_CAP_VAL_LEN = 6;
36 const std::string KEY_VOICECALL_CAP = "const.telephony.voice.capable";
37 
HasVoiceCapability()38 bool HasVoiceCapability()
39 {
40     char retValue[VOICECALL_CAP_VAL_LEN + 1] = { "true" };
41     int retLen = GetParameter(KEY_VOICECALL_CAP.c_str(), "true", retValue, VOICECALL_CAP_VAL_LEN);
42     DATA_STORAGE_LOGI("HasVoiceCapability retValue %{public}s, retLen %{public}d", retValue, retLen);
43     if (strcmp(retValue, "false") == 0) {
44         return false;
45     }
46     return true;
47 }
48 
SetUpTestCase(void)49 void DataStorageGtest::SetUpTestCase(void)
50 {
51     // step 3: Set Up Test Case
52     const char *perms[PERMS_NUM] = {
53         "ohos.permission.READ_MESSAGES",
54         "ohos.permission.ANSWER_CALL",
55         "ohos.permission.SET_TELEPHONY_STATE",
56         "ohos.permission.GET_TELEPHONY_STATE",
57     };
58 
59     NativeTokenInfoParams testCallInfoParams = {
60         .dcapsNum = 0,
61         .permsNum = PERMS_NUM,
62         .aclsNum = 0,
63         .dcaps = nullptr,
64         .perms = perms,
65         .acls = nullptr,
66         .processName = "telephony_data_gtest",
67         .aplStr = "system_basic",
68     };
69     Security::AccessToken::AccessTokenID currentID_ = GetAccessTokenId(&testCallInfoParams);
70     SetSelfTokenID(currentID_);
71     Security::AccessToken::AccessTokenKit::ReloadNativeTokenInfo();
72 }
73 
TearDownTestCase(void)74 void DataStorageGtest::TearDownTestCase(void)
75 {
76     // step 3: Tear Down Test Case
77 }
78 
SetUp(void)79 void DataStorageGtest::SetUp(void)
80 {
81     // step 3: input testcase setup step
82 }
83 
TearDown(void)84 void DataStorageGtest::TearDown(void)
85 {
86     // step 3: input testcase teardown step
87 }
88 
CreateDataShareHelper(int32_t systemAbilityId,std::string & uri) const89 std::shared_ptr<DataShare::DataShareHelper> DataStorageGtest::CreateDataShareHelper(
90     int32_t systemAbilityId, std::string &uri) const
91 {
92     DATA_STORAGE_LOGI("DataStorageGtest::CreateDataShareHelper");
93     auto saManager = SystemAbilityManagerClient::GetInstance().GetSystemAbilityManager();
94     if (saManager == nullptr) {
95         DATA_STORAGE_LOGE("DataStorageGtest Get system ability mgr failed.");
96         return nullptr;
97     }
98     auto remoteObj = saManager->GetSystemAbility(systemAbilityId);
99     if (remoteObj == nullptr) {
100         DATA_STORAGE_LOGE("DataStorageGtest GetSystemAbility Service Failed.");
101         return nullptr;
102     }
103     return DataShare::DataShareHelper::Creator(remoteObj, uri);
104 }
105 
CreateSimHelper()106 std::shared_ptr<DataShare::DataShareHelper> DataStorageGtest::CreateSimHelper()
107 {
108     if (simDataHelper == nullptr) {
109         std::string uri(SIM_URI);
110         if (uri.data() == nullptr) {
111             DATA_STORAGE_LOGE("CreateSimHelper uri is nullptr");
112             return nullptr;
113         }
114         simDataHelper = CreateDataShareHelper(TELEPHONY_CORE_SERVICE_SYS_ABILITY_ID, uri);
115     }
116     return simDataHelper;
117 }
118 
CreateSmsHelper()119 std::shared_ptr<DataShare::DataShareHelper> DataStorageGtest::CreateSmsHelper()
120 {
121     if (smsDataHelper == nullptr) {
122         std::string uri(SMS_MMS_URI);
123         if (uri.data() == nullptr) {
124             DATA_STORAGE_LOGE("CreateSmsHelper uri is nullptr");
125             return nullptr;
126         }
127         smsDataHelper = CreateDataShareHelper(TELEPHONY_SMS_MMS_SYS_ABILITY_ID, uri);
128     }
129     return smsDataHelper;
130 }
131 
CreatePdpProfileHelper()132 std::shared_ptr<DataShare::DataShareHelper> DataStorageGtest::CreatePdpProfileHelper()
133 {
134     if (pdpProfileDataHelper == nullptr) {
135         std::string uri(PDP_PROFILE_URI);
136         if (uri.data() == nullptr) {
137             DATA_STORAGE_LOGE("CreatePdpProfileHelper uri is nullptr");
138             return nullptr;
139         }
140         pdpProfileDataHelper = CreateDataShareHelper(TELEPHONY_SMS_MMS_SYS_ABILITY_ID, uri);
141     }
142     return pdpProfileDataHelper;
143 }
144 
CreateOpKeyHelper()145 std::shared_ptr<DataShare::DataShareHelper> DataStorageGtest::CreateOpKeyHelper()
146 {
147     if (opKeyDataHelper == nullptr) {
148         std::string uri(OPKEY_URI);
149         if (uri.data() == nullptr) {
150             DATA_STORAGE_LOGE("CreateOpKeyHelper uri is nullptr");
151             return nullptr;
152         }
153         opKeyDataHelper = CreateDataShareHelper(TELEPHONY_SMS_MMS_SYS_ABILITY_ID, uri);
154     }
155     return opKeyDataHelper;
156 }
157 
CreateGlobalParamsHelper()158 std::shared_ptr<DataShare::DataShareHelper> DataStorageGtest::CreateGlobalParamsHelper()
159 {
160     if (globalParamsDataHelper == nullptr) {
161         std::string uri(GLOBAL_PARAMS_URI);
162         if (uri.data() == nullptr) {
163             DATA_STORAGE_LOGE("CreateGlobalParamsHelper uri is nullptr");
164             return nullptr;
165         }
166         globalParamsDataHelper = CreateDataShareHelper(TELEPHONY_SMS_MMS_SYS_ABILITY_ID, uri);
167     }
168     return globalParamsDataHelper;
169 }
170 
OpKeyInsert(const std::shared_ptr<DataShare::DataShareHelper> & helper) const171 int DataStorageGtest::OpKeyInsert(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
172 {
173     std::string opkey = "110";
174     Uri uri("datashare:///com.ohos.opkeyability/opkey/opkey_info");
175     DataShare::DataShareValuesBucket value;
176     value.Put(OpKeyData::ID, 1);
177     value.Put(OpKeyData::MCCMNC, "460");
178     value.Put(OpKeyData::GID1, "gid1");
179     value.Put(OpKeyData::OPERATOR_NAME, "name");
180     value.Put(OpKeyData::OPERATOR_KEY, opkey);
181     auto ret = helper->Insert(uri, value);
182     DATA_STORAGE_LOGI("OpKeyInsert ret: %{public}d", ret);
183     return ret;
184 }
185 
OpKeyUpdate(const std::shared_ptr<DataShare::DataShareHelper> & helper) const186 int DataStorageGtest::OpKeyUpdate(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
187 {
188     Uri uri("datashare:///com.ohos.opkeyability/opkey/opkey_info");
189     DataShare::DataShareValuesBucket values;
190     values.Put(OpKeyData::OPERATOR_NAME, "name2");
191     DataShare::DataSharePredicates predicates;
192     predicates.EqualTo(OpKeyData::OPERATOR_KEY, "123");
193     return helper->Update(uri, predicates, values);
194 }
195 
OpKeySelect(const std::shared_ptr<DataShare::DataShareHelper> & helper) const196 int DataStorageGtest::OpKeySelect(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
197 {
198     DATA_STORAGE_LOGI("OpKeySelect begin.");
199     Uri uri("datashare:///com.ohos.opkeyability/opkey/opkey_info");
200     std::vector<std::string> columns;
201     DataShare::DataSharePredicates predicates;
202     std::shared_ptr<DataShare::DataShareResultSet> resultSet = helper->Query(uri, predicates, columns);
203     if (resultSet != nullptr) {
204         int count;
205         resultSet->GetRowCount(count);
206         DATA_STORAGE_LOGI("OpKeySelectret cnt: %{public}d", count);
207         return count;
208     }
209     return -1;
210 }
211 
OpKeyDelete(const std::shared_ptr<DataShare::DataShareHelper> & helper) const212 int DataStorageGtest::OpKeyDelete(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
213 {
214     Uri uri("datashare:///com.ohos.opkeyability/opkey/opkey_info");
215     DataShare::DataSharePredicates predicates;
216     predicates.EqualTo(OpKeyData::ID, "1");
217     return helper->Delete(uri, predicates);
218 }
219 
SimInsert(const std::shared_ptr<DataShare::DataShareHelper> & helper) const220 int DataStorageGtest::SimInsert(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
221 {
222     Uri uri("datashare:///com.ohos.simability/sim/sim_info");
223     DataShare::DataShareValuesBucket value;
224     value.Put(SimData::SLOT_INDEX, 1);
225     value.Put(SimData::PHONE_NUMBER, "134xxxxxxxx");
226     value.Put(SimData::ICC_ID, "icc_id");
227     value.Put(SimData::CARD_ID, "card_id");
228     return helper->Insert(uri, value);
229 }
230 
SimUpdate(const std::shared_ptr<DataShare::DataShareHelper> & helper) const231 int DataStorageGtest::SimUpdate(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
232 {
233     Uri uri("datashare:///com.ohos.simability/sim/sim_info");
234     std::string slot = std::to_string(1);
235     DataShare::DataShareValuesBucket values;
236     values.Put(SimData::SHOW_NAME, "China Mobile");
237     DataShare::DataSharePredicates predicates;
238     predicates.EqualTo(SimData::SLOT_INDEX, slot);
239     return helper->Update(uri, predicates, values);
240 }
241 
SimSelect(const std::shared_ptr<DataShare::DataShareHelper> & helper) const242 int DataStorageGtest::SimSelect(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
243 {
244     Uri uri("datashare:///com.ohos.simability/sim/sim_info");
245     std::vector<std::string> columns;
246     DataShare::DataSharePredicates predicates;
247     std::shared_ptr<DataShare::DataShareResultSet> resultSet = helper->Query(uri, predicates, columns);
248     if (resultSet != nullptr) {
249         int count;
250         resultSet->GetRowCount(count);
251         return count;
252     }
253     return -1;
254 }
255 
SimDelete(const std::shared_ptr<DataShare::DataShareHelper> & helper) const256 int DataStorageGtest::SimDelete(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
257 {
258     Uri uri("datashare:///com.ohos.simability/sim/sim_info");
259     DataShare::DataSharePredicates predicates;
260     predicates.EqualTo(SimData::SLOT_INDEX, "1");
261     return helper->Delete(uri, predicates);
262 }
263 
SmsBatchInsert(const std::shared_ptr<DataShare::DataShareHelper> & helper) const264 int DataStorageGtest::SmsBatchInsert(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
265 {
266     Uri uri("datashare:///com.ohos.smsmmsability/sms_mms/sms_mms_info");
267     std::vector<DataShare::DataShareValuesBucket> values;
268     DataShare::DataShareValuesBucket value;
269     int batchNum = 100;
270     for (int i = 0; i < batchNum; i++) {
271         value.Put(SmsMmsInfo::RECEIVER_NUMBER, "134xxxxxxxx");
272         value.Put(SmsMmsInfo::MSG_CONTENT, "The first test text message content");
273         value.Put(SmsMmsInfo::GROUP_ID, 1);
274         values.push_back(value);
275         value.Clear();
276     }
277     return helper->BatchInsert(uri, values);
278 }
279 
SmsInsert(const std::shared_ptr<DataShare::DataShareHelper> & helper) const280 int DataStorageGtest::SmsInsert(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
281 {
282     Uri uri("datashare:///com.ohos.smsmmsability/sms_mms/sms_mms_info");
283     DataShare::DataShareValuesBucket value;
284     value.Put(SmsMmsInfo::RECEIVER_NUMBER, "134xxxxxxxx");
285     value.Put(SmsMmsInfo::MSG_CONTENT, "The first test text message content");
286     value.Put(SmsMmsInfo::GROUP_ID, 1);
287     value.Put(SmsMmsInfo::IS_SENDER, 0);
288     return helper->Insert(uri, value);
289 }
290 
SmsUpdate(const std::shared_ptr<DataShare::DataShareHelper> & helper) const291 int DataStorageGtest::SmsUpdate(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
292 {
293     Uri uri("datashare:///com.ohos.smsmmsability/sms_mms/sms_mms_info");
294     DataShare::DataShareValuesBucket values;
295     values.Put(SmsMmsInfo::MSG_CONTENT, "The second test text message content");
296     DataShare::DataSharePredicates predicates;
297     predicates.EqualTo(SmsMmsInfo::MSG_ID, "1");
298     return helper->Update(uri, predicates, values);
299 }
300 
SmsSelect(const std::shared_ptr<DataShare::DataShareHelper> & helper) const301 int DataStorageGtest::SmsSelect(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
302 {
303     Uri uri("datashare:///com.ohos.smsmmsability/sms_mms/sms_mms_info");
304     std::vector<std::string> columns;
305     DataShare::DataSharePredicates predicates;
306     std::shared_ptr<DataShare::DataShareResultSet> resultSet = helper->Query(uri, predicates, columns);
307     if (resultSet != nullptr) {
308         int count;
309         resultSet->GetRowCount(count);
310         DATA_STORAGE_LOGI("SmsSelect count: %{public}d", count);
311         return count;
312     }
313     return -1;
314 }
315 
SmsDelete(const std::shared_ptr<DataShare::DataShareHelper> & helper) const316 int DataStorageGtest::SmsDelete(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
317 {
318     Uri uri("datashare:///com.ohos.smsmmsability/sms_mms/sms_mms_info");
319     DataShare::DataSharePredicates predicates;
320     predicates.EqualTo(SmsMmsInfo::MSG_ID, "1");
321     return helper->Delete(uri, predicates);
322 }
323 
PdpProfileInsert(const std::shared_ptr<DataShare::DataShareHelper> & helper) const324 int DataStorageGtest::PdpProfileInsert(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
325 {
326     Uri uri("datashare:///com.ohos.pdpprofileability/net/pdp_profile?simId=0");
327     DataShare::DataShareValuesBucket value;
328     value.Put(PdpProfileData::PROFILE_NAME, "frist_profile_name");
329     value.Put(PdpProfileData::MCC, "460");
330     value.Put(PdpProfileData::MNC, "91");
331     value.Put(PdpProfileData::MVNO_TYPE, "gid1");
332     value.Put(PdpProfileData::MVNO_MATCH_DATA, "FFF");
333     value.Put(PdpProfileData::EDITED_STATUS, "1");
334     value.Put(PdpProfileData::SERVER, "pdpserver");
335     value.Put(PdpProfileData::BEARING_SYSTEM_TYPE, "1");
336     value.Put(PdpProfileData::IS_ROAMING_APN, "0");
337     value.Put(PdpProfileData::APN_PROTOCOL, "IP");
338     value.Put(PdpProfileData::APN_ROAM_PROTOCOL, "IPV6");
339     return helper->Insert(uri, value);
340 }
341 
PdpProfileUpdate(const std::shared_ptr<DataShare::DataShareHelper> & helper) const342 int DataStorageGtest::PdpProfileUpdate(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
343 {
344     Uri uri("datashare:///com.ohos.pdpprofileability/net/pdp_profile");
345     DataShare::DataShareValuesBucket values;
346     values.Put(PdpProfileData::PROFILE_NAME, "update_profile_name");
347     DataShare::DataSharePredicates predicates;
348     predicates.EqualTo(PdpProfileData::PROFILE_ID, "1");
349     return helper->Update(uri, predicates, values);
350 }
351 
PdpProfileUpdate2(const std::shared_ptr<DataShare::DataShareHelper> & helper) const352 int DataStorageGtest::PdpProfileUpdate2(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
353 {
354     Uri uri("datashare:///com.ohos.pdpprofileability/net/pdp_profile/preferapn");
355     DataShare::DataShareValuesBucket values;
356     DataShare::DataSharePredicates predicates;
357     double testId = 1110;
358     double testSImId = 1;
359     values.Put(PdpProfileData::PROFILE_ID, testId);
360     values.Put(PdpProfileData::SIM_ID, testSImId);
361     return helper->Update(uri, predicates, values);
362 }
363 
PdpProfileUpdate3(const std::shared_ptr<DataShare::DataShareHelper> & helper) const364 int DataStorageGtest::PdpProfileUpdate3(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
365 {
366     Uri uri("datashare:///com.ohos.pdpprofileability/net/pdp_profile/preferapn");
367     DataShare::DataShareValuesBucket values;
368     DataShare::DataSharePredicates predicates;
369     values.Put(PdpProfileData::PROFILE_ID, -1);
370     values.Put(PdpProfileData::SIM_ID, 0);
371     return helper->Update(uri, predicates, values);
372 }
373 
PdpProfileUpdate4(const std::shared_ptr<DataShare::DataShareHelper> & helper) const374 int DataStorageGtest::PdpProfileUpdate4(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
375 {
376     Uri uri("datashare:///com.ohos.pdpprofileability/net/pdp_profile/reset?simId=0");
377     DataShare::DataShareValuesBucket values;
378     DataShare::DataSharePredicates predicates;
379     return helper->Update(uri, predicates, values);
380 }
381 
PdpProfileSelect(const std::shared_ptr<DataShare::DataShareHelper> & helper) const382 int DataStorageGtest::PdpProfileSelect(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
383 {
384     Uri uri("datashare:///com.ohos.pdpprofileability/net/pdp_profile?simId=0");
385     std::vector<std::string> columns;
386     DataShare::DataSharePredicates predicates;
387     std::shared_ptr<DataShare::DataShareResultSet> resultSet = helper->Query(uri, predicates, columns);
388     if (resultSet != nullptr) {
389         int count;
390         resultSet->GetRowCount(count);
391         std::cout << "count is " << count;
392         return count;
393     }
394     return -1;
395 }
396 
PdpProfileSelect2(const std::shared_ptr<DataShare::DataShareHelper> & helper) const397 int DataStorageGtest::PdpProfileSelect2(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
398 {
399     Uri uri("datashare:///com.ohos.pdpprofileability/net/pdp_profile/preferapn?Proxy=true&simId=0");
400     std::vector<std::string> columns;
401     DataShare::DataSharePredicates predicates;
402     std::shared_ptr<DataShare::DataShareResultSet> resultSet = helper->Query(uri, predicates, columns);
403     if (resultSet != nullptr) {
404         int count;
405         resultSet->GetRowCount(count);
406         std::cout << "count is " << count;
407         return count;
408     }
409     return -1;
410 }
411 
PdpProfileDelete(const std::shared_ptr<DataShare::DataShareHelper> & helper) const412 int DataStorageGtest::PdpProfileDelete(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
413 {
414     Uri uri("datashare:///com.ohos.pdpprofileability/net/pdp_profile");
415     DataShare::DataSharePredicates predicates;
416     predicates.EqualTo(PdpProfileData::PROFILE_ID, "1");
417     return helper->Delete(uri, predicates);
418 }
419 
GlobalParamsNumMatchInsert(const std::shared_ptr<DataShare::DataShareHelper> & helper) const420 int DataStorageGtest::GlobalParamsNumMatchInsert(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
421 {
422     Uri uri("datashare:///com.ohos.globalparamsability/globalparams/num_matchs");
423     DataShare::DataShareValuesBucket value;
424     value.Put(NumMatchData::NAME, "frist_numMatch_name");
425     value.Put(NumMatchData::MCC, "460");
426     value.Put(NumMatchData::MNC, "91");
427     value.Put(NumMatchData::MCCMNC, "46091");
428     value.Put(NumMatchData::NUM_MATCH, NUM_MATCH_ELEVEN);
429     value.Put(NumMatchData::NUM_MATCH_SHORT, NUM_MATCH_SHORT_EIGHT);
430     return helper->Insert(uri, value);
431 }
432 
GlobalParamsNumMatchUpdate(const std::shared_ptr<DataShare::DataShareHelper> & helper) const433 int DataStorageGtest::GlobalParamsNumMatchUpdate(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
434 {
435     Uri uri("datashare:///com.ohos.globalparamsability/globalparams/num_matchs");
436     DataShare::DataShareValuesBucket values;
437     values.Put(NumMatchData::NAME, "update_name");
438     DataShare::DataSharePredicates predicates;
439     predicates.EqualTo(NumMatchData::MCCMNC, "46091");
440     return helper->Update(uri, predicates, values);
441 }
442 
DumpNumMatchData(std::shared_ptr<DataShare::DataShareResultSet> resultSet)443 static void DumpNumMatchData(std::shared_ptr<DataShare::DataShareResultSet> resultSet)
444 {
445     if (resultSet == nullptr) {
446         std::cout << "resultSet is NULL, count = 0." << std::endl;
447         return;
448     }
449     int count;
450     resultSet->GetRowCount(count);
451     std::cout << "Dump NumMatchTable: count is " << count << std::endl;
452     for (int row = 0; row < count; row++) {
453         int columnIndex;
454         int id;
455         int match_long;
456         int match_short;
457         std::string name;
458         std::string mcc;
459         std::string mnc;
460         std::string numeric;
461         resultSet->GoToRow(row);
462         resultSet->GetColumnIndex(NumMatchData::ID, columnIndex);
463         resultSet->GetInt(columnIndex, id);
464         resultSet->GetColumnIndex(NumMatchData::NUM_MATCH, columnIndex);
465         resultSet->GetInt(columnIndex, match_long);
466         resultSet->GetColumnIndex(NumMatchData::NUM_MATCH_SHORT, columnIndex);
467         resultSet->GetInt(columnIndex, match_short);
468         resultSet->GetColumnIndex(NumMatchData::NAME, columnIndex);
469         resultSet->GetString(columnIndex, name);
470         resultSet->GetColumnIndex(NumMatchData::MCC, columnIndex);
471         resultSet->GetString(columnIndex, mcc);
472         resultSet->GetColumnIndex(NumMatchData::MNC, columnIndex);
473         resultSet->GetString(columnIndex, mnc);
474         resultSet->GetColumnIndex(NumMatchData::MCCMNC, columnIndex);
475         resultSet->GetString(columnIndex, numeric);
476         std::cout << " Row: " << row << ", id: " << id << ", name: " << name << ", mcc: " << mcc
477                   << ", mnc: " << mnc << ", numeric: " << numeric << ", num_match: " << match_long
478                   << ", num_match_short: " << match_short << std::endl;
479     }
480 }
481 
GlobalParamsNumMatchSelect(const std::shared_ptr<DataShare::DataShareHelper> & helper) const482 int DataStorageGtest::GlobalParamsNumMatchSelect(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
483 {
484     DATA_STORAGE_LOGI("GlobalParamsNumMatchSelect ---");
485     Uri uri("datashare:///com.ohos.globalparamsability/globalparams/num_matchs");
486     std::vector<std::string> columns;
487     DataShare::DataSharePredicates predicates;
488     std::shared_ptr<DataShare::DataShareResultSet> resultSet = helper->Query(uri, predicates, columns);
489     if (resultSet != nullptr) {
490         int count;
491         resultSet->GetRowCount(count);
492         std::cout << "count is " << count;
493         DumpNumMatchData(resultSet);
494         resultSet->Close();
495         return count;
496     }
497     return -1;
498 }
499 
GlobalParamsNumMatchDelete(const std::shared_ptr<DataShare::DataShareHelper> & helper) const500 int DataStorageGtest::GlobalParamsNumMatchDelete(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
501 {
502     Uri uri("datashare:///com.ohos.globalparamsability/globalparams/num_matchs");
503     DataShare::DataSharePredicates predicates;
504     predicates.EqualTo(NumMatchData::MCCMNC, "46091");
505     return helper->Delete(uri, predicates);
506 }
GlobalEccInsert(const std::shared_ptr<DataShare::DataShareHelper> & helper) const507 int DataStorageGtest::GlobalEccInsert(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
508 {
509     Uri uri("datashare:///com.ohos.globalparamsability/globalparams/ecc_data");
510     DataShare::DataShareValuesBucket value;
511     value.Put(EccData::MCC, "460");
512     value.Put(EccData::MNC, "01");
513     value.Put(EccData::NUMERIC, "46001");
514     return helper->Insert(uri, value);
515 }
516 
GlobalEccUpdate(const std::shared_ptr<DataShare::DataShareHelper> & helper) const517 int DataStorageGtest::GlobalEccUpdate(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
518 {
519     Uri uri("datashare:///com.ohos.globalparamsability/globalparams/ecc_data");
520     DataShare::DataShareValuesBucket values;
521     values.Put(EccData::NAME, "46001");
522     DataShare::DataSharePredicates predicates;
523     predicates.EqualTo(EccData::ID, "1");
524     return helper->Update(uri, predicates, values);
525 }
526 
GlobalEccSelect(const std::shared_ptr<DataShare::DataShareHelper> & helper) const527 int DataStorageGtest::GlobalEccSelect(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
528 {
529     Uri uri("datashare:///com.ohos.globalparamsability/globalparams/ecc_data");
530     std::vector<std::string> columns;
531     DataShare::DataSharePredicates predicates;
532     std::shared_ptr<DataShare::DataShareResultSet> resultSet = helper->Query(uri, predicates, columns);
533     if (resultSet != nullptr) {
534         int count;
535         resultSet->GetRowCount(count);
536         std::cout << "count is " << count;
537         return count;
538     }
539     return -1;
540 }
541 
GlobalEccDelete(const std::shared_ptr<DataShare::DataShareHelper> & helper) const542 int DataStorageGtest::GlobalEccDelete(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
543 {
544     Uri uri("datashare:///com.ohos.globalparamsability/globalparams/ecc_data");
545     DataShare::DataSharePredicates predicates;
546     predicates.EqualTo(EccData::ID, "1");
547     return helper->Delete(uri, predicates);
548 }
549 
CreateOpKeyVersionCustHelper()550 std::shared_ptr<DataShare::DataShareHelper> DataStorageGtest::CreateOpKeyVersionCustHelper()
551 {
552     if (opKeyVersionCustHelper == nullptr) {
553         std::string uri("datashare:///com.ohos.opkeyversionability/cust_param");
554         if (uri.data() == nullptr) {
555             DATA_STORAGE_LOGE("opKeyVersionCustHelper uri is nullptr");
556             return nullptr;
557         }
558         opKeyVersionCustHelper = CreateDataShareHelper(TELEPHONY_CELLULAR_CALL_SYS_ABILITY_ID, uri);
559     }
560     return opKeyVersionCustHelper;
561 }
562 
CreateOpKeyVersionChipHelper()563 std::shared_ptr<DataShare::DataShareHelper> DataStorageGtest::CreateOpKeyVersionChipHelper()
564 {
565     if (opKeyVersionChipHelper == nullptr) {
566         std::string uri("datashare:///com.ohos.opkeyversionability/chip_param");
567         if (uri.data() == nullptr) {
568             DATA_STORAGE_LOGE("opKeyVersionCustHelper uri is nullptr");
569             return nullptr;
570         }
571         opKeyVersionChipHelper = CreateDataShareHelper(TELEPHONY_CELLULAR_CALL_SYS_ABILITY_ID, uri);
572     }
573     return opKeyVersionChipHelper;
574 }
575 
OpKeyVersionQuery(const std::shared_ptr<DataShare::DataShareHelper> & helper,Uri uri) const576 int DataStorageGtest::OpKeyVersionQuery(const std::shared_ptr<DataShare::DataShareHelper> &helper, Uri uri) const
577 {
578     std::vector<std::string> columns;
579     DataShare::DataSharePredicates predicates;
580     std::shared_ptr<DataShare::DataShareResultSet> resultSet = helper->Query(uri, predicates, columns);
581 #ifdef OHOS_BUILD_ENABLE_TELEPHONY_EXT
582     return resultSet != nullptr;
583 #else
584     return resultSet == nullptr;
585 #endif
586 }
587 #ifndef TEL_TEST_UNSUPPORT
588 /**
589  * @tc.number   DataStorage_001
590  * @tc.name     create sim and sms DataAbilityHelper
591  * @tc.desc     Function test
592  */
593 HWTEST_F(DataStorageGtest, DataStorage_001, TestSize.Level0)
594 {
595     ASSERT_TRUE(HasVoiceCapability());
596     std::shared_ptr<DataShare::DataShareHelper> smsHelper = CreateSmsHelper();
597     std::shared_ptr<DataShare::DataShareHelper> simHelper = CreateSimHelper();
598     ASSERT_TRUE((smsHelper != nullptr) && (simHelper != nullptr));
599     bool retSms = (smsHelper != nullptr);
600     bool retSim = (simHelper != nullptr);
601     smsHelper = nullptr;
602     simHelper = nullptr;
603     EXPECT_TRUE(retSms);
604     EXPECT_TRUE(retSim);
605 }
606 
607 /**
608  * @tc.number   OpKeyInsert_001
609  * @tc.name     insert opkey data
610  * @tc.desc     Function test
611  */
612 HWTEST_F(DataStorageGtest, OpKeyInsert_001, Function | MediumTest | Level1)
613 {
614     ASSERT_TRUE(HasVoiceCapability());
615     std::shared_ptr<DataShare::DataShareHelper> helper = CreateOpKeyHelper();
616     ASSERT_NE(helper, nullptr);
617     int ret = OpKeyInsert(helper);
618     helper = nullptr;
619     EXPECT_GE(ret, DATA_STORAGE_ERROR);
620 }
621 
622 /**
623  * @tc.number   OpKeyUpdate_001
624  * @tc.name     update opkey data
625  * @tc.desc     Function test
626  */
627 HWTEST_F(DataStorageGtest, OpKeyUpdate_001, Function | MediumTest | Level2)
628 {
629     ASSERT_TRUE(HasVoiceCapability());
630     std::shared_ptr<DataShare::DataShareHelper> helper = CreateOpKeyHelper();
631     ASSERT_NE(helper, nullptr);
632     int ret = OpKeyUpdate(helper);
633     helper = nullptr;
634     EXPECT_GE(ret, DATA_STORAGE_ERROR);
635 }
636 
637 /**
638  * @tc.number   OpKeySelect_001
639  * @tc.name     select opkey data
640  * @tc.desc     Function test
641  */
642 HWTEST_F(DataStorageGtest, OpKeySelect_001, Function | MediumTest | Level1)
643 {
644     ASSERT_TRUE(HasVoiceCapability());
645     std::shared_ptr<DataShare::DataShareHelper> helper = CreateOpKeyHelper();
646     ASSERT_NE(helper, nullptr);
647     int ret = OpKeySelect(helper);
648     helper = nullptr;
649     EXPECT_GE(ret, DATA_STORAGE_ERROR);
650 }
651 
652 /**
653  * @tc.number   OpKeyDelete_001
654  * @tc.name     delete opkey data
655  * @tc.desc     Function test
656  */
657 HWTEST_F(DataStorageGtest, OpKeyDelete_001, Function | MediumTest | Level1)
658 {
659     ASSERT_TRUE(HasVoiceCapability());
660     std::shared_ptr<DataShare::DataShareHelper> helper = CreateOpKeyHelper();
661     ASSERT_NE(helper, nullptr);
662     int ret = OpKeyDelete(helper);
663     helper = nullptr;
664     EXPECT_GE(ret, DATA_STORAGE_ERROR);
665 }
666 
667 /**
668  * @tc.number   SimInsert_001
669  * @tc.name     insert sim data
670  * @tc.desc     Function test
671  */
672 HWTEST_F(DataStorageGtest, SimInsert_001, Function | MediumTest | Level1)
673 {
674     ASSERT_TRUE(HasVoiceCapability());
675     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSimHelper();
676     ASSERT_NE(helper, nullptr);
677     int ret = SimInsert(helper);
678     helper = nullptr;
679     EXPECT_GE(ret, DATA_STORAGE_ERROR);
680 }
681 
682 /**
683  * @tc.number   SimUpdate_001
684  * @tc.name     update sim data
685  * @tc.desc     Function test
686  */
687 HWTEST_F(DataStorageGtest, SimUpdate_001, Function | MediumTest | Level1)
688 {
689     ASSERT_TRUE(HasVoiceCapability());
690     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSimHelper();
691     ASSERT_NE(helper, nullptr);
692     int ret = SimUpdate(helper);
693     helper = nullptr;
694     EXPECT_GE(ret, DATA_STORAGE_ERROR);
695 }
696 
697 /**
698  * @tc.number   SimSelect_001
699  * @tc.name     select sim data
700  * @tc.desc     Function test
701  */
702 HWTEST_F(DataStorageGtest, SimSelect_001, Function | MediumTest | Level1)
703 {
704     ASSERT_TRUE(HasVoiceCapability());
705     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSimHelper();
706     ASSERT_NE(helper, nullptr);
707     int ret = SimSelect(helper);
708     helper = nullptr;
709     EXPECT_GE(ret, DATA_STORAGE_ERROR);
710 }
711 
712 /**
713  * @tc.number   SimDelete_001
714  * @tc.name     delete sim data
715  * @tc.desc     Function test
716  * @tc.require: I5LACE
717  */
718 HWTEST_F(DataStorageGtest, SimDelete_001, Function | MediumTest | Level1)
719 {
720     ASSERT_TRUE(HasVoiceCapability());
721     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSimHelper();
722     ASSERT_NE(helper, nullptr);
723     int ret = SimDelete(helper);
724     helper = nullptr;
725     EXPECT_GE(ret, DATA_STORAGE_ERROR);
726 }
727 
728 /**
729  * @tc.number   SmsBatchInsert_001
730  * @tc.name     batch insert sms data
731  * @tc.desc     Function test
732  * @tc.require: I5LACE
733  */
734 HWTEST_F(DataStorageGtest, SmsBatchInsert_001, Function | MediumTest | Level1)
735 {
736     ASSERT_TRUE(HasVoiceCapability());
737     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSmsHelper();
738     ASSERT_NE(helper, nullptr);
739     int ret = SmsBatchInsert(helper);
740     helper = nullptr;
741     EXPECT_GE(ret, DATA_STORAGE_ERROR);
742 }
743 
744 /**
745  * @tc.number   SmsInsert_001
746  * @tc.name     insert sms data
747  * @tc.desc     Function test
748  * @tc.require: I5LACE
749  */
750 HWTEST_F(DataStorageGtest, SmsInsert_001, Function | MediumTest | Level1)
751 {
752     ASSERT_TRUE(HasVoiceCapability());
753     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSmsHelper();
754     ASSERT_NE(helper, nullptr);
755     int ret = SmsInsert(helper);
756     helper = nullptr;
757     EXPECT_GE(ret, DATA_STORAGE_ERROR);
758 }
759 
760 /**
761  * @tc.number   SmsUpdate_001
762  * @tc.name     update sms data
763  * @tc.desc     Function test
764  */
765 HWTEST_F(DataStorageGtest, SmsUpdate_001, Function | MediumTest | Level1)
766 {
767     ASSERT_TRUE(HasVoiceCapability());
768     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSmsHelper();
769     ASSERT_NE(helper, nullptr);
770     int ret = SmsUpdate(helper);
771     helper = nullptr;
772     EXPECT_GE(ret, DATA_STORAGE_ERROR);
773 }
774 
775 /**
776  * @tc.number   SmsSelect_001
777  * @tc.name     select sms data
778  * @tc.desc     Function test
779  */
780 HWTEST_F(DataStorageGtest, SmsSelect_001, Function | MediumTest | Level1)
781 {
782     ASSERT_TRUE(HasVoiceCapability());
783     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSmsHelper();
784     ASSERT_NE(helper, nullptr);
785     int ret = SmsSelect(helper);
786     helper = nullptr;
787     EXPECT_GE(ret, DATA_STORAGE_ERROR);
788 }
789 
790 /**
791  * @tc.number   SmsDelete_001
792  * @tc.name     delete sms data
793  * @tc.desc     Function test
794  * @tc.require: I5LACE
795  */
796 HWTEST_F(DataStorageGtest, SmsDelete_001, Function | MediumTest | Level1)
797 {
798     ASSERT_TRUE(HasVoiceCapability());
799     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSmsHelper();
800     ASSERT_NE(helper, nullptr);
801     int ret = SmsDelete(helper);
802     helper = nullptr;
803     EXPECT_GE(ret, DATA_STORAGE_ERROR);
804 }
805 
806 /**
807  * @tc.number   PdpProfileInsert_001
808  * @tc.name     insert apn data
809  * @tc.desc     Function test
810  */
811 HWTEST_F(DataStorageGtest, PdpProfileInsert_001, Function | MediumTest | Level1)
812 {
813     ASSERT_TRUE(HasVoiceCapability());
814     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
815     ASSERT_NE(helper, nullptr);
816     int ret = PdpProfileInsert(helper);
817     helper = nullptr;
818     EXPECT_GE(ret, DATA_STORAGE_ERROR);
819 }
820 
821 /**
822  * @tc.number   PdpProfileUpdate_001
823  * @tc.name     update apn data
824  * @tc.desc     Function test
825  */
826 HWTEST_F(DataStorageGtest, PdpProfileUpdate_001, Function | MediumTest | Level2)
827 {
828     ASSERT_TRUE(HasVoiceCapability());
829     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
830     ASSERT_NE(helper, nullptr);
831     int ret = PdpProfileUpdate(helper);
832     helper = nullptr;
833     EXPECT_GE(ret, DATA_STORAGE_ERROR);
834 }
835 
836 /**
837  * @tc.number   PdpProfileUpdate_002
838  * @tc.name     update apn data
839  * @tc.desc     Function test
840  */
841 HWTEST_F(DataStorageGtest, PdpProfileUpdate_002, Function | MediumTest | Level2)
842 {
843     ASSERT_TRUE(HasVoiceCapability());
844     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
845     ASSERT_NE(helper, nullptr);
846     int ret = PdpProfileUpdate2(helper);
847     helper = nullptr;
848     EXPECT_GE(ret, DATA_STORAGE_ERROR);
849 }
850 
851 /**
852  * @tc.number   PdpProfileUpdate_003
853  * @tc.name     update apn data
854  * @tc.desc     Function test
855  */
856 HWTEST_F(DataStorageGtest, PdpProfileUpdate_003, Function | MediumTest | Level2)
857 {
858     ASSERT_TRUE(HasVoiceCapability());
859     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
860     ASSERT_NE(helper, nullptr);
861     int ret = PdpProfileUpdate3(helper);
862     helper = nullptr;
863     EXPECT_GE(ret, DATA_STORAGE_ERROR);
864 }
865 
866 /**
867  * @tc.number   PdpProfileUpdate_004
868  * @tc.name     update apn data
869  * @tc.desc     Function test
870  */
871 HWTEST_F(DataStorageGtest, PdpProfileUpdate_004, Function | MediumTest | Level2)
872 {
873     ASSERT_TRUE(HasVoiceCapability());
874     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
875     ASSERT_NE(helper, nullptr);
876     int ret = PdpProfileUpdate4(helper);
877     helper = nullptr;
878     EXPECT_GE(ret, DATA_STORAGE_ERROR);
879 }
880 
881 /**
882  * @tc.number   PdpProfileSelect_001
883  * @tc.name     select apn data
884  * @tc.desc     Function test
885  */
886 HWTEST_F(DataStorageGtest, PdpProfileSelect_001, Function | MediumTest | Level1)
887 {
888     ASSERT_TRUE(HasVoiceCapability());
889     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
890     ASSERT_NE(helper, nullptr);
891     int ret = PdpProfileSelect(helper);
892     helper = nullptr;
893     EXPECT_GE(ret, DATA_STORAGE_ERROR);
894 }
895 
896 /**
897  * @tc.number   PdpProfileSelect_002
898  * @tc.name     select apn data
899  * @tc.desc     Function test
900  */
901 HWTEST_F(DataStorageGtest, PdpProfileSelect_002, Function | MediumTest | Level1)
902 {
903     ASSERT_TRUE(HasVoiceCapability());
904     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
905     ASSERT_NE(helper, nullptr);
906     int ret = PdpProfileSelect2(helper);
907     helper = nullptr;
908     EXPECT_GE(ret, DATA_STORAGE_ERROR);
909 }
910 
911 /**
912  * @tc.number   PdpProfileDelete_001
913  * @tc.name     delete apn data
914  * @tc.desc     Function test
915  */
916 HWTEST_F(DataStorageGtest, PdpProfileDelete_001, Function | MediumTest | Level1)
917 {
918     ASSERT_TRUE(HasVoiceCapability());
919     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
920     ASSERT_NE(helper, nullptr);
921     int ret = PdpProfileDelete(helper);
922     helper = nullptr;
923     EXPECT_GE(ret, DATA_STORAGE_ERROR);
924 }
925 
926 /**
927  * @tc.number   GlobalParamsNumMatchInsert_001
928  * @tc.name     insert NumMatch data
929  * @tc.desc     Function test
930  */
931 HWTEST_F(DataStorageGtest, GlobalParamsNumMatchInsert_001, Function | MediumTest | Level1)
932 {
933     ASSERT_TRUE(HasVoiceCapability());
934     std::shared_ptr<DataShare::DataShareHelper> helper = CreateGlobalParamsHelper();
935     ASSERT_NE(helper, nullptr);
936     int ret = GlobalParamsNumMatchInsert(helper);
937     helper = nullptr;
938     EXPECT_GE(ret, DATA_STORAGE_ERROR);
939 }
940 
941 /**
942  * @tc.number   GlobalParamsNumMatchUpdate_001
943  * @tc.name     update NumMatch data
944  * @tc.desc     Function test
945  */
946 HWTEST_F(DataStorageGtest, GlobalParamsNumMatchUpdate_001, Function | MediumTest | Level1)
947 {
948     ASSERT_TRUE(HasVoiceCapability());
949     std::shared_ptr<DataShare::DataShareHelper> helper = CreateGlobalParamsHelper();
950     ASSERT_NE(helper, nullptr);
951     int ret = GlobalParamsNumMatchUpdate(helper);
952     helper = nullptr;
953     EXPECT_GE(ret, DATA_STORAGE_ERROR);
954 }
955 
956 /**
957  * @tc.number   GlobalParamsNumMatchSelect_001
958  * @tc.name     select NumMatch data
959  * @tc.desc     Function test
960  */
961 HWTEST_F(DataStorageGtest, GlobalParamsNumMatchSelect_001, Function | MediumTest | Level1)
962 {
963     ASSERT_TRUE(HasVoiceCapability());
964     std::shared_ptr<DataShare::DataShareHelper> helper = CreateGlobalParamsHelper();
965     ASSERT_NE(helper, nullptr);
966     int ret = GlobalParamsNumMatchSelect(helper);
967     helper = nullptr;
968     EXPECT_GE(ret, DATA_STORAGE_ERROR);
969 }
970 
971 /**
972  * @tc.number   GlobalParamsNumMatchDelete_001
973  * @tc.name     delete NumMatch data
974  * @tc.desc     Function test
975  */
976 HWTEST_F(DataStorageGtest, GlobalParamsNumMatchDelete_001, Function | MediumTest | Level1)
977 {
978     ASSERT_TRUE(HasVoiceCapability());
979     std::shared_ptr<DataShare::DataShareHelper> helper = CreateGlobalParamsHelper();
980     ASSERT_NE(helper, nullptr);
981     int ret = GlobalParamsNumMatchDelete(helper);
982     helper = nullptr;
983     EXPECT_GE(ret, DATA_STORAGE_ERROR);
984 }
985 /**
986  * @tc.number   GlobalEccInsert_001
987  * @tc.name     insert ecc data
988  * @tc.desc     Function test
989  */
990 HWTEST_F(DataStorageGtest, GlobalEccInsert_001, Function | MediumTest | Level1)
991 {
992     ASSERT_TRUE(HasVoiceCapability());
993     std::shared_ptr<DataShare::DataShareHelper> helper = CreateGlobalParamsHelper();
994     ASSERT_NE(helper, nullptr);
995     int ret = GlobalEccInsert(helper);
996     helper = nullptr;
997     EXPECT_GE(ret, DATA_STORAGE_ERROR);
998 }
999 
1000 /**
1001  * @tc.number   GlobalEccUpdate_002
1002  * @tc.name     update ecc data
1003  * @tc.desc     Function test
1004  */
1005 HWTEST_F(DataStorageGtest, GlobalEccUpdate_002, Function | MediumTest | Level2)
1006 {
1007     ASSERT_TRUE(HasVoiceCapability());
1008     std::shared_ptr<DataShare::DataShareHelper> helper = CreateGlobalParamsHelper();
1009     ASSERT_NE(helper, nullptr);
1010     int ret = GlobalEccUpdate(helper);
1011     helper = nullptr;
1012     EXPECT_GE(ret, DATA_STORAGE_ERROR);
1013 }
1014 
1015 /**
1016  * @tc.number   GlobalEccSelect_003
1017  * @tc.name     select ecc data
1018  * @tc.desc     Function test
1019  */
1020 HWTEST_F(DataStorageGtest, GlobalEccSelect_003, Function | MediumTest | Level1)
1021 {
1022     ASSERT_TRUE(HasVoiceCapability());
1023     std::shared_ptr<DataShare::DataShareHelper> helper = CreateGlobalParamsHelper();
1024     ASSERT_NE(helper, nullptr);
1025     int ret = GlobalEccSelect(helper);
1026     helper = nullptr;
1027     EXPECT_GE(ret, DATA_STORAGE_ERROR);
1028 }
1029 
1030 /**
1031  * @tc.number   GlobalEccDelete_004
1032  * @tc.name     delete ecc data
1033  * @tc.desc     Function test
1034  */
1035 HWTEST_F(DataStorageGtest, GlobalEccDelete_004, Function | MediumTest | Level1)
1036 {
1037     ASSERT_TRUE(HasVoiceCapability());
1038     std::shared_ptr<DataShare::DataShareHelper> helper = CreateGlobalParamsHelper();
1039     ASSERT_NE(helper, nullptr);
1040     int ret = GlobalEccDelete(helper);
1041     helper = nullptr;
1042     EXPECT_GE(ret, DATA_STORAGE_ERROR);
1043 }
1044 
1045 /**
1046  * @tc.number   OpkeyVersion_001
1047  * @tc.name     Query cust param version
1048  * @tc.desc     Function test
1049  */
1050 HWTEST_F(DataStorageGtest, OpkeyVersion_001, Function | MediumTest | Level1)
1051 {
1052     std::shared_ptr<DataShare::DataShareHelper> helper = CreateOpKeyVersionCustHelper();
1053     ASSERT_NE(helper, nullptr);
1054     Uri uri("datashare:///com.ohos.opkeyversionability/cust_param");
1055     bool ret = OpKeyVersionQuery(helper, uri);
1056     helper = nullptr;
1057     EXPECT_TRUE(ret);
1058 }
1059 
1060 /**
1061  * @tc.number   OpkeyVersion_002
1062  * @tc.name     Query chip param version
1063  * @tc.desc     Function test
1064  */
1065 HWTEST_F(DataStorageGtest, OpkeyVersion_002, Function | MediumTest | Level1)
1066 {
1067     std::shared_ptr<DataShare::DataShareHelper> helper = CreateOpKeyVersionChipHelper();
1068     ASSERT_NE(helper, nullptr);
1069     Uri uri("datashare:///com.ohos.opkeyversionability/chip_param");
1070     bool ret = OpKeyVersionQuery(helper, uri);
1071     helper = nullptr;
1072     EXPECT_TRUE(ret);
1073 }
1074 #else // TEL_TEST_UNSUPPORT
1075 /**
1076  * @tc.number   TelMockTest_001
1077  * @tc.name     Test for unsupport platform
1078  * @tc.desc     Function test
1079  */
1080 HWTEST_F(DataStorageGtest, TelMockTest_001, Function | MediumTest | Level1)
1081 {
1082     EXPECT_TRUE(true);
1083 }
1084 #endif // TEL_TEST_UNSUPPORT
1085 
1086 /**
1087  * @tc.number   PseBaseStationInsert_001
1088  * @tc.name     insert pse base station data
1089  * @tc.desc     Function test
1090  */
1091 HWTEST_F(DataStorageGtest, PseBaseStationInsert_001, Function | MediumTest | Level1)
1092 {
1093     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
1094     ASSERT_NE(helper, nullptr);
1095     int ret = PseBaseStationInsert(helper);
1096     helper = nullptr;
1097     EXPECT_GE(ret, DATA_STORAGE_ERROR);
1098 }
1099 
1100 /**
1101  * @tc.number   PseBaseStationUpdate_001
1102  * @tc.name     update pse base station data
1103  * @tc.desc     Function test
1104  */
1105 HWTEST_F(DataStorageGtest, PseBaseStationUpdate_001, Function | MediumTest | Level2)
1106 {
1107     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
1108     ASSERT_NE(helper, nullptr);
1109     int ret = PseBaseStationUpdate(helper);
1110     helper = nullptr;
1111     EXPECT_GE(ret, DATA_STORAGE_ERROR);
1112 }
1113 
1114 /**
1115  * @tc.number   PseBaseStationQuery_001
1116  * @tc.name     query pse base station data
1117  * @tc.desc     Function test
1118  */
1119 HWTEST_F(DataStorageGtest, PseBaseStationQuery_001, Function | MediumTest | Level2)
1120 {
1121     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
1122     ASSERT_NE(helper, nullptr);
1123     bool ret = PseBaseStationQuery(helper);
1124     EXPECT_TRUE(ret);
1125     helper = nullptr;
1126 }
1127 
PseBaseStationInsert(const std::shared_ptr<DataShare::DataShareHelper> & helper) const1128 int DataStorageGtest::PseBaseStationInsert(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
1129 {
1130     Uri uri("datashare:///com.ohos.pdpprofileability/net/pse_base_station");
1131     DataShare::DataShareValuesBucket value;
1132     value.Put(PseBaseStationData::DATE, "01234567");
1133     value.Put(PseBaseStationData::COUNT, 1);
1134     return helper->Insert(uri, value);
1135 }
1136 
PseBaseStationUpdate(const std::shared_ptr<DataShare::DataShareHelper> & helper) const1137 int DataStorageGtest::PseBaseStationUpdate(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
1138 {
1139     Uri uri("datashare:///com.ohos.pdpprofileability/net/pse_base_station");
1140     DataShare::DataShareValuesBucket value;
1141     int32_t count = 10;
1142     value.Put(PseBaseStationData::COUNT, count);
1143     DataShare::DataSharePredicates predicates;
1144     predicates.EqualTo(PseBaseStationData::DATE, "01234567");
1145     return helper->Update(uri, predicates, value);
1146 }
1147 
PseBaseStationQuery(const std::shared_ptr<DataShare::DataShareHelper> & helper) const1148 bool DataStorageGtest::PseBaseStationQuery(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
1149 {
1150     Uri uri("datashare:///com.ohos.pdpprofileability/net/pse_base_station");
1151     std::vector<std::string> columns;
1152     DataShare::DataSharePredicates predicates;
1153     predicates.EqualTo(PseBaseStationData::DATE, "01234567");
1154     std::shared_ptr<DataShare::DataShareResultSet> resultSet = helper->Query(uri, predicates, columns);
1155     return resultSet != nullptr;
1156 }
1157 } // namespace Telephony
1158 } // namespace OHOS
1159