1/* 2 * Copyright (c) 2021-2023 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 */ 15import osaccount from '@ohos.account.osAccount' 16import bundle from '@ohos.bundle' 17import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from '@ohos/hypium' 18 19 20const ERR_INVALID_PARAMETER = 12300002; 21 22export default function ActsOsAccountThirdPartyTest_third_4() { 23 describe('ActsOsAccountThirdPartyTest_third_4', function () { 24 afterEach(async function (done) { 25 console.info("====>afterEach start===="); 26 var osAccountManager = osaccount.getAccountManager(); 27 var accounts = await osAccountManager.queryAllCreatedOsAccounts() 28 for (let i = 0; i < accounts.length; i++) { 29 var localId = accounts[i].localId 30 if (localId != 100) { 31 await osAccountManager.removeOsAccount(localId) 32 } 33 } 34 done(); 35 }) 36 /* 37 * @tc.number : ActsOsAccountQueryIdFormUid_0100 38 * @tc.name : getOsAccountLocalIdForUid callback 39 * @tc.desc : Verify that the user localId is obtained by uid 40 */ 41 it('ActsOsAccountQueryIdFormUid_0100', 0, async function (done) { 42 console.info("====>ActsOsAccountQueryIdFormUid_0100 start===="); 43 var osAccountManager = osaccount.getAccountManager(); 44 var testLocalId = await osAccountManager.getOsAccountLocalId(); 45 console.info("====>testLocalId:" + testLocalId) 46 console.info("====>get AccountManager finish===="); 47 var bundleName = "com.example.actsosaccountthirdpartytest"; 48 var bundleInfo = await bundle.getBundleInfo(bundleName, bundle.BundleFlag.GET_BUNDLE_WITH_ABILITIES); 49 var uid = bundleInfo.uid; 50 console.info("====>obtained uid:" + uid); 51 osAccountManager.getOsAccountLocalIdForUid(uid, (err, localId) => { 52 console.info("====>get localId err: " + JSON.stringify(err)); 53 console.info("====>localId obtained by uid:" + localId); 54 expect(err).assertEqual(null); 55 expect(localId).assertEqual(testLocalId); 56 console.info("====>ActsOsAccountQueryIdFormUid_0100 end===="); 57 done(); 58 }); 59 }); 60 61 /* 62 * @tc.number : ActsOsAccountQueryIdFormUid_0200 63 * @tc.name : getOsAccountLocalIdForUid promise 64 * @tc.desc : Verify that the user localId is obtained by uid 65 */ 66 it('ActsOsAccountQueryIdFormUid_0200', 0, async function (done) { 67 console.info("====>ActsOsAccountQueryIdFormUid_0200 start===="); 68 var osAccountManager = osaccount.getAccountManager(); 69 var testLocalId = await osAccountManager.getOsAccountLocalId(); 70 console.info("====>get AccountManager finish===="); 71 var bundleName = "com.example.actsosaccountthirdpartytest"; 72 var bundleInfo = await bundle.getBundleInfo(bundleName, bundle.BundleFlag.GET_BUNDLE_WITH_ABILITIES); 73 var uid = bundleInfo.uid; 74 console.info("====>obtained uid:" + uid); 75 var localId = await osAccountManager.getOsAccountLocalIdForUid(uid); 76 console.info("====>localId obtained by uid:" + localId); 77 expect(localId).assertEqual(testLocalId); 78 console.info("====>ActsOsAccountQueryIdFormUid_0200 end===="); 79 done(); 80 }); 81 82 /* 83 * @tc.number : ActsOsAccountQueryIdFormUid_0300 84 * @tc.name : getOsAccountLocalIdForUid callback 85 * @tc.desc : Authentication failed to query user by uid -1 86 */ 87 it('ActsOsAccountQueryIdFormUid_0300', 0, async function (done) { 88 console.info("====>ActsOsAccountQueryIdFormUid_0300 start===="); 89 var osAccountManager = osaccount.getAccountManager(); 90 console.info("====>get AccountManager finish===="); 91 var incorrectUid = -1; 92 osAccountManager.getOsAccountLocalIdForUid(incorrectUid, (err, localId) => { 93 console.info("====>get localId err: " + JSON.stringify(err)); 94 console.info("====>localId obtained by uid:" + localId); 95 expect(err.code).assertEqual(ERR_INVALID_PARAMETER); 96 expect(localId).assertEqual(null); 97 console.info("====>ActsOsAccountQueryIdFormUid_0300 end===="); 98 done(); 99 }); 100 }); 101 102 /* 103 * @tc.number : ActsOsAccountQueryIdFormUid_0400 104 * @tc.name : getOsAccountLocalIdForUid promise 105 * @tc.desc : Authentication failed to query user by uid -1 106 */ 107 it('ActsOsAccountQueryIdFormUid_0400', 0, async function (done) { 108 console.info("====>ActsOsAccountQueryIdFormUid_0400 start===="); 109 var osAccountManager = osaccount.getAccountManager(); 110 console.info("====>get AccountManager finish===="); 111 var incorrectUid = -1; 112 try { 113 await osAccountManager.getOsAccountLocalIdForUid(incorrectUid); 114 } catch (err) { 115 console.info("====>get localId by uid err:" + JSON.stringify(err)); 116 expect(err.code).assertEqual(ERR_INVALID_PARAMETER); 117 console.info("====>ActsOsAccountQueryIdFormUid_0400 end===="); 118 done(); 119 } 120 }); 121 122 /* 123 * @tc.number : ActsOsAccountQueryIdFormUid_0500 124 * @tc.name : getOsAccountLocalIdForUid callback 125 * @tc.desc : Authentication failed to query user by uid 2147483648 126 */ 127 it('ActsOsAccountQueryIdFormUid_0500', 0, async function (done) { 128 console.info("====>ActsOsAccountQueryIdFormUid_0500 start===="); 129 var osAccountManager = osaccount.getAccountManager(); 130 console.info("====>get AccountManager finish===="); 131 var incorrectUid = 2147483648; 132 osAccountManager.getOsAccountLocalIdForUid(incorrectUid, (err, localId) => { 133 console.info("====>get localId err: " + JSON.stringify(err)); 134 console.info("====>localId obtained by uid:" + localId); 135 expect(err.code).assertEqual(ERR_INVALID_PARAMETER); 136 expect(localId).assertEqual(null); 137 console.info("====>ActsOsAccountQueryIdFormUid_0500 end===="); 138 done(); 139 }); 140 }); 141 142 /* 143 * @tc.number : ActsOsAccountQueryIdFormUid_0600 144 * @tc.name : getOsAccountLocalIdForUid promise 145 * @tc.desc : Authentication failed to query user by uid 2147483648 146 */ 147 it('ActsOsAccountQueryIdFormUid_0600', 0, async function (done) { 148 console.info("====>ActsOsAccountQueryIdFormUid_0600 start===="); 149 var osAccountManager = osaccount.getAccountManager(); 150 console.info("====>get AccountManager finish===="); 151 var incorrectUid = 2147483648; 152 try { 153 await osAccountManager.getOsAccountLocalIdForUid(incorrectUid); 154 } catch (err) { 155 console.info("====>get localId by uid err:" + JSON.stringify(err)); 156 expect(err.code).assertEqual(ERR_INVALID_PARAMETER); 157 console.info("====>ActsOsAccountQueryIdFormUid_0600 end===="); 158 done(); 159 } 160 }); 161 162 /* 163 * @tc.number : ActsOsAccountQueryIdFormUidSync_0100 164 * @tc.name : getOsAccountLocalIdForUidSync 165 * @tc.desc : Verify that the user localId is obtained by uid 166 */ 167 it('ActsOsAccountQueryIdFormUidSync_0100', 0, async function (done) { 168 console.info("====>ActsOsAccountQueryIdFormUidSync_0100 start===="); 169 var osAccountManager = osaccount.getAccountManager(); 170 var testLocalId = await osAccountManager.getOsAccountLocalId(); 171 console.info("====>testLocalId:" + testLocalId) 172 console.info("====>get AccountManager finish===="); 173 var bundleName = "com.example.actsosaccountthirdpartytest"; 174 var bundleInfo = await bundle.getBundleInfo(bundleName, bundle.BundleFlag.GET_BUNDLE_WITH_ABILITIES); 175 var uid = bundleInfo.uid; 176 console.info("====>obtained uid:" + uid); 177 try { 178 let localId = osAccountManager.getOsAccountLocalIdForUidSync(uid); 179 console.log('getOsAccountLocalIdForUidSync successfully, localId: ' + localId); 180 expect(localId).assertEqual(testLocalId); 181 console.info("====>ActsOsAccountQueryIdFormUidSync_0100 end===="); 182 done(); 183 } catch (err) { 184 console.info("====>get localId err: " + JSON.stringify(err)); 185 console.info("====>ActsOsAccountQueryIdFormUidSync_0100 end===="); 186 expect().assertFalse() 187 done(); 188 } 189 }); 190 191 /* 192 * @tc.number : ActsOsAccountQueryIdFormUidSync_0200 193 * @tc.name : getOsAccountLocalIdForUidSync 194 * @tc.desc : Authentication failed to query user by uid -1 195 */ 196 it('ActsOsAccountQueryIdFormUidSync_0200', 0, async function (done) { 197 console.info("====>ActsOsAccountQueryIdFormUidSync_0200 start===="); 198 var osAccountManager = osaccount.getAccountManager(); 199 console.info("====>get AccountManager finish===="); 200 var incorrectUid = -1; 201 try { 202 var localId = osAccountManager.getOsAccountLocalIdForUidSync(incorrectUid); 203 } catch (err) { 204 console.info("====>get localId err: " + JSON.stringify(err)); 205 console.info("====>localId obtained by uid:" + localId); 206 expect(err.code).assertEqual(ERR_INVALID_PARAMETER); 207 expect(localId).assertEqual(undefined); 208 console.info("====>ActsOsAccountQueryIdFormUidSync_0200 end===="); 209 done(); 210 } 211 }); 212 213 /* 214 * @tc.number : ActsOsAccountQueryIdFormUidSync_0300 215 * @tc.name : getOsAccountLocalIdForUidSync 216 * @tc.desc : Authentication failed to query user by uid 2147483648 217 */ 218 it('ActsOsAccountQueryIdFormUidSync_0300', 0, async function (done) { 219 console.info("====>ActsOsAccountQueryIdFormUidSync_0300 start===="); 220 var osAccountManager = osaccount.getAccountManager(); 221 console.info("====>get AccountManager finish===="); 222 var incorrectUid = 2147483648; 223 try { 224 var localId = osAccountManager.getOsAccountLocalIdForUidSync(incorrectUid); 225 } catch (err) { 226 console.info("====>get localId err: " + JSON.stringify(err)); 227 console.info("====>localId obtained by uid:" + localId); 228 expect(err.code).assertEqual(ERR_INVALID_PARAMETER); 229 expect(localId).assertEqual(undefined); 230 console.info("====>ActsOsAccountQueryIdFormUidSync_0300 end===="); 231 done(); 232 } 233 }); 234 235 /* 236 * @tc.number : ActsOsAccountQueryIdFormUidSync_0400 237 * @tc.name : getOsAccountLocalIdForUidSync 238 * @tc.desc : Authentication failed to query user by null uid 239 */ 240 it('ActsOsAccountQueryIdFormUidSync_0400', 0, async function (done) { 241 console.info("====>ActsOsAccountQueryIdFormUidSync_0400 start===="); 242 var osAccountManager = osaccount.getAccountManager(); 243 console.info("====>get AccountManager finish===="); 244 try { 245 var localId = osAccountManager.getOsAccountLocalIdForUidSync(null); 246 } catch (err) { 247 console.info("====>get localId err: " + JSON.stringify(err)); 248 console.info("====>localId obtained by uid:" + localId); 249 expect(err.code).assertEqual(401); 250 expect(localId).assertEqual(undefined); 251 console.info("====>ActsOsAccountQueryIdFormUidSync_0400 end===="); 252 done(); 253 } 254 }); 255 256 /* 257 * @tc.number : ActsOsAccountQueryIdFormProcess_0100 258 * @tc.name : getOsAccountLocalId callback 259 * @tc.desc : Verify that the user localId obtained from the current process uid 260 */ 261 it('ActsOsAccountQueryIdFormProcess_0100', 0, async function (done) { 262 console.info("====>ActsOsAccountQueryIdFormProcess_0100 start===="); 263 var osAccountManager = osaccount.getAccountManager(); 264 var bundleName = "com.example.actsosaccountthirdpartytest"; 265 var bundleInfo = await bundle.getBundleInfo(bundleName, bundle.BundleFlag.GET_BUNDLE_WITH_ABILITIES); 266 var uid = bundleInfo.uid; 267 var testLocalId = await osAccountManager.getOsAccountLocalIdForUid(uid) 268 console.info("====>get AccountManager finish===="); 269 osAccountManager.getOsAccountLocalId((err, localId) => { 270 console.info("====>get localId err: " + JSON.stringify(err)); 271 console.info("====>localId obtained by process:" + localId); 272 expect(err).assertEqual(null); 273 expect(localId).assertEqual(testLocalId); 274 console.info("====>ActsOsAccountQueryIdFormProcess_0100 end===="); 275 done(); 276 }); 277 }); 278 279 /* 280 * @tc.number : ActsOsAccountQueryIdFormProcess_0200 281 * @tc.name : getOsAccountLocalId promise 282 * @tc.desc : Verify that the user localId obtained from the current process uid 283 */ 284 it('ActsOsAccountQueryIdFormProcess_0200', 0, async function (done) { 285 console.info("====>ActsOsAccountQueryIdFormProcess_0200 start===="); 286 var osAccountManager = osaccount.getAccountManager(); 287 var bundleName = "com.example.actsosaccountthirdpartytest"; 288 var bundleInfo = await bundle.getBundleInfo(bundleName, bundle.BundleFlag.GET_BUNDLE_WITH_ABILITIES); 289 var uid = bundleInfo.uid; 290 var testLocalId = await osAccountManager.getOsAccountLocalIdForUid(uid) 291 console.info("====>testLocalId obtained by process:" + testLocalId) 292 console.info("====>get AccountManager finish===="); 293 var localId = await osAccountManager.getOsAccountLocalId(); 294 console.info("====>localId obtained by process:" + localId); 295 expect(localId).assertEqual(testLocalId); 296 console.info("====>ActsOsAccountQueryIdFormProcess_0200 end===="); 297 done(); 298 }); 299 300 /* 301 * @tc.number : ActsOsAccountgetType_0100 302 * @tc.name : getOsAccountType callback 303 * @tc.desc : Verify that the user type obtained from the current process uid 304 */ 305 it('ActsOsAccountgetType_0100', 0, async function (done) { 306 console.info("====>ActsOsAccountgetType_0100 start===="); 307 var osAccountManager = osaccount.getAccountManager(); 308 console.info("====>get AccountManager finish===="); 309 osAccountManager.getOsAccountType((err, accountType) => { 310 console.info("====>get type err: " + JSON.stringify(err)); 311 console.info("====>type obtained by process:" + JSON.stringify(accountType)); 312 expect(err).assertEqual(null); 313 expect(accountType).assertEqual(0); 314 console.info("====>ActsOsAccountgetType_0100 end===="); 315 done(); 316 }); 317 }); 318 319 /* 320 * @tc.number : ActsOsAccountgetType_0200 321 * @tc.name : getOsAccountType promise 322 * @tc.desc : Verify that the user type obtained from the current process uid 323 */ 324 it('ActsOsAccountgetType_0200', 0, async function (done) { 325 console.info("====>ActsOsAccountgetType_0200 start===="); 326 var osAccountManager = osaccount.getAccountManager(); 327 console.info("====>get AccountManager finish===="); 328 var accountType = await osAccountManager.getOsAccountType(); 329 console.info("====>type obtained by process:" + JSON.stringify(accountType)); 330 expect(accountType).assertEqual(0); 331 console.info("====>ActsOsAccountgetType_0200 end===="); 332 done(); 333 }); 334 335 /* 336 * @tc.number : ActsOsAccountQueryLocalIdSerial_0100 337 * @tc.name : getSerialNumberForOsAccountLocalId callback 338 * @tc.desc : Verify query serialNumber by 100 user and query 100 user by serialNumber 339 */ 340 it('ActsOsAccountQueryLocalIdSerial_0100', 0, async function (done) { 341 console.info("====>ActsOsAccountQueryLocalIdSerial_0100 start===="); 342 var osAccountManager = osaccount.getAccountManager(); 343 var testLocalId = await osAccountManager.getOsAccountLocalId(); 344 console.info("====>get AccountManager finish===="); 345 osAccountManager.getSerialNumberForOsAccountLocalId(testLocalId, (err, serialNumber) => { 346 console.info("====>ger serialNumber err:" + JSON.stringify(err)); 347 console.info("====>get serialNumber:" + serialNumber + " by localId: 100"); 348 expect(err).assertEqual(null); 349 var serialNumberStr = serialNumber.toString(); 350 var serialIntercept = serialNumberStr.substring(8); 351 console.info("====>truncate the last eight characters: " + serialIntercept); 352 expect(serialIntercept).assertEqual("00000001"); 353 osAccountManager.getOsAccountLocalIdForSerialNumber(serialNumber, (err, localId) => { 354 console.info("====>ger localId err:" + JSON.stringify(err)); 355 console.info("====>get localId:" + localId + " by serialNumber: " + serialNumber); 356 expect(err).assertEqual(null); 357 expect(localId).assertEqual(testLocalId); 358 console.info("====>ActsOsAccountQueryLocalIdSerial_0100 end===="); 359 done(); 360 }) 361 }) 362 }); 363 364 /* 365 * @tc.number : ActsOsAccountQueryLocalIdSerial_0200 366 * @tc.name : getSerialNumberForOsAccountLocalId promise 367 * @tc.desc : Verify query serialNumber by 100 user and query 100 user by serialNumber 368 */ 369 it('ActsOsAccountQueryLocalIdSerial_0200', 0, async function (done) { 370 console.info("====>ActsOsAccountQueryLocalIdSerial_0200 start===="); 371 var osAccountManager = osaccount.getAccountManager(); 372 var testLocalId = await osAccountManager.getOsAccountLocalId(); 373 console.info("====>get AccountManager finish===="); 374 var serialNumber = await osAccountManager.getSerialNumberForOsAccountLocalId(testLocalId); 375 console.info("====>get serialNumber:" + serialNumber + " by localId: 100"); 376 var serialNumberStr = serialNumber.toString(); 377 var serialIntercept = serialNumberStr.substring(8); 378 console.info("====>truncate the last eight characters: " + serialIntercept); 379 expect(serialIntercept).assertEqual("00000001"); 380 var localId = await osAccountManager.getOsAccountLocalIdForSerialNumber(serialNumber); 381 console.info("====>get localId:" + localId + " by serialNumber: " + serialNumber); 382 expect(localId).assertEqual(testLocalId); 383 console.info("====>ActsOsAccountQueryLocalIdSerial_0200 end===="); 384 done(); 385 }); 386 387 /* 388 * @tc.number : ActsOsAccountQueryLocalIdSerial_0300 389 * @tc.name : getOsAccountLocalIdForSerialNumber callback 390 * @tc.desc : Verify query serialNumber by 0 user and query 0 user by serialNumber 391 */ 392 it('ActsOsAccountQueryLocalIdSerial_0300', 0, async function (done) { 393 console.info("====>ActsOsAccountQueryLocalIdSerial_0300 start===="); 394 var osAccountManager = osaccount.getAccountManager(); 395 console.info("====>get AccountManager finish===="); 396 osAccountManager.getSerialNumberForOsAccountLocalId(0, (err, serialNumber) => { 397 console.info("====>ger serialNumber err:" + JSON.stringify(err)); 398 console.info("====>get serialNumber:" + serialNumber + " by localId: 0"); 399 expect(err).assertEqual(null); 400 var serialNumberStr = serialNumber.toString(); 401 var serialIntercept = serialNumberStr.substring(8); 402 console.info("====>truncate the last eight characters: " + serialIntercept); 403 expect(serialIntercept).assertEqual("00000000"); 404 osAccountManager.getOsAccountLocalIdForSerialNumber(serialNumber, (err, localId) => { 405 console.info("====>ger localId err:" + JSON.stringify(err)); 406 console.info("====>get localId:" + localId + " by serialNumber: " + serialNumber); 407 expect(err).assertEqual(null); 408 expect(localId).assertEqual(0); 409 console.info("====>ActsOsAccountQueryLocalIdSerial_0300 end===="); 410 done(); 411 }) 412 }) 413 }); 414 415 /* 416 * @tc.number : ActsOsAccountQueryLocalIdSerial_0400 417 * @tc.name : getOsAccountLocalIdForSerialNumber promise 418 * @tc.desc : Verify query serialNumber by 0 user and query 0 user by serialNumber 419 */ 420 it('ActsOsAccountQueryLocalIdSerial_0400', 0, async function (done) { 421 console.info("====>ActsOsAccountQueryLocalIdSerial_0400 start===="); 422 var osAccountManager = osaccount.getAccountManager(); 423 console.info("====>get AccountManager finish===="); 424 var serialNumber = await osAccountManager.getSerialNumberForOsAccountLocalId(0); 425 console.info("====>get serialNumber:" + serialNumber + " by localId: 0"); 426 var serialNumberStr = serialNumber.toString(); 427 var serialIntercept = serialNumberStr.substring(8); 428 console.info("====>truncate the last eight characters: " + serialIntercept); 429 expect(serialIntercept).assertEqual("00000000"); 430 var localId = await osAccountManager.getOsAccountLocalIdForSerialNumber(serialNumber); 431 console.info("====>get localId:" + localId + " by serialNumber: " + serialNumber); 432 expect(localId).assertEqual(0); 433 console.info("====>ActsOsAccountQueryLocalIdSerial_0400 end===="); 434 done(); 435 }); 436 437 /* 438 * @tc.number : ActsOsAccountQueryLocalIdSerial_0500 439 * @tc.name : getSerialNumberForOsAccountLocalId callback 440 * @tc.desc : Verify the query for the newly created user serialNumber and query the owning user through the 441 * serialNumber 442 */ 443 it('ActsOsAccountQueryLocalIdSerial_0500', 0, async function (done) { 444 console.info("====>ActsOsAccountQueryLocalIdSerial_0500 start===="); 445 var osAccountManager = osaccount.getAccountManager(); 446 console.info("====>get AccountManager finish===="); 447 var localId = 100; 448 let isEnable = await osAccountManager.checkMultiOsAccountEnabled(); 449 if (isEnable != true) { 450 console.info("====>ActsOsAccountQueryLocalIdSerial_0500 not support multiple osaccouts===="); 451 osAccountManager.getSerialNumberForOsAccountLocalId(localId, (err, serialNumber) => { 452 console.info("====>queryOsAccountById err:" + JSON.stringify(err)); 453 console.info("====>get serialNumber:" + serialNumber + " by localId: " + localId); 454 expect(err).assertEqual(null); 455 osAccountManager.getOsAccountLocalIdForSerialNumber(serialNumber, (err, getlocalId) => { 456 console.info("====>ger localId err:" + JSON.stringify(err)); 457 console.info("====>get localId:" + getlocalId + " by serialNumber: " + serialNumber); 458 expect(err).assertEqual(null); 459 expect(getlocalId).assertEqual(localId); 460 console.info("====>ActsOsAccountQueryLocalIdSerial_0500 end===="); 461 done(); 462 }) 463 }) 464 return; 465 } 466 osAccountManager.createOsAccount("osAccountNameIdSerialA", osaccount.OsAccountType.NORMAL, (err, data) => { 467 console.info("====>create os account err: " + JSON.stringify(err)); 468 console.info("====>create os account OsAccountInfo: " + JSON.stringify(data)); 469 expect(err).assertEqual(null); 470 expect(data.localName).assertEqual("osAccountNameIdSerialA"); 471 expect(data.domainInfo.accountName == "").assertEqual(true) 472 expect(data.type).assertEqual(1); 473 expect(data.constraints.length > 0).assertEqual(true); 474 expect(data.isVerified).assertEqual(false); 475 expect(data.isUnlocked).assertEqual(false); 476 expect(data.distributedInfo.name != null).assertEqual(true); 477 expect(data.domainInfo.domain == "").assertEqual(true); 478 expect(data.photo == "").assertEqual(true); 479 expect(data.lastLoginTime >= 0).assertEqual(true); 480 expect(data.serialNumber.toString().length == 16).assertEqual(true); 481 expect(data.isActived).assertEqual(false); 482 expect(data.isActivated).assertEqual(false); 483 expect(data.isCreateCompleted).assertEqual(true) 484 localId = data.localId; 485 osAccountManager.getSerialNumberForOsAccountLocalId(localId, (err, serialNumber) => { 486 console.info("====>queryOsAccountById err:" + JSON.stringify(err)); 487 console.info("====>get serialNumber:" + serialNumber + " by localId: " + localId); 488 expect(err).assertEqual(null); 489 osAccountManager.getOsAccountLocalIdForSerialNumber(serialNumber, (err, getlocalId) => { 490 console.info("====>ger localId err:" + JSON.stringify(err)); 491 console.info("====>get localId:" + getlocalId + " by serialNumber: " + serialNumber); 492 expect(err).assertEqual(null); 493 expect(getlocalId).assertEqual(localId); 494 osAccountManager.removeOsAccount(localId, (err) => { 495 console.info("====>remove localId: " + localId + " err:" + JSON.stringify(err)); 496 expect(err).assertEqual(null); 497 console.info("====>ActsOsAccountQueryLocalIdSerial_0500 end===="); 498 done(); 499 }) 500 }) 501 }) 502 }) 503 }); 504 505 /* 506 * @tc.number : ActsOsAccountQueryLocalIdSerial_0600 507 * @tc.name : getOsAccountLocalIdForSerialNumber promise 508 * @tc.desc : Verify the query for the newly created user serialNumber and query the owning user through the 509 * serialNumber 510 */ 511 it('ActsOsAccountQueryLocalIdSerial_0600', 0, async function (done) { 512 console.info("====>ActsOsAccountQueryLocalIdSerial_0600 start===="); 513 var osAccountManager = osaccount.getAccountManager(); 514 console.info("====>get AccountManager finish===="); 515 var localId = 100; 516 let isEnable = await osAccountManager.checkMultiOsAccountEnabled(); 517 if (isEnable != true) { 518 console.info("====>ActsOsAccountQueryLocalIdSerial_0600 not support multiple osaccouts===="); 519 var serialNumber = await osAccountManager.getSerialNumberForOsAccountLocalId(localId); 520 console.info("====>get serialNumber:" + serialNumber + " by localId: " + localId); 521 var getlocalId = await osAccountManager.getOsAccountLocalIdForSerialNumber(serialNumber); 522 console.info("====>get localId:" + getlocalId + " by serialNumber: " + serialNumber); 523 expect(getlocalId).assertEqual(localId); 524 console.info("====>ActsOsAccountQueryLocalIdSerial_0600 end===="); 525 done(); 526 return; 527 } 528 var OsAccountInfo = await osAccountManager.createOsAccount("accountIdSerialB", osaccount.OsAccountType.GUEST); 529 console.info("====>create os account OsAccountInfo: " + JSON.stringify(OsAccountInfo)); 530 expect(OsAccountInfo.localName).assertEqual("accountIdSerialB"); 531 localId = OsAccountInfo.localId; 532 var serialNumber = await osAccountManager.getSerialNumberForOsAccountLocalId(localId); 533 console.info("====>get serialNumber:" + serialNumber + " by localId: " + localId); 534 var getlocalId = await osAccountManager.getOsAccountLocalIdForSerialNumber(serialNumber); 535 console.info("====>get localId:" + getlocalId + " by serialNumber: " + serialNumber); 536 expect(getlocalId).assertEqual(localId); 537 await osAccountManager.removeOsAccount(localId); 538 console.info("====>ActsOsAccountQueryLocalIdSerial_0600 end===="); 539 done(); 540 }); 541 542 /* 543 * @tc.number : ActsOsAccountQueryCounts_0100 544 * @tc.name : getOsAccountCount callback 545 * @tc.desc : Verify to obtain the number os all os accounts created 546 */ 547 it('ActsOsAccountQueryCounts_0100', 0, async function (done) { 548 console.info("====>ActsOsAccountQueryCounts_0100 start===="); 549 var osAccountManager = osaccount.getAccountManager(); 550 console.info("====>get AccountManager finish===="); 551 var obtainCount = 0; 552 var localIdFir; 553 let isEnable = await osAccountManager.checkMultiOsAccountEnabled(); 554 if (isEnable != true) { 555 console.info("====>ActsOsAccountQueryCounts_0100 not support multiple osaccouts===="); 556 osAccountManager.getOsAccountCount((err, data) => { 557 console.info("====>obtains the number of all os accounts created err:" + JSON.stringify(err)); 558 console.info("====>obtains the number of all os accounts created data:" + data); 559 expect(err).assertEqual(null); 560 expect(data).assertEqual(1); 561 console.info("====>ActsOsAccountQueryCounts_0100 end===="); 562 done(); 563 }) 564 return; 565 } 566 osAccountManager.getOsAccountCount((err, data) => { 567 console.info("====>obtains the number of all os accounts created err:" + JSON.stringify(err)); 568 console.info("====>obtains the number of all os accounts created data:" + data); 569 expect(err).assertEqual(null); 570 obtainCount = data; 571 osAccountManager.createOsAccount("osAccountNameIdSerialE", osaccount.OsAccountType.NORMAL, (err, data) => { 572 console.info("====>create first os account err: " + JSON.stringify(err)); 573 console.info("====>create first os account OsAccountInfo: " + JSON.stringify(data)); 574 localIdFir = data.localId; 575 expect(err).assertEqual(null); 576 expect(data.localName).assertEqual("osAccountNameIdSerialE"); 577 osAccountManager.getOsAccountCount((err, count) => { 578 console.info("====>obtains the number of all os accounts created err:" + JSON.stringify(err)); 579 console.info("====>obtains the number of all os accounts created count:" + count); 580 expect(err).assertEqual(null); 581 count = count - 1; 582 expect(count).assertEqual(obtainCount); 583 osAccountManager.removeOsAccount(localIdFir, (err) => { 584 console.info("====>remove localId: " + localIdFir + " err:" + JSON.stringify(err)); 585 expect(err).assertEqual(null); 586 osAccountManager.getOsAccountCount((err, data) => { 587 console.info("====>obtains the number accounts created err:" + JSON.stringify(err)); 588 console.info("====>obtains the number accounts created data:" + data); 589 expect(err).assertEqual(null); 590 expect(data).assertEqual(obtainCount); 591 console.info("====>ActsOsAccountQueryCounts_0100 end===="); 592 done(); 593 }) 594 }) 595 }) 596 }) 597 }) 598 }) 599 600 /* 601 * @tc.number : ActsOsAccountQueryCounts_0200 602 * @tc.name : getOsAccountCount promise 603 * @tc.desc : Verify to obtain the number os all os accounts created 604 */ 605 it('ActsOsAccountQueryCounts_0200', 0, async function (done) { 606 console.info("====>ActsOsAccountQueryCounts_0200 start===="); 607 var osAccountManager = osaccount.getAccountManager(); 608 console.info("====>get AccountManager finish===="); 609 let isEnable = await osAccountManager.checkMultiOsAccountEnabled(); 610 if (isEnable != true) { 611 console.info("====>ActsOsAccountQueryCounts_0200 not support multiple osaccouts===="); 612 var obtainCount = await osAccountManager.getOsAccountCount(); 613 console.info("====>obtains the number of all os accounts created:" + obtainCount); 614 expect(obtainCount).assertEqual(1); 615 console.info("====>ActsOsAccountQueryCounts_0200 end===="); 616 done(); 617 return; 618 } 619 var obtainCount = await osAccountManager.getOsAccountCount(); 620 console.info("====>obtains the number of all os accounts created:" + obtainCount); 621 var osAccountFir = await osAccountManager.createOsAccount("osAccountIdSerialG", osaccount.OsAccountType.NORMAL); 622 console.info("====>create first os account OsAccountInfo: " + JSON.stringify(osAccountFir)); 623 var localIdFir = osAccountFir.localId; 624 expect(osAccountFir.localName).assertEqual("osAccountIdSerialG"); 625 var countFir = await osAccountManager.getOsAccountCount(); 626 console.info("====>obtains the number of all os accounts created count:" + countFir); 627 countFir = countFir - 1; 628 expect(countFir).assertEqual(obtainCount); 629 await osAccountManager.removeOsAccount(localIdFir); 630 console.info("====>remove localId: " + localIdFir); 631 console.info("====>ActsOsAccountQueryCounts_0200 end===="); 632 done(); 633 }) 634 635 636 /* 637 * @tc.number : ActsOsAccountGetActivedOsAccountIds_0100 638 * @tc.name : getActivatedOsAccountLocalIds callback 639 * @tc.desc : query activated osAccount Ids 640 */ 641 it('ActsOsAccountGetActivedOsAccountIds_0100', 0, async function (done) { 642 console.info("====>ActsOsAccountGetActivedOsAccountIds_0100 start===="); 643 var osAccountManager = osaccount.getAccountManager(); 644 osAccountManager.getActivatedOsAccountLocalIds((err, dataArray) => { 645 console.info("====>ActsOsAccountGQueryActicedOsAccountIds_0100 err :" + JSON.stringify(err)); 646 expect(err).assertEqual(null) 647 console.info("====>ActsOsAccountGQueryActicedOsAccountIds_0100 dataArray:" + dataArray); 648 expect(dataArray.length).assertEqual(1) 649 done(); 650 }) 651 }) 652 653 /* 654 * @tc.number : ActsOsAccountGetActivedOsAccountIds_0200 655 * @tc.name : getActivatedOsAccountLocalIds promise 656 * @tc.desc : query activated osAccount Ids 657 */ 658 it('ActsOsAccountGetActivedOsAccountIds_0200', 0, async function (done) { 659 console.info("====>ActsOsAccountGetActivedOsAccountIds_0200 start===="); 660 var osAccountManager = osaccount.getAccountManager(); 661 osAccountManager.getActivatedOsAccountLocalIds().then((dataArray) => { 662 console.info("====>ActsOsAccountGetActivedOsAccountIds_0200 data" + JSON.stringify(dataArray)) 663 expect(dataArray.length).assertEqual(1) 664 done(); 665 }).catch((err) => { 666 console.info("====>ActsOsAccountGetActivedOsAccountIds_0200 err " + JSON.stringify(err)); 667 expect(err).assertFalse() 668 done(); 669 }); 670 }) 671 672 673 /* 674 * @tc.number : ActsOsAccountCheckConstraints_0300 675 * @tc.name : Constraints callback 676 * @tc.desc : get 0 local user all constraints 677 */ 678 it('ActsOsAccountCheckConstraints_3100', 0, async function (done) { 679 console.info("====>ActsOsAccountCheckConstraints_3100 start===="); 680 var AccountManager = osaccount.getAccountManager(); 681 console.info("====>get AccountManager finish===="); 682 AccountManager.getOsAccountConstraints(0, (err, constraints) => { 683 console.info("====>getOsAccountConstraints err:" + JSON.stringify(err)); 684 console.info("====>getOsAccountConstraints:" + JSON.stringify(constraints)); 685 expect(err).assertEqual(null); 686 expect(constraints.length).assertEqual(0); 687 console.info("====>ActsOsAccountCheckConstraints_3100 end===="); 688 done(); 689 }) 690 }) 691 692 /* 693 * @tc.number : ActsOsAccountCheckConstraints_0400 694 * @tc.name : Constraints promise 695 * @tc.desc : get 0 local user all constraints 696 */ 697 it('ActsOsAccountCheckConstraints_3200', 0, async function (done) { 698 console.info("====>ActsOsAccountCheckConstraints_3200 start===="); 699 var AccountManager = osaccount.getAccountManager(); 700 console.info("get AccountManager finish===="); 701 AccountManager.getOsAccountConstraints(0).then((data) => { 702 console.info("====>ActsOsAccountCheckConstraints_3200 getOsAccountConstraints data:" + data); 703 done(); 704 }).catch((err) => { 705 console.info("====>ActsOsAccountCheckConstraints_3200 getOsAccountConstraints err:" + JSON.stringify(err)); 706 expect().assertFalse() 707 done(); 708 }) 709 }) 710 711 /** 712 * @tc.number ActsOsAccountQueryDomainTest_0300 713 * @tc.name Test createOsAccountForDomain getOsAccountLocalIdForDomain callback 714 * @tc.desc Test createOsAccountForDomain getOsAccountLocalIdForDomain API functionality 715 */ 716 it('ActsOsAccountQueryDomainTest_0300', 0, async function (done) { 717 console.info("====>ActsOsAccountQueryDomainTest_0100 start===="); 718 var osAccountManager = osaccount.getAccountManager(); 719 osAccountManager.getOsAccountLocalIdForDomain({ domain: "", accountName: "" }, (err) => { 720 console.info("====>ActsOsAccountQueryDomainTest_0300 err:" + JSON.stringify(err)); 721 expect(err.code != 0).assertEqual(true) 722 console.info("====>ActsOsAccountQueryDomainTest_0300 end===="); 723 done(); 724 }) 725 }); 726 727 /** 728 * @tc.number ActsOsAccountQueryDomainTest_0400 729 * @tc.name Test createOsAccountForDomain getOsAccountLocalIdForDomain pormise 730 * @tc.desc Test createOsAccountForDomain getOsAccountLocalIdForDomain API functionality 731 */ 732 it('ActsOsAccountQueryDomainTest_0400', 0, async function (done) { 733 console.info("====>ActsOsAccountQueryDomainTest_0400 start===="); 734 var osAccountManager = osaccount.getAccountManager(); 735 osAccountManager.getOsAccountLocalIdForDomain({ domain: "", accountName: "" }).then((accountID) => { 736 console.info("ActsOsAccountQueryDomainTest_0400 accountID:" + JSON.stringify(accountID)) 737 done(); 738 }).catch((err) => { 739 console.info("ActsOsAccountQueryDomainTest_0400 err:" + JSON.stringify(err)) 740 expect(err.code != 0).assertEqual(true) 741 done(); 742 }) 743 }); 744 745 /* 746 * @tc.number : ActsOsAccountGetCurrent_2100 747 * @tc.name : getCurrentOsAccount callback 748 * @tc.desc : Get the os account information to which the application belongs 749 */ 750 it('ActsOsAccountGetCurrent_2100', 0, async function (done) { 751 console.info("====>ActsOsAccountGetCurrent_2100 start===="); 752 var AccountManager = osaccount.getAccountManager(); 753 console.info("====>get os AccountManager finish===="); 754 AccountManager.getCurrentOsAccount((err, data) => { 755 console.info("====>getCurrentOsAccount err:" + JSON.stringify(err)); 756 console.info("====>getCurrentOsAccount data:" + JSON.stringify(data)); 757 expect(err).assertEqual(null); 758 console.info("====>ActsOsAccountGetCurrent_2100 end===="); 759 done(); 760 }) 761 }) 762 763 /* 764 * @tc.number : ActsOsAccountGetCurrent_1800 765 * @tc.name : getCurrentOsAccount promise 766 * @tc.desc : Get the os account information to which the application belongs 767 */ 768 it('ActsOsAccountGetCurrent_2200', 0, async function (done) { 769 console.info("====>ActsOsAccountGetCurrent_2200 start===="); 770 var AccountManager = osaccount.getAccountManager(); 771 console.info("====>get os AccountManager finish===="); 772 var data = await AccountManager.getCurrentOsAccount(); 773 console.info("====>getCurrentOsAccount data:" + JSON.stringify(data)); 774 expect(data.localId).assertEqual(100); 775 expect(data.type).assertEqual(0); 776 var serialNumberStr = data.serialNumber.toString(); 777 var serialIntercept = serialNumberStr.substring(8); 778 console.info("====>truncate the last eight characters: " + serialIntercept); 779 expect(serialIntercept).assertEqual("00000001"); 780 expect(data.isCreateCompleted).assertTrue(); 781 console.info("====>ActsOsAccountGetCurrent_2200 end===="); 782 done(); 783 }) 784 785 786 /* 787 * @tc.number : ActsOsAccountCheckConstraints_3300 788 * @tc.name : checkOsAccountConstraintEnabled callback 789 * @tc.desc : Checks whether the given constraint is enabled for the specified OS account 790 * @tc.level : Level3 791 * @tc.size : MediumTest 792 * @tc.type : Function 793 */ 794 it('ActsOsAccountCheckConstraints_3300', 0, async function (done) { 795 console.info("====>ActsOsAccountCheckConstraints_3300 start===="); 796 var AccountManager = osaccount.getAccountManager(); 797 console.info("====>get os AccountManager finish===="); 798 AccountManager.checkOsAccountConstraintEnabled(100, "constraint.bluetooth", (err, result) => { 799 console.info("====>checkOsAccountConstraintEnabled err:" + JSON.stringify(err)); 800 console.info("====>checkOsAccountConstraintEnabled result:" + JSON.stringify(result)); 801 expect(err).assertEqual(null); 802 expect(result).assertTrue(); 803 console.info("====>ActsOsAccountCheckConstraints_3300 end===="); 804 done(); 805 }) 806 }) 807 808 /* 809 * @tc.number : ActsOsAccountPermission_3400 810 * @tc.name : checkOsAccountConstraintEnabled promise 811 * @tc.desc : Checks whether the given constraint is enabled for the specified OS account 812 * @tc.level : Level3 813 * @tc.size : MediumTest 814 * @tc.type : Function 815 */ 816 it('ActsOsAccountCheckConstraints_3400', 0, async function (done) { 817 console.info("====>ActsOsAccountCheckConstraints_3400 start===="); 818 var AccountManager = osaccount.getAccountManager(); 819 console.info("====>get os AccountManager finish===="); 820 try { 821 let data = await AccountManager.checkOsAccountConstraintEnabled(100, "constraint.bluetooth"); 822 console.info("====>checkOsAccountConstraintEnabled data:" + JSON.stringify(data)); 823 expect(data).assertEqual(true); 824 done(); 825 } catch (err) { 826 console.info("====>checkOsAccountConstraintEnabled err:" + JSON.stringify(err)); 827 expect(err).assertEqual(null); 828 console.info("====>ActsOsAccountCheckConstraints_3400 end===="); 829 done(); 830 } 831 }) 832 833 /* 834 * @tc.number : ActsOsAccountIsOsAccountConstraintEnabled_0100 835 * @tc.name : IsOsAccountConstraintEnabled promise 836 * @tc.desc : Checks whether the given constraint is enabled for the current OS account 837 * @tc.level : Level3 838 * @tc.size : MediumTest 839 * @tc.type : Function 840 */ 841 it('ActsOsAccountIsOsAccountConstraintEnabled_0100', 0, async function (done) { 842 console.info("====>ActsOsAccountIsOsAccountConstraintEnabled_0100 start===="); 843 var AccountManager = osaccount.getAccountManager(); 844 console.info("====>get os AccountManager finish===="); 845 try { 846 let IsOsAccountConstraintEnabled = await AccountManager.isOsAccountConstraintEnabled("constraint.bluetooth"); 847 console.info("====>isOsAccountConstraintEnabled data:" + JSON.stringify(IsOsAccountConstraintEnabled)); 848 expect(IsOsAccountConstraintEnabled).assertEqual(true); 849 done(); 850 } catch (err) { 851 console.info("====>isOsAccountConstraintEnabled err:" + JSON.stringify(err)); 852 expect(err).assertEqual(null); 853 console.info("====>ActsOsAccountIsOsAccountConstraintEnabled_0100 end===="); 854 done(); 855 } 856 }) 857 858 /* 859 * @tc.number : ActsOsAccountGetOsAccountName_0100 860 * @tc.name : GetOsAccountName promise 861 * @tc.desc : Gets the name of the OS account to which the caller belongs 862 * @tc.level : Level3 863 * @tc.size : MediumTest 864 * @tc.type : Function 865 */ 866 it('ActsOsAccountGetOsAccountName_0100', 0, async function (done) { 867 console.info("====>ActsOsAccountGetOsAccountName_0100 start===="); 868 var AccountManager = osaccount.getAccountManager(); 869 console.info("====>get os AccountManager finish===="); 870 try { 871 let osAccountName = await AccountManager.getOsAccountName(); 872 console.info("====>ActsOsAccountGetOsAccountName_0100 osAccountName: " + osAccountName); 873 done(); 874 } catch (err) { 875 console.info("====>ActsOsAccountGetOsAccountName_0100 err:" + JSON.stringify(err)); 876 expect(err).assertEqual(null); 877 console.info("====>ActsOsAccountGetOsAccountName_0100 end===="); 878 done(); 879 } 880 }) 881 }) 882}