1/*
2 * Copyright (c) 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 */
15
16import { Driver, ON } from '@ohos.UiTest';
17import { beforeAll, describe, expect, it } from '@ohos/hypium';
18import abilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry';
19import { WantParams } from '../../../../main/ets/common/vm/Constants';
20import Want from '@ohos.app.ability.Want';
21
22const delegator = abilityDelegatorRegistry.getAbilityDelegator();
23const bundleName = abilityDelegatorRegistry.getArguments().bundleName;
24
25const delayTime: number = 1000;
26
27export default function CustomMixFailTimesTest() {
28  describe('CustomMixFailTimes', () => {
29    beforeAll(async () => {
30      const data: WantParams = {
31        "cmd": [{
32          "event": "CMD_NOTIFY_AUTH_START",
33          "payload": {
34            "lockoutDuration": 0,
35            "remainAttempts": 2,
36            "type": "pin",
37            "sensorInfo": "",
38            "result": 0
39          },
40        }, {
41          "event": "CMD_NOTIFY_AUTH_START",
42          "payload": {
43            "lockoutDuration": 0,
44            "remainAttempts": 1,
45            "type": "face",
46            "sensorInfo": "",
47            "result": 0
48          },
49        }, {
50          "event": "CMD_NOTIFY_AUTH_START",
51          "payload": {
52            "lockoutDuration": 0,
53            "remainAttempts": 2,
54            "sensorInfo": "{\"sensorType\":\"SensorType1\",\"udSensorCenterXInThousandth\":500,\"udSensorCenterYInThousandth\":500,\"udSensorRadiusInPx\":30}",
55            "type": "fingerprint",
56            "result": 0
57          },
58        }],
59        "pinSubType": "PIN_MIXED",
60        "title": "",
61        "type": ["pin", "face", "fingerprint"],
62        "widgetContextId": 6711153399710207000,
63        "windowModeType": "FULLSCREEN"
64      };
65
66      let want: Want = {
67        bundleName: bundleName,
68        abilityName: 'CustomMixFailTimesAbility',
69        parameters: {
70          useriamCmdData: data
71        }
72      }
73      await delegator.startAbility(want);
74    })
75
76    it('pinInput_full_customPwd_test', 0, async (done: Function) => {
77      let driver = Driver.create();
78      await driver.delayMs(delayTime);
79      await driver.findComponent(ON.id('pinInput'));
80      expect(true).assertTrue();
81      done();
82    })
83  })
84}