• 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, Function | MediumTest | Level0)
594 {
595     if (!HasVoiceCapability()) {
596         return;
597     }
598     std::shared_ptr<DataShare::DataShareHelper> smsHelper = CreateSmsHelper();
599     std::shared_ptr<DataShare::DataShareHelper> simHelper = CreateSimHelper();
600     if (smsHelper == nullptr || simHelper == nullptr) {
601         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
602         return;
603     }
604     bool retSms = (smsHelper != nullptr);
605     bool retSim = (simHelper != nullptr);
606     smsHelper = nullptr;
607     simHelper = nullptr;
608     EXPECT_TRUE(retSms);
609     EXPECT_TRUE(retSim);
610 }
611 
612 /**
613  * @tc.number   OpKeyInsert_001
614  * @tc.name     insert opkey data
615  * @tc.desc     Function test
616  */
617 HWTEST_F(DataStorageGtest, OpKeyInsert_001, Function | MediumTest | Level1)
618 {
619     if (!HasVoiceCapability()) {
620         return;
621     }
622     std::shared_ptr<DataShare::DataShareHelper> helper = CreateOpKeyHelper();
623     if (helper == nullptr) {
624         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
625         return;
626     }
627     int ret = OpKeyInsert(helper);
628     helper = nullptr;
629     EXPECT_GE(ret, DATA_STORAGE_ERROR);
630 }
631 
632 /**
633  * @tc.number   OpKeyUpdate_001
634  * @tc.name     update opkey data
635  * @tc.desc     Function test
636  */
637 HWTEST_F(DataStorageGtest, OpKeyUpdate_001, Function | MediumTest | Level2)
638 {
639     if (!HasVoiceCapability()) {
640         return;
641     }
642     std::shared_ptr<DataShare::DataShareHelper> helper = CreateOpKeyHelper();
643     if (helper == nullptr) {
644         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
645         return;
646     }
647     int ret = OpKeyUpdate(helper);
648     helper = nullptr;
649     EXPECT_GE(ret, DATA_STORAGE_ERROR);
650 }
651 
652 /**
653  * @tc.number   OpKeySelect_001
654  * @tc.name     select opkey data
655  * @tc.desc     Function test
656  */
657 HWTEST_F(DataStorageGtest, OpKeySelect_001, Function | MediumTest | Level1)
658 {
659     if (!HasVoiceCapability()) {
660         return;
661     }
662     std::shared_ptr<DataShare::DataShareHelper> helper = CreateOpKeyHelper();
663     if (helper == nullptr) {
664         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
665         return;
666     }
667     int ret = OpKeySelect(helper);
668     helper = nullptr;
669     EXPECT_GE(ret, DATA_STORAGE_ERROR);
670 }
671 
672 /**
673  * @tc.number   OpKeyDelete_001
674  * @tc.name     delete opkey data
675  * @tc.desc     Function test
676  */
677 HWTEST_F(DataStorageGtest, OpKeyDelete_001, Function | MediumTest | Level1)
678 {
679     if (!HasVoiceCapability()) {
680         return;
681     }
682     std::shared_ptr<DataShare::DataShareHelper> helper = CreateOpKeyHelper();
683     if (helper == nullptr) {
684         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
685         return;
686     }
687     int ret = OpKeyDelete(helper);
688     helper = nullptr;
689     EXPECT_GE(ret, DATA_STORAGE_ERROR);
690 }
691 
692 /**
693  * @tc.number   SimInsert_001
694  * @tc.name     insert sim data
695  * @tc.desc     Function test
696  */
697 HWTEST_F(DataStorageGtest, SimInsert_001, Function | MediumTest | Level1)
698 {
699     if (!HasVoiceCapability()) {
700         return;
701     }
702     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSimHelper();
703     if (helper == nullptr) {
704         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
705         return;
706     }
707     int ret = SimInsert(helper);
708     helper = nullptr;
709     EXPECT_GE(ret, DATA_STORAGE_ERROR);
710 }
711 
712 /**
713  * @tc.number   SimUpdate_001
714  * @tc.name     update sim data
715  * @tc.desc     Function test
716  */
717 HWTEST_F(DataStorageGtest, SimUpdate_001, Function | MediumTest | Level1)
718 {
719     if (!HasVoiceCapability()) {
720         return;
721     }
722     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSimHelper();
723     if (helper == nullptr) {
724         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
725         return;
726     }
727     int ret = SimUpdate(helper);
728     helper = nullptr;
729     EXPECT_GE(ret, DATA_STORAGE_ERROR);
730 }
731 
732 /**
733  * @tc.number   SimSelect_001
734  * @tc.name     select sim data
735  * @tc.desc     Function test
736  */
737 HWTEST_F(DataStorageGtest, SimSelect_001, Function | MediumTest | Level1)
738 {
739     if (!HasVoiceCapability()) {
740         return;
741     }
742     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSimHelper();
743     if (helper == nullptr) {
744         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
745         return;
746     }
747     int ret = SimSelect(helper);
748     helper = nullptr;
749     EXPECT_GE(ret, DATA_STORAGE_ERROR);
750 }
751 
752 /**
753  * @tc.number   SimDelete_001
754  * @tc.name     delete sim data
755  * @tc.desc     Function test
756  * @tc.require: I5LACE
757  */
758 HWTEST_F(DataStorageGtest, SimDelete_001, Function | MediumTest | Level1)
759 {
760     if (!HasVoiceCapability()) {
761         return;
762     }
763     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSimHelper();
764     if (helper == nullptr) {
765         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
766         return;
767     }
768     int ret = SimDelete(helper);
769     helper = nullptr;
770     EXPECT_GE(ret, DATA_STORAGE_ERROR);
771 }
772 
773 /**
774  * @tc.number   SmsBatchInsert_001
775  * @tc.name     batch insert sms data
776  * @tc.desc     Function test
777  * @tc.require: I5LACE
778  */
779 HWTEST_F(DataStorageGtest, SmsBatchInsert_001, Function | MediumTest | Level1)
780 {
781     if (!HasVoiceCapability()) {
782         return;
783     }
784     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSmsHelper();
785     if (helper == nullptr) {
786         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
787         return;
788     }
789     int ret = SmsBatchInsert(helper);
790     helper = nullptr;
791     EXPECT_GE(ret, DATA_STORAGE_ERROR);
792 }
793 
794 /**
795  * @tc.number   SmsInsert_001
796  * @tc.name     insert sms data
797  * @tc.desc     Function test
798  * @tc.require: I5LACE
799  */
800 HWTEST_F(DataStorageGtest, SmsInsert_001, Function | MediumTest | Level1)
801 {
802     if (!HasVoiceCapability()) {
803         return;
804     }
805     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSmsHelper();
806     if (helper == nullptr) {
807         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
808         return;
809     }
810     int ret = SmsInsert(helper);
811     helper = nullptr;
812     EXPECT_GE(ret, DATA_STORAGE_ERROR);
813 }
814 
815 /**
816  * @tc.number   SmsUpdate_001
817  * @tc.name     update sms data
818  * @tc.desc     Function test
819  */
820 HWTEST_F(DataStorageGtest, SmsUpdate_001, Function | MediumTest | Level1)
821 {
822     if (!HasVoiceCapability()) {
823         return;
824     }
825     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSmsHelper();
826     if (helper == nullptr) {
827         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
828         return;
829     }
830     int ret = SmsUpdate(helper);
831     helper = nullptr;
832     EXPECT_GE(ret, DATA_STORAGE_ERROR);
833 }
834 
835 /**
836  * @tc.number   SmsSelect_001
837  * @tc.name     select sms data
838  * @tc.desc     Function test
839  */
840 HWTEST_F(DataStorageGtest, SmsSelect_001, Function | MediumTest | Level1)
841 {
842     if (!HasVoiceCapability()) {
843         return;
844     }
845     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSmsHelper();
846     if (helper == nullptr) {
847         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
848         return;
849     }
850     int ret = SmsSelect(helper);
851     helper = nullptr;
852     EXPECT_GE(ret, DATA_STORAGE_ERROR);
853 }
854 
855 /**
856  * @tc.number   SmsDelete_001
857  * @tc.name     delete sms data
858  * @tc.desc     Function test
859  * @tc.require: I5LACE
860  */
861 HWTEST_F(DataStorageGtest, SmsDelete_001, Function | MediumTest | Level1)
862 {
863     if (!HasVoiceCapability()) {
864         return;
865     }
866     std::shared_ptr<DataShare::DataShareHelper> helper = CreateSmsHelper();
867     if (helper == nullptr) {
868         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
869         return;
870     }
871     int ret = SmsDelete(helper);
872     helper = nullptr;
873     EXPECT_GE(ret, DATA_STORAGE_ERROR);
874 }
875 
876 /**
877  * @tc.number   PdpProfileInsert_001
878  * @tc.name     insert apn data
879  * @tc.desc     Function test
880  */
881 HWTEST_F(DataStorageGtest, PdpProfileInsert_001, Function | MediumTest | Level1)
882 {
883     if (!HasVoiceCapability()) {
884         return;
885     }
886     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
887     if (helper == nullptr) {
888         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
889         return;
890     }
891     int ret = PdpProfileInsert(helper);
892     helper = nullptr;
893     EXPECT_GE(ret, DATA_STORAGE_ERROR);
894 }
895 
896 /**
897  * @tc.number   PdpProfileUpdate_001
898  * @tc.name     update apn data
899  * @tc.desc     Function test
900  */
901 HWTEST_F(DataStorageGtest, PdpProfileUpdate_001, Function | MediumTest | Level2)
902 {
903     if (!HasVoiceCapability()) {
904         return;
905     }
906     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
907     if (helper == nullptr) {
908         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
909         return;
910     }
911     int ret = PdpProfileUpdate(helper);
912     helper = nullptr;
913     EXPECT_GE(ret, DATA_STORAGE_ERROR);
914 }
915 
916 /**
917  * @tc.number   PdpProfileUpdate_002
918  * @tc.name     update apn data
919  * @tc.desc     Function test
920  */
921 HWTEST_F(DataStorageGtest, PdpProfileUpdate_002, Function | MediumTest | Level2)
922 {
923     if (!HasVoiceCapability()) {
924         return;
925     }
926     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
927     if (helper == nullptr) {
928         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
929         return;
930     }
931     int ret = PdpProfileUpdate2(helper);
932     helper = nullptr;
933     EXPECT_GE(ret, DATA_STORAGE_ERROR);
934 }
935 
936 /**
937  * @tc.number   PdpProfileUpdate_003
938  * @tc.name     update apn data
939  * @tc.desc     Function test
940  */
941 HWTEST_F(DataStorageGtest, PdpProfileUpdate_003, Function | MediumTest | Level2)
942 {
943     if (!HasVoiceCapability()) {
944         return;
945     }
946     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
947     if (helper == nullptr) {
948         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
949         return;
950     }
951     int ret = PdpProfileUpdate3(helper);
952     helper = nullptr;
953     EXPECT_GE(ret, DATA_STORAGE_ERROR);
954 }
955 
956 /**
957  * @tc.number   PdpProfileUpdate_004
958  * @tc.name     update apn data
959  * @tc.desc     Function test
960  */
961 HWTEST_F(DataStorageGtest, PdpProfileUpdate_004, Function | MediumTest | Level2)
962 {
963     if (!HasVoiceCapability()) {
964         return;
965     }
966     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
967     if (helper == nullptr) {
968         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
969         return;
970     }
971     int ret = PdpProfileUpdate4(helper);
972     helper = nullptr;
973     EXPECT_GE(ret, DATA_STORAGE_ERROR);
974 }
975 
976 /**
977  * @tc.number   PdpProfileSelect_001
978  * @tc.name     select apn data
979  * @tc.desc     Function test
980  */
981 HWTEST_F(DataStorageGtest, PdpProfileSelect_001, Function | MediumTest | Level1)
982 {
983     if (!HasVoiceCapability()) {
984         return;
985     }
986     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
987     if (helper == nullptr) {
988         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
989         return;
990     }
991     int ret = PdpProfileSelect(helper);
992     helper = nullptr;
993     EXPECT_GE(ret, DATA_STORAGE_ERROR);
994 }
995 
996 /**
997  * @tc.number   PdpProfileSelect_002
998  * @tc.name     select apn data
999  * @tc.desc     Function test
1000  */
1001 HWTEST_F(DataStorageGtest, PdpProfileSelect_002, Function | MediumTest | Level1)
1002 {
1003     if (!HasVoiceCapability()) {
1004         return;
1005     }
1006     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
1007     if (helper == nullptr) {
1008         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
1009         return;
1010     }
1011     int ret = PdpProfileSelect2(helper);
1012     helper = nullptr;
1013     EXPECT_GE(ret, DATA_STORAGE_ERROR);
1014 }
1015 
1016 /**
1017  * @tc.number   PdpProfileDelete_001
1018  * @tc.name     delete apn data
1019  * @tc.desc     Function test
1020  */
1021 HWTEST_F(DataStorageGtest, PdpProfileDelete_001, Function | MediumTest | Level1)
1022 {
1023     if (!HasVoiceCapability()) {
1024         return;
1025     }
1026     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
1027     if (helper == nullptr) {
1028         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
1029         return;
1030     }
1031     int ret = PdpProfileDelete(helper);
1032     helper = nullptr;
1033     EXPECT_GE(ret, DATA_STORAGE_ERROR);
1034 }
1035 
1036 /**
1037  * @tc.number   GlobalParamsNumMatchInsert_001
1038  * @tc.name     insert NumMatch data
1039  * @tc.desc     Function test
1040  */
1041 HWTEST_F(DataStorageGtest, GlobalParamsNumMatchInsert_001, Function | MediumTest | Level1)
1042 {
1043     if (!HasVoiceCapability()) {
1044         return;
1045     }
1046     std::shared_ptr<DataShare::DataShareHelper> helper = CreateGlobalParamsHelper();
1047     if (helper == nullptr) {
1048         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
1049         return;
1050     }
1051     int ret = GlobalParamsNumMatchInsert(helper);
1052     helper = nullptr;
1053     EXPECT_GE(ret, DATA_STORAGE_ERROR);
1054 }
1055 
1056 /**
1057  * @tc.number   GlobalParamsNumMatchUpdate_001
1058  * @tc.name     update NumMatch data
1059  * @tc.desc     Function test
1060  */
1061 HWTEST_F(DataStorageGtest, GlobalParamsNumMatchUpdate_001, Function | MediumTest | Level1)
1062 {
1063     if (!HasVoiceCapability()) {
1064         return;
1065     }
1066     std::shared_ptr<DataShare::DataShareHelper> helper = CreateGlobalParamsHelper();
1067     if (helper == nullptr) {
1068         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
1069         return;
1070     }
1071     int ret = GlobalParamsNumMatchUpdate(helper);
1072     helper = nullptr;
1073     EXPECT_GE(ret, DATA_STORAGE_ERROR);
1074 }
1075 
1076 /**
1077  * @tc.number   GlobalParamsNumMatchSelect_001
1078  * @tc.name     select NumMatch data
1079  * @tc.desc     Function test
1080  */
1081 HWTEST_F(DataStorageGtest, GlobalParamsNumMatchSelect_001, Function | MediumTest | Level1)
1082 {
1083     if (!HasVoiceCapability()) {
1084         return;
1085     }
1086     std::shared_ptr<DataShare::DataShareHelper> helper = CreateGlobalParamsHelper();
1087     if (helper == nullptr) {
1088         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
1089         return;
1090     }
1091     int ret = GlobalParamsNumMatchSelect(helper);
1092     helper = nullptr;
1093     EXPECT_GE(ret, DATA_STORAGE_ERROR);
1094 }
1095 
1096 /**
1097  * @tc.number   GlobalParamsNumMatchDelete_001
1098  * @tc.name     delete NumMatch data
1099  * @tc.desc     Function test
1100  */
1101 HWTEST_F(DataStorageGtest, GlobalParamsNumMatchDelete_001, Function | MediumTest | Level1)
1102 {
1103     if (!HasVoiceCapability()) {
1104         return;
1105     }
1106     std::shared_ptr<DataShare::DataShareHelper> helper = CreateGlobalParamsHelper();
1107     if (helper == nullptr) {
1108         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
1109         return;
1110     }
1111     int ret = GlobalParamsNumMatchDelete(helper);
1112     helper = nullptr;
1113     EXPECT_GE(ret, DATA_STORAGE_ERROR);
1114 }
1115 /**
1116  * @tc.number   GlobalEccInsert_001
1117  * @tc.name     insert ecc data
1118  * @tc.desc     Function test
1119  */
1120 HWTEST_F(DataStorageGtest, GlobalEccInsert_001, Function | MediumTest | Level1)
1121 {
1122     if (!HasVoiceCapability()) {
1123         return;
1124     }
1125     std::shared_ptr<DataShare::DataShareHelper> helper = CreateGlobalParamsHelper();
1126     if (helper == nullptr) {
1127         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
1128         return;
1129     }
1130     int ret = GlobalEccInsert(helper);
1131     helper = nullptr;
1132     EXPECT_GE(ret, DATA_STORAGE_ERROR);
1133 }
1134 
1135 /**
1136  * @tc.number   GlobalEccUpdate_002
1137  * @tc.name     update ecc data
1138  * @tc.desc     Function test
1139  */
1140 HWTEST_F(DataStorageGtest, GlobalEccUpdate_002, Function | MediumTest | Level2)
1141 {
1142     if (!HasVoiceCapability()) {
1143         return;
1144     }
1145     std::shared_ptr<DataShare::DataShareHelper> helper = CreateGlobalParamsHelper();
1146     if (helper == nullptr) {
1147         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
1148         return;
1149     }
1150     int ret = GlobalEccUpdate(helper);
1151     helper = nullptr;
1152     EXPECT_GE(ret, DATA_STORAGE_ERROR);
1153 }
1154 
1155 /**
1156  * @tc.number   GlobalEccSelect_003
1157  * @tc.name     select ecc data
1158  * @tc.desc     Function test
1159  */
1160 HWTEST_F(DataStorageGtest, GlobalEccSelect_003, Function | MediumTest | Level1)
1161 {
1162     if (!HasVoiceCapability()) {
1163         return;
1164     }
1165     std::shared_ptr<DataShare::DataShareHelper> helper = CreateGlobalParamsHelper();
1166     if (helper == nullptr) {
1167         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
1168         return;
1169     }
1170     int ret = GlobalEccSelect(helper);
1171     helper = nullptr;
1172     EXPECT_GE(ret, DATA_STORAGE_ERROR);
1173 }
1174 
1175 /**
1176  * @tc.number   GlobalEccDelete_004
1177  * @tc.name     delete ecc data
1178  * @tc.desc     Function test
1179  */
1180 HWTEST_F(DataStorageGtest, GlobalEccDelete_004, Function | MediumTest | Level1)
1181 {
1182     if (!HasVoiceCapability()) {
1183         return;
1184     }
1185     std::shared_ptr<DataShare::DataShareHelper> helper = CreateGlobalParamsHelper();
1186     if (helper == nullptr) {
1187         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
1188         return;
1189     }
1190     int ret = GlobalEccDelete(helper);
1191     helper = nullptr;
1192     EXPECT_GE(ret, DATA_STORAGE_ERROR);
1193 }
1194 
1195 /**
1196  * @tc.number   OpkeyVersion_001
1197  * @tc.name     Query cust param version
1198  * @tc.desc     Function test
1199  */
1200 HWTEST_F(DataStorageGtest, OpkeyVersion_001, Function | MediumTest | Level1)
1201 {
1202     std::shared_ptr<DataShare::DataShareHelper> helper = CreateOpKeyVersionCustHelper();
1203     if (helper == nullptr) {
1204         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
1205         return;
1206     }
1207     Uri uri("datashare:///com.ohos.opkeyversionability/cust_param");
1208     bool ret = OpKeyVersionQuery(helper, uri);
1209     helper = nullptr;
1210     EXPECT_TRUE(ret);
1211 }
1212 
1213 /**
1214  * @tc.number   OpkeyVersion_002
1215  * @tc.name     Query chip param version
1216  * @tc.desc     Function test
1217  */
1218 HWTEST_F(DataStorageGtest, OpkeyVersion_002, Function | MediumTest | Level1)
1219 {
1220     std::shared_ptr<DataShare::DataShareHelper> helper = CreateOpKeyVersionChipHelper();
1221     if (helper == nullptr) {
1222         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
1223         return;
1224     }
1225     Uri uri("datashare:///com.ohos.opkeyversionability/chip_param");
1226     bool ret = OpKeyVersionQuery(helper, uri);
1227     helper = nullptr;
1228     EXPECT_TRUE(ret);
1229 }
1230 #else // TEL_TEST_UNSUPPORT
1231 /**
1232  * @tc.number   TelMockTest_001
1233  * @tc.name     Test for unsupport platform
1234  * @tc.desc     Function test
1235  */
1236 HWTEST_F(DataStorageGtest, TelMockTest_001, Function | MediumTest | Level1)
1237 {
1238     EXPECT_TRUE(true);
1239 }
1240 #endif // TEL_TEST_UNSUPPORT
1241 
1242 /**
1243  * @tc.number   PseBaseStationInsert_001
1244  * @tc.name     insert pse base station data
1245  * @tc.desc     Function test
1246  */
1247 HWTEST_F(DataStorageGtest, PseBaseStationInsert_001, Function | MediumTest | Level1)
1248 {
1249     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
1250     if (helper == nullptr) {
1251         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
1252         return;
1253     }
1254     int ret = PseBaseStationInsert(helper);
1255     helper = nullptr;
1256     EXPECT_GE(ret, DATA_STORAGE_ERROR);
1257 }
1258 
1259 /**
1260  * @tc.number   PseBaseStationUpdate_001
1261  * @tc.name     update pse base station data
1262  * @tc.desc     Function test
1263  */
1264 HWTEST_F(DataStorageGtest, PseBaseStationUpdate_001, Function | MediumTest | Level2)
1265 {
1266     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
1267     if (helper == nullptr) {
1268         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
1269         return;
1270     }
1271     int ret = PseBaseStationUpdate(helper);
1272     helper = nullptr;
1273     EXPECT_GE(ret, DATA_STORAGE_ERROR);
1274 }
1275 
1276 /**
1277  * @tc.number   PseBaseStationQuery_001
1278  * @tc.name     query pse base station data
1279  * @tc.desc     Function test
1280  */
1281 HWTEST_F(DataStorageGtest, PseBaseStationQuery_001, Function | MediumTest | Level2)
1282 {
1283     std::shared_ptr<DataShare::DataShareHelper> helper = CreatePdpProfileHelper();
1284     if (helper == nullptr) {
1285         DATA_STORAGE_LOGE("CreateDataShareHelper occur error");
1286         return;
1287     }
1288     bool ret = PseBaseStationQuery(helper);
1289     EXPECT_TRUE(ret);
1290     helper = nullptr;
1291 }
1292 
PseBaseStationInsert(const std::shared_ptr<DataShare::DataShareHelper> & helper) const1293 int DataStorageGtest::PseBaseStationInsert(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
1294 {
1295     Uri uri("datashare:///com.ohos.pdpprofileability/net/pse_base_station");
1296     DataShare::DataShareValuesBucket value;
1297     value.Put(PseBaseStationData::DATE, "01234567");
1298     value.Put(PseBaseStationData::COUNT, 1);
1299     return helper->Insert(uri, value);
1300 }
1301 
PseBaseStationUpdate(const std::shared_ptr<DataShare::DataShareHelper> & helper) const1302 int DataStorageGtest::PseBaseStationUpdate(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
1303 {
1304     Uri uri("datashare:///com.ohos.pdpprofileability/net/pse_base_station");
1305     DataShare::DataShareValuesBucket value;
1306     int32_t count = 10;
1307     value.Put(PseBaseStationData::COUNT, count);
1308     DataShare::DataSharePredicates predicates;
1309     predicates.EqualTo(PseBaseStationData::DATE, "01234567");
1310     return helper->Update(uri, predicates, value);
1311 }
1312 
PseBaseStationQuery(const std::shared_ptr<DataShare::DataShareHelper> & helper) const1313 bool DataStorageGtest::PseBaseStationQuery(const std::shared_ptr<DataShare::DataShareHelper> &helper) const
1314 {
1315     Uri uri("datashare:///com.ohos.pdpprofileability/net/pse_base_station");
1316     std::vector<std::string> columns;
1317     DataShare::DataSharePredicates predicates;
1318     predicates.EqualTo(PseBaseStationData::DATE, "01234567");
1319     std::shared_ptr<DataShare::DataShareResultSet> resultSet = helper->Query(uri, predicates, columns);
1320     return resultSet != nullptr;
1321 }
1322 } // namespace Telephony
1323 } // namespace OHOS
1324