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 16import dataShare from '@ohos.data.dataShare'; 17import {afterAll, afterEach, beforeAll, beforeEach, describe, expect, it} from 'deccjsunit/index' 18import common from './common.js'; 19 20const URI_VOICEMAIL = "datashare:///com.ohos.voicemailability"; 21const voicemailUri = "datashare:///com.ohos.voicemailability/calls/voicemail"; 22 23describe('VoicemailTest', function() { 24 console.log("----------VoicemailTest is starting!----------"); 25 26 async function voicemailQuery(map, tag) 27 { 28 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 29 console.info(tag + ':calllogInsertQuery start ! dataShareHelper = ' + dataShareHelper); 30 var resultColumns = []; 31 let condition = new dataShare.DataSharePredicates(); 32 condition.equalTo("id", map.get("id")); 33 try { 34 var resultSet = await dataShareHelper.query(voicemailUri, resultColumns, condition); 35 if (resultSet.rowCount > 0) { 36 if (resultSet.goToFirstRow()) { 37 do { 38 for (var [key, value] of map) { 39 let dbresult = resultSet.getString(resultSet.getColumnIndex(key)); 40 console.info(tag + ' :logMessage voicemailQuery key = ' + key + ' dbresult :' + dbresult + 41 ' value : ' + value); 42 expect(value == dbresult).assertTrue(); 43 } 44 } while (resultSet.goToNextRow()); 45 } 46 } 47 resultSet.close(); 48 } catch (error) { 49 console.info(tag + ":logMessage voicemailQuery: error = " + error); 50 } 51 } 52 53 async function voicemailQueryForDelete(map, tag) 54 { 55 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 56 console.info(tag + ': voicemailQueryForDelete start ! dataShareHelper = ' + dataShareHelper); 57 let resultColumns = common.getCallLogResultColumns(); 58 let condition = new dataShare.DataSharePredicates(); 59 condition.equalTo("id", map.get("id")); 60 try { 61 var resultSet = await dataShareHelper.query(voicemailUri, resultColumns, condition); 62 expect(resultSet.goToFirstRow() == false).assertTrue(); 63 console.info(tag + " :logMessage voicemailQueryForDelete: goToFirstRow " + resultSet.goToFirstRow()); 64 resultSet.close(); 65 } catch (error) { 66 console.info(tag + " :logMessage voicemailQueryForDelete: error = " + error); 67 } 68 } 69 70 async function voicemailQueryError(map, tag) 71 { 72 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 73 console.info(tag + ': voicemailQueryError start ! dataShareHelper = ' + dataShareHelper); 74 let resultColumns = common.getCallLogResultColumns(); 75 let condition = new dataShare.DataSharePredicates(); 76 condition.equalTo("phone_number", map.get("phone_number")); 77 try { 78 var resultSet = await dataShareHelper.query(voicemailUri, resultColumns, condition); 79 expect(resultSet.goToFirstRow() == false).assertTrue(); 80 console.info(tag + " :logMessage voicemailQueryError: goToFirstRow " + resultSet.goToFirstRow()); 81 resultSet.close(); 82 } catch (error) { 83 console.info(tag + " :logMessage voicemailQueryError: error = " + error); 84 } 85 } 86 87 async function voicemailQueryForBatchInsert(array, tag) 88 { 89 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 90 console.info(tag + ': voicemailQueryForBatchInsert start ! dataShareHelper = ' + dataShareHelper); 91 let resultColumns = common.getCallLogResultColumns(); 92 let condition = new dataShare.DataSharePredicates(); 93 condition.equalTo("phone_number", array[0].get("phone_number")); 94 try { 95 var resultSet = await dataShareHelper.query(voicemailUri, resultColumns, condition); 96 var size = array.size(); 97 console.info(tag + ' : logMessage voicemailQueryForBatchInsert: size' + size); 98 expect(resultSet.rowCount == size).assertEqual(true); 99 var i = 0; 100 if (resultSet.rowCount > 0) { 101 if (resultSet.goToFirstRow()) { 102 do { 103 for (var [key, value] of array[i]) { 104 let dbresult = resultSet.getString(resultSet.getColumnIndex(key)); 105 console.info(tag + ' : logMessage voicemailQueryForBatchInsert dbresult :' + dbresult + 106 ' value : ' + value); 107 console.info( 108 tag + ' : logMessage voicemailQueryForBatchInsert value ' + (value == dbresult)); 109 expect(value == dbresult).assertTrue(); 110 } 111 i++; 112 } while (resultSet.goToNextRow()); 113 } 114 } 115 resultSet.close(); 116 } catch (error) { 117 console.info(tag + " :logMessage calllogQueryByInsert: error = " + error); 118 } 119 } 120 121 async function voiceMailDelete(tag) 122 { 123 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 124 let condition = new dataShare.DataSharePredicates(); 125 condition.greaterThan("id", "0"); 126 var deleteCode = await dataShareHelper.delete(voicemailUri, condition); 127 console.info(tag + ': voiceMailDelete deleteCode = ' + deleteCode); 128 expect(deleteCode == 0).assertTrue(); 129 } 130 131 /** 132 * @tc.number voicemail_insert_test_100 133 * @tc.name Insert voicemail data 134 * @tc.desc Function test 135 */ 136 it("voicemail_insert_test_100", 0, async function(done) { 137 console.info("---------logMessage voicemail_insert_test_100 is starting!---------") 138 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 139 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 140 console.info('logMessage uri = ' + URI_VOICEMAIL) 141 try { 142 var voicemailId = await dataShareHelper.insert(voicemailUri, common.getVoiceMail()); 143 console.info("logMessage voicemail_insert_test_100: voicemailId = " + voicemailId); 144 expect(voicemailId > 0).assertTrue(); 145 var map = common.getVoiceMailMap(); 146 map.set("id", voicemailId.toString()); 147 await voicemailQuery(map, "voicemail_insert_test_100"); 148 await voiceMailDelete("voicemail_insert_test_100"); 149 done(); 150 } catch (error) { 151 console.info("logMessage voicemail_insert_test_100: voicemail insert error = " + error); 152 done(); 153 } 154 }); 155 156 /** 157 * @tc.number voicemail_insert_test_200 158 * @tc.name Insert voicemail status 159 * @tc.desc Function test 160 */ 161 it("voicemail_insert_test_200", 0, async function(done) { 162 console.info("---------logMessage voicemail_insert_test_200 is starting!---------") 163 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 164 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 165 console.info('logMessage uri = ' + URI_VOICEMAIL) 166 var phoneNumber = randomNum(6); 167 var stringValue = {"phone_number" : phoneNumber, "voice_status" : 1}; 168 try { 169 var voicemailId = await dataShareHelper.insert(voicemailUri, stringValue) 170 console.info("logMessage voicemail_insert_test_200: voicemailId = " + voicemailId); 171 expect(voicemailId > 0).assertTrue(); 172 var map = new Map(); 173 map.set("id", voicemailId.toString()); 174 map.set("phone_number", phoneNumber); 175 map.set("voice_status", "1"); 176 await voicemailQuery(map, "voicemail_insert_test_200"); 177 await voiceMailDelete("voicemail_insert_test_200"); 178 done(); 179 } catch (error) { 180 console.info("logMessage voicemail_insert_test_200: voicemail insert error = " + error); 181 done(); 182 } 183 }); 184 185 /** 186 * @tc.number voicemail_insert_test_100000 187 * @tc.name Insert voicemail status 188 * @tc.desc Function test 189 */ 190 it("voicemail_insert_test_100000", 0, async function(done) { 191 console.info("---------logMessage voicemail_insert_test_100000 is starting!---------") 192 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 193 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 194 console.info('logMessage uri = ' + URI_VOICEMAIL) 195 var phoneNumber = randomNum(6); 196 var stringValue = {"phone_number" : phoneNumber, "voice_status" : 0}; 197 try { 198 var voicemailId = await dataShareHelper.insert(voicemailUri, stringValue) 199 console.info("logMessage voicemail_insert_test_100000: voicemailId = " + voicemailId); 200 expect(voicemailId > 0).assertTrue(); 201 var map = new Map(); 202 map.set("id", voicemailId.toString()); 203 map.set("phone_number", phoneNumber); 204 map.set("voice_status", "0"); 205 await voicemailQuery(map, "voicemail_insert_test_100000"); 206 await voiceMailDelete("voicemail_insert_test_100000"); 207 done(); 208 } catch (error) { 209 console.info("logMessage voicemail_insert_test_100000: voicemail insert error = " + error); 210 done(); 211 } 212 }); 213 214 /** 215 * @tc.number voicemail_update_test_1000 216 * @tc.name Update voicemail data 217 * @tc.desc Function test 218 */ 219 it("voicemail_update_test_1000", 0, async function(done) { 220 console.info("------------logMessage voicemail_update_test_1000 is starting!----------"); 221 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 222 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 223 224 try { 225 var voicemailId = await dataShareHelper.insert(voicemailUri, common.getVoiceMail()); 226 console.info("logMessage voicemail_update_test_1000: voicemailId = " + voicemailId); 227 expect(voicemailId > 0).assertTrue(); 228 await VoicemailUpdate(); 229 await voiceMailDelete("voicemail_update_test_1000"); 230 done(); 231 } catch (error) { 232 console.info("logMessage voicemail_update_test_1000: voicemail insert error = " + error); 233 done(); 234 } 235 236 async function VoicemailUpdate() 237 { 238 let condition = new dataShare.DataSharePredicates(); 239 condition.equalTo("id", voicemailId.toString()); 240 try { 241 var updateCode = await dataShareHelper.update(voicemailUri, common.getVoiceMailUpdate(), condition); 242 console.info("logMessage voicemail_update_test_1000: updateCode = " + updateCode); 243 expect(updateCode == 0).assertTrue(); 244 var map = common.getVoiceMailUpdateMap(); 245 map.set("id", voicemailId.toString()); 246 await voicemailQuery(map, "voicemail_update_test_1000"); 247 } catch (error) { 248 console.info("logMessage voicemail_update_test_1000: update error = " + error); 249 done(); 250 } 251 } 252 }); 253 254 /** 255 * @tc.number voicemail_update_test_900 256 * @tc.name Update voicemail status 257 * @tc.desc Function test 258 */ 259 it("voicemail_update_test_900", 0, async function(done) { 260 console.info("------------logMessage voicemail_update_test_900 is starting!----------"); 261 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 262 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 263 var phoneNumber = randomNum(7); 264 var insertValues = {"phone_number" : phoneNumber, "voice_status" : 0}; 265 try { 266 var voicemailId = await dataShareHelper.insert(voicemailUri, insertValues); 267 console.info("logMessage voicemail_update_test_900: voicemailId = " + voicemailId); 268 expect(voicemailId > 0).assertTrue(); 269 await VoicemailUpdate(); 270 await voiceMailDelete("voicemail_update_test_900"); 271 done(); 272 } catch (error) { 273 console.info("logMessage voicemail_update_test_900: voicemail insert error = " + error); 274 done(); 275 } 276 277 async function VoicemailUpdate() 278 { 279 var updateValues = {"voice_status" : 1}; 280 let condition = new dataShare.DataSharePredicates(); 281 condition.equalTo("id", voicemailId.toString()); 282 try { 283 var updateCode = await dataShareHelper.update(voicemailUri, updateValues, condition); 284 console.info("logMessage voicemail_update_test_900: updateCode = " + updateCode); 285 expect(updateCode == 0).assertTrue(); 286 var map = new Map(); 287 map.set("id", voicemailId.toString()); 288 map.set("voice_status", "1"); 289 await voicemailQuery(map, "voicemail_update_test_900"); 290 } catch (error) { 291 console.info("logMessage voicemail_update_test_900: update error = " + error); 292 done(); 293 } 294 } 295 }); 296 297 /** 298 * @tc.number voicemail_delete_test_500 299 * @tc.name Delete voicemail data 300 * @tc.desc Function test 301 */ 302 it("voicemail_delete_test_500", 0, async function(done) { 303 console.info("-------------logMessage voicemail_delete_test_500 is starting!-----------"); 304 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 305 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 306 var phoneNumber = randomNum(8); 307 var insertValues = {"phone_number" : phoneNumber, "display_name" : "zhangming"}; 308 try { 309 var voicemailId = await dataShareHelper.insert(voicemailUri, insertValues); 310 console.info("logMessage voicemail_delete_test_500: voicemailId = " + voicemailId); 311 expect(voicemailId > 0).assertTrue(); 312 await VoicemailDelete(); 313 await voiceMailDelete("voicemail_delete_test_500"); 314 done(); 315 } catch (error) { 316 console.info("logMessage voicemail_delete_test_500: voicemail insert error = " + error); 317 done(); 318 } 319 320 async function VoicemailDelete() 321 { 322 let condition = new dataShare.DataSharePredicates(); 323 condition.equalTo("id", voicemailId.toString()); 324 try { 325 var deleteCode = await dataShareHelper.delete(voicemailUri, condition); 326 console.info('logMessage voicemail_delete_test_500: deleteCode = ' + deleteCode); 327 expect(deleteCode == 0).assertTrue(); 328 var map = new Map(); 329 map.set("id", voicemailId.toString()); 330 await voicemailQueryForDelete(map, "voicemail_delete_test_500"); 331 } catch (error) { 332 console.info("logMessage voicemail_delete_test_500: delete error = " + error); 333 done(); 334 } 335 } 336 }); 337 338 /** 339 * @tc.number voicemail_update_test_600 340 * @tc.name Delete voicemail status 341 * @tc.desc Function test 342 */ 343 it("voicemail_update_test_600", 0, async function(done) { 344 console.info("-------------logMessage voicemail_update_test_600 is starting!-----------"); 345 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 346 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 347 var phoneNumber = randomNum(8); 348 var insertValues1 = {"phone_number" : phoneNumber, "voice_status" : 1}; 349 try { 350 var voicemailId = await dataShareHelper.insert(voicemailUri, insertValues1); 351 console.info("logMessage voicemail_update_test_600: voicemailId = " + voicemailId); 352 expect(voicemailId > 0).assertTrue(); 353 await VoicemailUpdate(); 354 await voiceMailDelete("voicemail_update_test_600"); 355 done(); 356 } catch (error) { 357 console.info("logMessage voicemail_update_test_600: voicemail insert error = " + error); 358 done(); 359 } 360 361 async function VoicemailUpdate() 362 { 363 var updateValues = {"voice_status" : 0}; 364 let condition = new dataShare.DataSharePredicates(); 365 condition.equalTo("id", voicemailId.toString()); 366 try { 367 var updateCode = await dataShareHelper.update(voicemailUri, updateValues, condition); 368 console.info('logMessage voicemail_update_test_600: deleteCode = ' + updateCode); 369 expect(updateCode == 0).assertTrue(); 370 var map = new Map(); 371 map.set("id", voicemailId.toString()); 372 map.set("voice_status", "0"); 373 await voicemailQuery(map, "voicemail_update_test_600"); 374 } catch (error) { 375 console.info("logMessage voicemail_update_test_600: update error = " + error); 376 done(); 377 } 378 } 379 }); 380 381 /** 382 * @tc.number voicemail_batchInsert_test_1800 383 * @tc.name Insert voicemail data in batches 384 * @tc.desc Function test 385 */ 386 it("voicemail_batchInsert_test_1800", 0, async function(done) { 387 console.info("-------------logMessage voicemail_batchInsert_test_1800 is starting!-----------"); 388 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 389 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 390 var phoneNumber = randomNum(4); 391 var insertValuesOne = {"phone_number" : phoneNumber, "display_name" : "xiaoming"}; 392 var insertValuesTwo = {"phone_number" : phoneNumber, "display_name" : "xiaohei"}; 393 var insertValuesThree = {"phone_number" : phoneNumber, "display_name" : "xiaohong"}; 394 var insertValuesFour = {"phone_number" : phoneNumber, "display_name" : "xiaohei"}; 395 var insertValuesFive = {"phone_number" : phoneNumber, "display_name" : "xiaofen"}; 396 var listAddBluk = []; 397 listAddBluk[0] = insertValuesOne; 398 listAddBluk[1] = insertValuesTwo; 399 listAddBluk[2] = insertValuesThree; 400 listAddBluk[3] = insertValuesFour; 401 listAddBluk[4] = insertValuesFive; 402 try { 403 var batchInsertCode = await dataShareHelper.batchInsert(voicemailUri, listAddBluk); 404 console.info("logMessage voicemail_batchInsert_test_1800: batchInsertCode = " + batchInsertCode); 405 expect(batchInsertCode == 0).assertTrue(); 406 await voiceMailDelete("voicemail_batchInsert_test_1800"); 407 done(); 408 } catch (error) { 409 console.info("logMessage voicemail_batchInsert_test_1800: batchInsert error = " + error); 410 done(); 411 } 412 }); 413 414 /** 415 * @tc.number voicemail_batchInsert_test_1700 416 * @tc.name Insert voicemail status in batches 417 * @tc.desc Function test 418 */ 419 it("voicemail_batchInsert_test_1700", 0, async function(done) { 420 console.info("-------------logMessage voicemail_batchInsert_test_1700 is starting!-----------"); 421 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 422 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 423 var phoneNumber = randomNum(3); 424 var insertValuesOne = {"phone_number" : phoneNumber, "display_name" : "xiaoming", "voice_status" : 0}; 425 var insertValuesTwo = {"phone_number" : phoneNumber, "display_name" : "xiaohei", "voice_status" : 1}; 426 var insertValuesThree = {"phone_number" : phoneNumber, "display_name" : "xiaohong", "voice_status" : 0}; 427 var insertValuesFour = {"phone_number" : phoneNumber, "display_name" : "xiaohei", "voice_status" : 0}; 428 var insertValuesFive = {"phone_number" : phoneNumber, "display_name" : "xiaofen", "voice_status" : 1}; 429 var listAddBluk = []; 430 listAddBluk[0] = insertValuesOne; 431 listAddBluk[1] = insertValuesTwo; 432 listAddBluk[2] = insertValuesThree; 433 listAddBluk[3] = insertValuesFour; 434 listAddBluk[4] = insertValuesFive; 435 try { 436 var batchInsertCode = await dataShareHelper.batchInsert(voicemailUri, listAddBluk); 437 console.info("logMessage voicemail_batchInsert_test_1700: batchInsertCode = " + batchInsertCode); 438 expect(batchInsertCode == 0).assertTrue(); 439 var array = common.getVoiceMailBatchInsert(); 440 await voicemailQueryForBatchInsert(array, "voicemail_batchInsert_test_1700"); 441 await voiceMailDelete("voicemail_batchInsert_test_1700"); 442 done(); 443 } catch (error) { 444 console.info("logMessage voicemail_batchInsert_test_1700: batchInsert error = " + error); 445 done(); 446 } 447 }); 448 449 /** 450 * @tc.number voicemail_query_test_1400 451 * @tc.name Query voicemail data 452 * @tc.desc Function test 453 */ 454 it("voicemail_query_test_1400", 0, async function(done) { 455 console.info("------------voicemail_query_test_1400 is starting!-----------"); 456 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 457 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 458 var phoneNumber = randomNum(9); 459 var insertValues = {"phone_number" : phoneNumber, "display_name" : "daming"}; 460 try { 461 var voicemailId = await dataShareHelper.insert(voicemailUri, insertValues); 462 console.info("logMessage voicemail_query_test_1400: voicemailId = " + voicemailId); 463 expect(voicemailId > 0).assertTrue(); 464 await VoicemailQuery(); 465 await voiceMailDelete("voicemail_query_test_1400"); 466 done(); 467 } catch (error) { 468 console.info("logMessage voicemail_query_test_1400: voicemial insert error = " + error); 469 done(); 470 } 471 async function VoicemailQuery() 472 { 473 var resultColumns = [ "id", "display_name", "phone_number" ]; 474 let condition = new dataShare.DataSharePredicates(); 475 condition.equalTo("id", voicemailId.toString()); 476 try { 477 var resultSet = await dataShareHelper.query(voicemailUri, resultColumns, condition); 478 if (resultSet.goToFirstRow()) { 479 do { 480 console.info('voicemail_query_test_1400 id = ' + resultSet.getString(0)); 481 expect(resultSet.getString(0) == voicemailId.toString()).assertTrue(); 482 console.info('voicemail_query_test_1400 display_name = ' + resultSet.getString(1)); 483 expect(resultSet.getString(1) == "daming").assertTrue(); 484 console.info('voicemail_query_test_1400 phone_number = ' + resultSet.getString(2)); 485 expect(resultSet.getString(2) == phoneNumber).assertTrue(); 486 } while (resultSet.goToNextRow()); 487 } 488 resultSet.close(); 489 } catch (error) { 490 console.info("voicemail_query_test_1400 query error = " + error); 491 done(); 492 } 493 } 494 }); 495 496 /** 497 * @tc.number voicemail_query_test_1300 498 * @tc.name Query voicemail's status 499 * @tc.desc Function test 500 */ 501 it("voicemail_query_test_1300", 0, async function(done) { 502 console.info("------------voicemail_query_test_1300 is starting!-----------"); 503 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 504 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 505 var phoneNumber = randomNum(9); 506 var insertValues = {"phone_number" : phoneNumber, "display_name" : "xiaoming", "voice_status" : 1}; 507 try { 508 var voicemailId = await dataShareHelper.insert(voicemailUri, insertValues); 509 console.info("logMessage voicemail_query_test_1300: voicemailId = " + voicemailId); 510 expect(voicemailId > 0).assertTrue(); 511 await VoicemailQuery(); 512 await voiceMailDelete("voicemail_query_test_1300"); 513 done(); 514 } catch (error) { 515 console.info("logMessage voicemail_query_test_1300: voicemial insert error = " + error); 516 done(); 517 } 518 async function VoicemailQuery() 519 { 520 var resultColumns = [ "id", "display_name", "phone_number" ]; 521 let condition = new dataShare.DataSharePredicates(); 522 condition.equalTo("voice_status", "1"); 523 condition.and(); 524 condition.equalTo("phone_number", phoneNumber); 525 try { 526 var resultSet = await dataShareHelper.query(voicemailUri, resultColumns, condition); 527 if (resultSet.goToFirstRow()) { 528 do { 529 console.info('voicemail_query_test_1300 id = ' + resultSet.getString(0)); 530 expect(resultSet.getString(0) == voicemailId.toString()).assertTrue(); 531 console.info('voicemail_query_test_1300 display_name = ' + resultSet.getString(1)); 532 expect(resultSet.getString(1) == "xiaoming").assertTrue(); 533 console.info('voicemail_query_test_1300 phone_number = ' + resultSet.getString(2)); 534 expect(resultSet.getString(2) == phoneNumber).assertTrue(); 535 } while (resultSet.goToNextRow()); 536 } 537 resultSet.close(); 538 } catch (error) { 539 console.info("voicemail_query_test_1300 query error = " + error); 540 done(); 541 } 542 } 543 }); 544 545 /** 546 * @tc.number abnormal_voicemail_insert_test_300 547 * @tc.name Abnormal use case, an incorrect field is passed in when inserting data 548 * @tc.desc Function test 549 */ 550 it("abnormal_voicemail_insert_test_300", 0, async function(done) { 551 console.info("------------abnormal_voicemail_insert_test_300 is starting!-----------"); 552 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 553 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 554 var phoneNumber = randomNum(10); 555 var insertValues = {"phone_numbers" : phoneNumber, "display_name" : "xiaoming"}; 556 try { 557 var voicemailId = await dataShareHelper.insert(voicemailUri, insertValues); 558 console.info("logMessage abnormal_voicemail_insert_test_300: voicemialId = " + voicemailId); 559 expect(voicemailId == -1).assertTrue(); 560 done(); 561 } catch (error) { 562 console.info("abnormal_voicemail_insert_test_300 insert error = " + error); 563 done(); 564 } 565 }); 566 567 /** 568 * @tc.number abnormal_voicemail_insert_test_400 569 * @tc.name Exception use case, an incorrect table name is passed in when inserting data 570 * @tc.desc Function test 571 */ 572 it("abnormal_voicemail_insert_test_400", 0, async function(done) { 573 console.info("------------abnormal_voicemail_insert_test_400 is starting!-----------"); 574 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 575 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 576 var errorUri = "datashare:///com.ohos.calllogability/calls/voicemails"; 577 578 var phoneNumber = randomNum(9); 579 var insertValues = {"phone_number" : phoneNumber, "display_name" : "xiaoming"}; 580 try { 581 var voicemialId = await dataShareHelper.insert(errorUri, insertValues) 582 console.info("logMessage abnormal_voicemail_insert_test_400: voicemialId = " + voicemialId); 583 expect(voicemialId == -1).assertTrue(); 584 var map = new Map(); 585 map.set("phone_number", phoneNumber); 586 await voicemailQueryError(map, "abnormal_voicemail_insert_test_400"); 587 done(); 588 } catch (error) { 589 console.info("abnormal_voicemail_insert_test_400 insert error = " + error); 590 done(); 591 } 592 }); 593 594 /** 595 * @tc.number abnormal_voicemail_update_test_1100 596 * @tc.name Abnormal use case, passing in a wrong field when updating data 597 * @tc.desc Function test 598 */ 599 it("abnormal_voicemail_update_test_1100", 0, async function(done) { 600 console.info("------------abnormal_voicemail_update_test_1100 is starting!-----------"); 601 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 602 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 603 var phoneNumber = randomNum(10); 604 var insertValues = {"phone_number" : phoneNumber}; 605 try { 606 var voicemailId = await dataShareHelper.insert(voicemailUri, insertValues); 607 console.info("logMessage abnormal_voicemail_update_test_1100: voicemailId = " + voicemailId); 608 expect(voicemailId > 0).assertTrue(); 609 await AbnormalUpdate(); 610 await voiceMailDelete("abnormal_voicemail_update_test_1100"); 611 done(); 612 } catch (error) { 613 console.info("abnormal_voicemail_update_test_1100 insert error = " + error); 614 done(); 615 } 616 async function AbnormalUpdate() 617 { 618 var phoneNumber_Test = randomNum(15); 619 var updateValues = {"phone_numbers" : phoneNumber_Test}; 620 let condition = new dataShare.DataSharePredicates(); 621 condition.equalTo("ids", voicemailId.toString()); 622 try { 623 var updataCode = await dataShareHelper.update(voicemailUri, updateValues, condition); 624 console.info("logMessage abnormal_voicemail_update_test_1100: updataCode = " + updataCode); 625 expect(updataCode == -1).assertTrue(); 626 var map = new Map(); 627 map.set("phone_number", phoneNumber_Test); 628 await voicemailQueryError(map, "abnormal_voicemail_update_test_1100"); 629 } catch (error) { 630 console.info("logMessage abnormal_voicemail_update_test_1100: update error = " + error); 631 done(); 632 } 633 } 634 }); 635 636 /** 637 * @tc.number abnormal_voicemail_update_test_1200 638 * @tc.name Abnormal use case, an incorrect table name is passed in when updating data 639 * @tc.desc Function test 640 */ 641 it("abnormal_voicemail_update_test_1200", 0, async function(done) { 642 console.info("------------abnormal_voicemail_update_test_1200 is starting!-----------"); 643 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 644 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 645 var errorUri = "datashare:///com.ohos.calllogability/calls/voicemails"; 646 var phoneNumber = randomNum(6); 647 var insertValues = {"phone_number" : phoneNumber}; 648 try { 649 var voicemailId = await dataShareHelper.insert(voicemailUri, insertValues); 650 console.info("logMessage abnormal_voicemail_update_test_1200: voicemailId = " + voicemailId); 651 expect(voicemailId > 0).assertTrue(); 652 await AbnormalUpdate(); 653 await voiceMailDelete("abnormal_voicemail_update_test_1200"); 654 done(); 655 } catch (error) { 656 console.info("logMessage abnormal_voicemail_update_test_1200: insert error = " + error); 657 done(); 658 } 659 660 async function AbnormalUpdate() 661 { 662 var phoneNumber_Test = randomNum(6); 663 var updateValues = {"phone_number" : phoneNumber_Test}; 664 let condition = new dataShare.DataSharePredicates(); 665 condition.equalTo("id", voicemailId.toString()); 666 try { 667 var updataCode = await dataShareHelper.update(errorUri, updateValues, condition) 668 console.info("logMessage abnormal_voicemail_update_test_1200: updataCode = " + updataCode); 669 expect(updataCode == -1).assertTrue(); 670 var map = new Map(); 671 map.set("phone_number", phoneNumber_Test); 672 await voicemailQueryError(map, "abnormal_voicemail_update_test_1200"); 673 } catch (error) { 674 console.info("logMessage abnormal_voicemail_update_test_1200: update error = " + error); 675 done(); 676 } 677 } 678 }); 679 680 /** 681 * @tc.number abnormal_voicemail_delete_test_700 682 * @tc.name Abnormal use case, passing in a wrong field when deleting data 683 * @tc.desc Function test 684 */ 685 it("abnormal_voicemail_delete_test_700", 0, async function(done) { 686 console.info("------------abnormal_voicemail_delete_test_700 is starting!-----------"); 687 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 688 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 689 var phoneNumber = randomNum(6); 690 var insertValues = {"phone_number" : phoneNumber}; 691 try { 692 var voicemailId = await dataShareHelper.insert(voicemailUri, insertValues); 693 console.info("logMessage abnormal_voicemail_delete_test_700: voicemailId = " + voicemailId); 694 expect(voicemailId > 0).assertTrue(); 695 await AbnormalDelete(); 696 await voiceMailDelete("abnormal_voicemail_delete_test_700"); 697 done(); 698 } catch (error) { 699 console.info("logMessage abnormal_voicemail_delete_test_700: insert error = " + error); 700 done(); 701 } 702 703 async function AbnormalDelete() 704 { 705 let condition = new dataShare.DataSharePredicates(); 706 condition.equalTo("ids", voicemailId.toString()); 707 try { 708 var deleteCode = await dataShareHelper.delete(voicemailUri, condition); 709 console.info("logMessage abnormal_voicemail_delete_test_700: deleteCode = " + deleteCode); 710 expect(deleteCode == -1).assertTrue(); 711 } catch (error) { 712 console.info("logMessage abnormal_voicemail_delete_test_700: delete error = " + error); 713 done(); 714 } 715 } 716 }); 717 718 /** 719 * @tc.number abnormal_voicemail_delete_test_800 720 * @tc.name Abnormal use case, passing in an incorrect table name when deleting data 721 * @tc.desc Function test 722 */ 723 it("abnormal_voicemail_delete_test_800", 0, async function(done) { 724 console.info("------------abnormal_voicemail_delete_test_800 is starting!-----------"); 725 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 726 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 727 var errorUri = "datashare:///com.ohos.calllogability/calls/voicemails"; 728 var phoneNumber = randomNum(6); 729 var insertValues = {"phone_number" : phoneNumber}; 730 try { 731 var voicemailId = await dataShareHelper.insert(voicemailUri, insertValues); 732 console.info("logMessage abnormal_voicemail_delete_test_800: voicemailId = " + voicemailId); 733 expect(voicemailId > 0).assertTrue(); 734 await AbnormalDelete(); 735 await voiceMailDelete("abnormal_voicemail_delete_test_800"); 736 done(); 737 } catch (error) { 738 console.info("logMessage abnormal_voicemail_delete_test_800: insert error = " + error); 739 done(); 740 } 741 742 async function AbnormalDelete() 743 { 744 let condition = new dataShare.DataSharePredicates(); 745 condition.equalTo("id", voicemailId.toString()); 746 try { 747 var deleteCode = await dataShareHelper.delete(errorUri, condition); 748 console.info("logMessage abnormal_voicemail_delete_test_800: deleteCode = " + deleteCode); 749 expect(deleteCode == -1).assertTrue(); 750 } catch (error) { 751 console.info("logMessage abnormal_voicemail_delete_test_800: delete error = " + error); 752 done(); 753 } 754 } 755 }); 756 757 /** 758 * @tc.number abnormal_voicemail_query_test_1500 759 * @tc.name Abnormal use case, an incorrect field is passed in when querying 760 * @tc.desc Function test 761 */ 762 it("abnormal_voicemail_query_test_1500", 0, async function(done) { 763 console.info("------------abnormal_voicemail_query_test_1500 is starting!-----------"); 764 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 765 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 766 var phoneNumber = randomNum(6); 767 var insertValues = {"phone_number" : phoneNumber}; 768 try { 769 var voicemailId = await dataShareHelper.insert(voicemailUri, insertValues); 770 console.info("logMessage abnormal_voicemail_query_test_1500: voicemailId = " + voicemailId); 771 expect(voicemailId > 0).assertTrue(); 772 await AbnormalQuery(); 773 await voiceMailDelete("abnormal_voicemail_query_test_1500"); 774 done(); 775 } catch (error) { 776 console.info("logMessage abnormal_voicemail_query_test_1500: insert error = " + error); 777 done(); 778 } 779 780 async function AbnormalQuery() 781 { 782 var resultColumns = [ "id", "phone_number" ]; 783 784 let condition = new dataShare.DataSharePredicates(); 785 condition.equalTo("ids", voicemailId.toString()); 786 try { 787 var resultSet = await dataShareHelper.query(voicemailUri, resultColumns, condition) 788 console.info('logMessage abnormal_voicemail_query_test_1500: goToFirstRow' + resultSet.goToFirstRow()); 789 expect(resultSet.goToFirstRow()).assertEqual(false); 790 resultSet.close(); 791 } catch (error) { 792 console.info('logMessage abnormal_voicemail_query_test_1500: query error = ' + error); 793 done(); 794 } 795 } 796 }); 797 798 /** 799 * @tc.number abnormal_voicemail_batchinsert_test_1900 800 * @tc.name Abnormal use cases, when inserting data in batches, some of them failed, check the processing logic 801 * @tc.desc Function test 802 */ 803 it("abnormal_voicemail_batchinsert_test_1900", 0, async function(done) { 804 console.info("--------logMessage abnormal_voicemail_batchinsert_test_1900 is starting!------------"); 805 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 806 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 807 var phoneNumber = randomNum(9); 808 var phoneNumber_Test = randomNum(6); 809 var addBulk_value1 = {"phone_number" : phoneNumber, "ring_duration" : "500"}; 810 var addBulk_value2 = {"phone_number" : phoneNumber_Test, "ring_duration" : "100"}; 811 var addBulk_value3 = {"phone_numbers" : phoneNumber_Test, "ring_duration" : "100"}; 812 var addBulk_value4 = {"phone_number" : phoneNumber_Test, "ring_durations" : "100"}; 813 var addBulk_value5 = {"phone_number" : phoneNumber_Test, "ring_duration" : "100"}; 814 var listAddBluk = []; 815 listAddBluk[0] = addBulk_value1; 816 listAddBluk[1] = addBulk_value2; 817 listAddBluk[2] = addBulk_value3; 818 listAddBluk[3] = addBulk_value4; 819 listAddBluk[4] = addBulk_value5; 820 try { 821 var batchInsertCode = await dataShareHelper.batchInsert(voicemailUri, listAddBluk) 822 console.info("logMessage abnormal_voicemail_batchinsert_test_1900: batchInsertCode = " + batchInsertCode); 823 expect(batchInsertCode == -1).assertTrue(); 824 done(); 825 } catch (error) { 826 console.info('logMessage abnormal_voicemail_batchinsert_test_1900: batchInsert error = ' + error); 827 done(); 828 } 829 }); 830 831 /** 832 * @tc.number voiceMail_delete_test_2000 833 * @tc.name batchDelete 834 * @tc.desc Function test 835 */ 836 it("voiceMail_delete_test_2000", 0, async function(done) { 837 console.info("--------logMessage voiceMail_delete_test_2000 is starting!------------"); 838 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 839 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 840 try { 841 var voiceMailId = await dataShareHelper.insert(voicemailUri, common.getVoiceMail()); 842 console.info("logMessage voiceMail_delete_test_2000: voiceMailId = " + voiceMailId); 843 expect(voiceMailId > 0).assertTrue(); 844 var map = common.getVoiceMailMap() 845 map.set("id", voiceMailId.toString()); 846 await voicemailQuery(map, "voiceMail_delete_test_2000"); 847 await executeBatch(); 848 } catch (error) { 849 console.info("logMessage voiceMail_delete_test_2000: voiceMailId insert error = " + error); 850 done(); 851 } 852 async function executeBatch() 853 { 854 console.info("logMessage voiceMail_delete_test_2000: executeBatch start "); 855 let condition = new dataShare.DataSharePredicates(); 856 condition.equalTo("id", voiceMailId.toString()); 857 dataShareHelper.executeBatch(URI_VOICEMAIL, [ { 858 uri : voicemailUri, 859 type : featureAbility.DataAbilityOperationType.TYPE_DELETE, 860 predicates : condition, 861 expectedCount : 0, 862 PredicatesBackReferences : {}, 863 interrupted : true, 864 } ], 865 (error, data) => { 866 console.info("logMessage voiceMail_delete_test_2000: executeBatch data = " + JSON.stringify(data)); 867 console.info("logMessage voiceMail_delete_test_2000: data_3 = " + data); 868 console.info("logMessage voiceMail_delete_test_2000: data_1= " + data[0].count); 869 expect(data[0].count == 0).assertTrue(); 870 done(); 871 }); 872 } 873 }); 874 875 /** 876 * @tc.number voiceMail_update_test_2100 877 * @tc.name batchUpdate 878 * @tc.desc Function test 879 */ 880 it("voiceMail_update_test_2100", 0, async function(done) { 881 console.info("--------logMessage voiceMail_update_test_2100 is starting!------------"); 882 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 883 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 884 try { 885 var voiceMailId = await dataShareHelper.insert(voicemailUri, common.getVoiceMail()); 886 console.info("logMessage voiceMail_update_test_2100: voiceMailId = " + voiceMailId); 887 expect(voiceMailId > 0).assertTrue(); 888 var map = common.getVoiceMailMap(); 889 map.set("id", voiceMailId.toString()); 890 await voicemailQuery(map, "voiceMail_update_test_2100"); 891 await executeBatch(); 892 } catch (error) { 893 console.info("logMessage voiceMail_update_test_2100: calllog insert error = " + error); 894 done(); 895 } 896 async function executeBatch() 897 { 898 var phoneNumber = randomNum(8); 899 var updateValues = {"phone_number" : phoneNumber}; 900 console.info("logMessage voiceMail_update_test_2100: executeBatch start "); 901 let condition = new dataShare.DataSharePredicates(); 902 condition.equalTo("id", voiceMailId.toString()); 903 dataShareHelper.executeBatch(URI_VOICEMAIL, [ { 904 uri : voicemailUri, 905 type : featureAbility.DataAbilityOperationType.TYPE_UPDATE, 906 valuesBucket : updateValues, 907 predicates : condition, 908 expectedCount : 0, 909 PredicatesBackReferences : {}, 910 interrupted : true, 911 } ], 912 (error, data) => { 913 console.info("logMessage voiceMail_update_test_2100: executeBatch data = " + JSON.stringify(data)); 914 console.info("logMessage voiceMail_update_test_2100: data_3 = " + data); 915 console.info("logMessage voiceMail_update_test_2100: data_1= " + data[0].count); 916 expect(data[0].count == 0).assertTrue(); 917 done(); 918 }); 919 } 920 }); 921 922 /** 923 * @tc.number voicemail_insert_test_2200 924 * @tc.name Insert voicemail status 0 925 * @tc.desc Function test 926 */ 927 it("voicemail_insert_test_2200", 0, async function(done) { 928 console.info("---------logMessage voicemail_insert_test_2200 is starting!---------") 929 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 930 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 931 console.info('logMessage uri = ' + URI_VOICEMAIL) 932 var phoneNumber = randomNum(15); 933 var stringValue = {"phone_number" : phoneNumber, "voice_status" : 0}; 934 try { 935 var voicemailId = await dataShareHelper.insert(voicemailUri, stringValue) 936 console.info("logMessage voicemail_insert_test_2200: voicemailId = " + voicemailId); 937 expect(voicemailId > 0).assertTrue(); 938 var map = new Map(); 939 map.set("id", voicemailId.toString()); 940 map.set("phone_number", phoneNumber); 941 map.set("voice_status", "0"); 942 await voicemailQuery(map, "voicemail_insert_test_2200"); 943 await voiceMailDelete("voicemail_insert_test_2200"); 944 done(); 945 } catch (error) { 946 console.info("logMessage voicemail_insert_test_2200: voicemail insert error = " + error); 947 done(); 948 } 949 }); 950 951 /** 952 * @tc.number voicemail_insert_test_2300 953 * @tc.name Insert 3 pieces of voice mail data first, then delete 2 pieces of data, 954 * and verify whether the deletion is successful 955 * @tc.desc Function test 956 */ 957 it("voicemail_insert_test_2300", 0, async function(done) { 958 console.info("---------logMessage voicemail_insert_test_2300 is starting!---------") 959 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 960 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 961 console.info('logMessage uri = ' + URI_VOICEMAIL) 962 var phoneNumber = randomNum(11); 963 var stringValue = {"phone_number" : phoneNumber, "voice_status" : 0}; 964 try { 965 var voicemailId = await dataShareHelper.insert(voicemailUri, stringValue) 966 var voicemailIdOne = await dataShareHelper.insert(voicemailUri, stringValue) 967 var voicemailIdTwo = await dataShareHelper.insert(voicemailUri, stringValue) 968 let condition = new dataShare.DataSharePredicates(); 969 condition.equalTo("id", voicemailId.toString()); 970 condition.or(); 971 condition.equalTo("id", voicemailIdOne.toString()); 972 var deleteCode = await dataShareHelper.delete(voicemailUri, condition); 973 console.info("logMessage voicemail_insert_test_2300: deleteCode = " + deleteCode); 974 var resultColumns = []; 975 var resultSet = await dataShareHelper.query(voicemailUri, resultColumns, condition); 976 expect(resultSet.rowCount == 0).assertTrue(); 977 resultSet.close(); 978 await voiceMailDelete("voicemail_insert_test_2300"); 979 done(); 980 } catch (error) { 981 console.info("logMessage voicemail_insert_test_2300: voicemail insert error = " + error); 982 done(); 983 } 984 }); 985 986 /** 987 * @tc.number voicemail_insert_test_2400 988 * @tc.name Insert 3 pieces of voice mail data first, then update 2 pieces of data, 989 * and verify whether the deletion is successful 990 * @tc.desc Function test 991 */ 992 it("voicemail_insert_test_2400", 0, async function(done) { 993 console.info("---------logMessage voicemail_insert_test_2400 is starting!---------") 994 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 995 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 996 console.info('logMessage uri = ' + URI_VOICEMAIL) 997 var phoneNumber_Test = randomNum(8); 998 var stringValue = {"phone_number" : phoneNumber_Test, "voice_status" : 0}; 999 try { 1000 var voicemailId = await dataShareHelper.insert(voicemailUri, stringValue) 1001 var voicemailIdOne = await dataShareHelper.insert(voicemailUri, stringValue) 1002 var voicemailIdTwo = await dataShareHelper.insert(voicemailUri, stringValue) 1003 let condition = new dataShare.DataSharePredicates(); 1004 condition.equalTo("id", voicemailId.toString()); 1005 condition.or(); 1006 condition.equalTo("id", voicemailIdOne.toString()); 1007 var phoneNumber = randomNum(13); 1008 var updateValue = {"phone_number" : phoneNumber, "voice_status" : 1}; 1009 var updateCode = await dataShareHelper.update(voicemailUri, updateValue, condition); 1010 console.info("logMessage voicemail_insert_test_2400: deleteCode = " + updateCode); 1011 1012 var map = new Map(); 1013 map.set("id", voicemailId.toString()); 1014 map.set("phone_number", phoneNumber); 1015 map.set("voice_status", "1"); 1016 await voicemailQuery(map, "voicemail_insert_test_2400"); 1017 1018 var mapOne = new Map(); 1019 mapOne.set("id", voicemailIdOne.toString()); 1020 mapOne.set("phone_number", phoneNumber); 1021 mapOne.set("voice_status", "1"); 1022 await voicemailQuery(mapOne, "voicemail_insert_test_2400"); 1023 await voiceMailDelete("voicemail_insert_test_2400"); 1024 done(); 1025 } catch (error) { 1026 console.info("logMessage voicemail_insert_test_2400: voicemail insert error = " + error); 1027 done(); 1028 } 1029 }); 1030 1031 /** 1032 * @tc.number voicemail_insert_test_2500 1033 * @tc.name Query the voice mailbox with status 0 or id and return the query result 1034 * @tc.desc Function test 1035 */ 1036 it("voicemail_query_test_2500", 0, async function(done) { 1037 console.info("---------logMessage voicemail_query_test_2500 is starting!---------") 1038 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 1039 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 1040 console.info('logMessage uri = ' + URI_VOICEMAIL) 1041 var phoneNumber = randomNum(10); 1042 var stringValue = {"phone_number" : phoneNumber, "voice_status" : 0}; 1043 try { 1044 var voicemailId = await dataShareHelper.insert(voicemailUri, stringValue) 1045 var voicemailIdOne = await dataShareHelper.insert(voicemailUri, stringValue) 1046 let condition = new dataShare.DataSharePredicates(); 1047 condition.beginWrap(); 1048 condition.equalTo("id", voicemailId.toString()); 1049 condition.or(); 1050 condition.equalTo("id", voicemailIdOne.toString()); 1051 condition.endWrap(); 1052 condition.and(); 1053 condition.equalTo("voice_status", "0"); 1054 var resultColumns = []; 1055 var resultSet = await dataShareHelper.query(voicemailUri, resultColumns, condition); 1056 expect(resultSet.rowCount == 2).assertTrue(); 1057 resultSet.close(); 1058 await voiceMailDelete("voicemail_query_test_2500"); 1059 done(); 1060 } catch (error) { 1061 console.info("logMessage voicemail_query_test_2500: voicemail insert error = " + error); 1062 done(); 1063 } 1064 }); 1065 1066 /** 1067 * @tc.number voicemail_query_test_2600 1068 * @tc.name Query the voice mailbox and return the query result 1069 * @tc.desc Function test 1070 */ 1071 it("voicemail_query_test_2600", 0, async function(done) { 1072 console.info("---------logMessage voicemail_query_test_2600 is starting!---------") 1073 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 1074 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 1075 console.info('logMessage uri = ' + URI_VOICEMAIL) 1076 var phoneNumber = randomNum(12); 1077 var stringValue = {"phone_number" : phoneNumber, "voice_status" : 0}; 1078 try { 1079 var voicemailId = await dataShareHelper.insert(voicemailUri, stringValue); 1080 console.info('voicemail_query_test_2600 voicemailId = ' + voicemailId); 1081 var voicemailIdOne = await dataShareHelper.insert(voicemailUri, stringValue); 1082 console.info('voicemail_query_test_2600 voicemailIdOne = ' + voicemailIdOne); 1083 let condition = new dataShare.DataSharePredicates(); 1084 var resultColumns = []; 1085 var resultSet = await dataShareHelper.query(voicemailUri, resultColumns, condition); 1086 expect(resultSet.rowCount == 2).assertTrue(); 1087 resultSet.close(); 1088 await voiceMailDelete("voicemail_query_test_2600"); 1089 done(); 1090 } catch (error) { 1091 console.info("logMessage voicemail_query_test_2600: voicemail insert error = " + error); 1092 done(); 1093 } 1094 }); 1095 1096 /** 1097 * @tc.number abnormal_voicemail_insert_test_2700 1098 * @tc.name When the voicemail status is added, a non-existent field is passed in 1099 * @tc.desc Function test 1100 */ 1101 it("abnormal_voicemail_insert_test_2700", 0, async function(done) { 1102 console.info("---------logMessage abnormal_voicemail_insert_test_2700 is starting!---------") 1103 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 1104 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 1105 console.info('logMessage uri = ' + URI_VOICEMAIL) 1106 try { 1107 var insertValues = {display_name : "2700name", voice_statuss : "1"}; 1108 var voicemailId = await dataShareHelper.insert(voicemailUri, insertValues); 1109 expect(voicemailId == -1).assertTrue(); 1110 let condition = new dataShare.DataSharePredicates(); 1111 var resultColumns = []; 1112 var resultSet = await dataShareHelper.query(voicemailUri, resultColumns, condition); 1113 expect(resultSet.rowCount == 0).assertTrue(); 1114 await voiceMailDelete("abnormal_voicemail_insert_test_2700"); 1115 done(); 1116 } catch (error) { 1117 done(); 1118 } 1119 }); 1120 1121 /** 1122 * @tc.number abnormal_voicemail_delete_test_2800 1123 * @tc.name When deleting the voicemail status, pass in a non-existent field 1124 * @tc.desc Function test 1125 */ 1126 it("abnormal_voicemail_delete_test_2800", 0, async function(done) { 1127 console.info("---------logMessage abnormal_voicemail_delete_test_2800 is starting!---------") 1128 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 1129 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 1130 console.info('logMessage uri = ' + URI_VOICEMAIL) 1131 try { 1132 var insertValues = {display_name : "2800name", voice_status : "1"}; 1133 var voicemailId = await dataShareHelper.insert(voicemailUri, insertValues); 1134 expect(voicemailId > 0).assertTrue(); 1135 let condition = new dataShare.DataSharePredicates(); 1136 condition.equalTo("id", voicemailId.toString()); 1137 var updateValues = {display_name : "2800name", voice_statuss : "0"}; 1138 var updateCode = await dataShareHelper.update(voicemailUri, updateValues, condition); 1139 expect(updateCode == -1).assertTrue(); 1140 var map = new Map(); 1141 map.set("id", voicemailId.toString()); 1142 map.set("display_name", "2800name"); 1143 map.set("voice_status", "1"); 1144 await voicemailQuery(map, "abnormal_voicemail_delete_test_2800"); 1145 await voiceMailDelete("abnormal_voicemail_delete_test_2800"); 1146 done(); 1147 } catch (error) { 1148 done(); 1149 } 1150 }); 1151 1152 /** 1153 * @tc.number abnormal_voicemail_update_test_2900 1154 * @tc.name When update the voicemail status, pass in a non-existent field 1155 * @tc.desc Function test 1156 */ 1157 it("abnormal_voicemail_update_test_2900", 0, async function(done) { 1158 console.info("---------logMessage abnormal_voicemail_update_test_2900 is starting!---------") 1159 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 1160 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 1161 console.info('logMessage uri = ' + URI_VOICEMAIL) 1162 try { 1163 var insertValues = {display_name : "2900name", voice_status : "1"}; 1164 var voicemailId = await dataShareHelper.insert(voicemailUri, insertValues); 1165 expect(voicemailId > 0).assertTrue(); 1166 let condition = new dataShare.DataSharePredicates(); 1167 condition.equalTo("id", voicemailId.toString()); 1168 var updateValues = {display_name : "2900name", voice_statuss : "0"}; 1169 var updateCode = await dataShareHelper.update(voicemailUri, updateValues, condition); 1170 expect(updateCode == -1).assertTrue(); 1171 var map = new Map(); 1172 map.set("id", voicemailId.toString()); 1173 map.set("display_name", "2900name"); 1174 map.set("voice_status", "1"); 1175 await voicemailQuery(map, "abnormal_voicemail_update_test_2900"); 1176 await voiceMailDelete("abnormal_voicemail_update_test_2900"); 1177 done(); 1178 } catch (error) { 1179 done(); 1180 } 1181 }); 1182 1183 /** 1184 * @tc.number abnormal_voicemail_update_test_3000 1185 * @tc.name When update the voicemail status, pass in a non-existent field 1186 * @tc.desc Function test 1187 */ 1188 it("abnormal_voicemail_update_test_3000", 0, async function(done) { 1189 console.info("---------logMessage abnormal_voicemail_update_test_3000 is starting!---------") 1190 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 1191 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 1192 console.info('logMessage uri = ' + URI_VOICEMAIL) 1193 try { 1194 var insertValues = {display_name : "2900name", voice_status : "1"}; 1195 var voicemailId = await dataShareHelper.insert(voicemailUri, insertValues); 1196 expect(voicemailId > 0).assertTrue(); 1197 let condition = new dataShare.DataSharePredicates(); 1198 condition.equalTo("ids", voicemailId.toString()); 1199 var resultColumns = []; 1200 var resultSet = await dataShareHelper.query(voicemailUri, resultColumns, condition); 1201 expect(resultSet.rowCount == -1).assertTrue(); 1202 resultSet.close(); 1203 await voiceMailDelete("abnormal_voicemail_update_test_3000"); 1204 done(); 1205 } catch (error) { 1206 done(); 1207 } 1208 }); 1209 1210 /** 1211 * @tc.number abnormal_voicemail_batchInsert_test_3100 1212 * @tc.name Insert voicemail data in batches , pass in a non-existent field 1213 * @tc.desc Function test 1214 */ 1215 it("abnormal_voicemail_batchInsert_test_3100", 0, async function(done) { 1216 console.info("-------------logMessage abnormal_voicemail_batchInsert_test_3100 is starting!-----------"); 1217 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 1218 console.info('logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 1219 1220 var insertValuesOne = {"voice_status" : "0", "display_name" : "xiaoming"}; 1221 var insertValuesTwo = {"voice_status" : "1", "display_name" : "xiaohei"}; 1222 var insertValuesThree = {"voice_statusss" : "1", "display_name" : "xiaohong"}; 1223 var insertValuesFour = {"voice_status" : "0", "display_name" : "xiaohei"}; 1224 var insertValuesFive = {"voice_status" : "0", "display_name" : "xiaofen"}; 1225 var listAddBluk = []; 1226 listAddBluk[0] = insertValuesOne; 1227 listAddBluk[1] = insertValuesTwo; 1228 listAddBluk[2] = insertValuesThree; 1229 listAddBluk[3] = insertValuesFour; 1230 listAddBluk[4] = insertValuesFive; 1231 try { 1232 var batchInsertCode = await dataShareHelper.batchInsert(voicemailUri, listAddBluk); 1233 console.info("logMessage abnormal_voicemail_batchInsert_test_3100: batchInsertCode = " + batchInsertCode); 1234 expect(batchInsertCode == -1).assertTrue(); 1235 let condition = new dataShare.DataSharePredicates(); 1236 var resultColumns = []; 1237 var resultSet = await dataShareHelper.query(voicemailUri, resultColumns, condition); 1238 expect(resultSet.rowCount == 0).assertTrue(); 1239 resultSet.close(); 1240 done(); 1241 } catch (error) { 1242 console.info("logMessage abnormal_voicemail_batchInsert_test_3100: batchInsert error = " + error); 1243 done(); 1244 } 1245 }); 1246 1247 afterAll(async function() { 1248 let dataShareHelper = dataShare.createDataShareHelper(URI_VOICEMAIL); 1249 console.info('voicemai afterAll logMessage get dataShareHelper success! dataShareHelper = ' + dataShareHelper); 1250 let condition = new dataShare.DataSharePredicates(); 1251 condition.greaterThan("id", "0"); 1252 var deleteCode = await dataShareHelper.delete(voicemailUri, condition); 1253 console.info('voicemai afterAll logMessage deleteCode = ' + deleteCode); 1254 }); 1255}) 1256 1257function randomNum (num) { 1258 let number = toString(Math.floor(Math.random() * (9 * Math.pow(10, num))) + (1 * Math.pow(10, num))); 1259 return number ; 1260} 1261