• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Copyright (c) 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 { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from '@ohos/hypium'
17import AbilityDelegatorRegistry from '@ohos.application.abilityDelegatorRegistry'
18import { UiDriver, BY, UiComponent, MatchPattern } from '@ohos.uitest'
19import hilog from '@ohos.hilog'
20
21const TAG = '[Sample_ServiceExtAbility]'
22const DOMAIN = 0xF811
23const BUNDLE = 'ServiceExtAbility_'
24
25export default function appTest() {
26  describe('appTest', function () {
27    it(BUNDLE + 'StartAbilityFunction_001', 0, async function (done) {
28      hilog.info(DOMAIN, TAG, BUNDLE + 'StartAbilityFunction_001 begin')
29      let want = {
30        bundleName: "ohos.samples.eTSServiceExtAbility",
31        abilityName: "MainAbility"
32      }
33      var abilityDelegator: any
34      abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator()
35      abilityDelegator.startAbility(want, (err, data) => {
36        hilog.info(DOMAIN, TAG, BUNDLE + 'StartAbilityFunction_001,err.code:' + err.code)
37        expect(0).assertEqual(err.code)
38        done()
39        hilog.info(DOMAIN, TAG, BUNDLE + 'StartAbilityFunction_001 end')
40      })
41    })
42    /**
43     * 启动服务
44     */
45    it(BUNDLE + 'StartServiceFunction_001', 0, async function () {
46      hilog.info(DOMAIN, TAG, BUNDLE + 'StartServiceFunction_001 begin')
47      let driver = await UiDriver.create()
48      await driver.delayMs(1000)
49      hilog.info(DOMAIN, TAG, BUNDLE + 'StartServiceFunction_001 clickStartService')
50      // 点击启动服务
51      await driver.assertComponentExist(BY.key('startService'))
52      let startService = await driver.findComponent(BY.key('startService'))
53      await startService.click()
54      await driver.delayMs(1000)
55      hilog.info(DOMAIN, TAG, BUNDLE + 'StartServiceFunction_001 getConnectState')
56      // 连接状态变为已启动服务
57      await driver.assertComponentExist(BY.key('connectState'))
58      let connectState = await driver.findComponent(BY.key('connectState'))
59      let state = await connectState.getText()
60      hilog.info(DOMAIN, TAG, BUNDLE + 'StartServiceFunction_001 state')
61      expect('已启动服务').assertEqual(state)
62      hilog.info(DOMAIN, TAG, BUNDLE + 'StartServiceFunction_001 end')
63    })
64    /**
65     * 输入两个数字
66     */
67    it(BUNDLE + 'InputTwoNumFunction_001', 0, async function () {
68      hilog.info(DOMAIN, TAG, BUNDLE + 'InputTwoNumFunction_001 begin')
69      let driver = await UiDriver.create()
70      await driver.delayMs(1000)
71      hilog.info(DOMAIN, TAG, BUNDLE + 'InputTwoNumFunction_001 inputFirstNum')
72      // 输入第一个数字
73      await driver.assertComponentExist(BY.key('inputFirstNum'))
74      let inputFirstNum = await driver.findComponent(BY.key('inputFirstNum'))
75      await inputFirstNum.inputText('5')
76      let firstNumValue = await inputFirstNum.getText()
77      hilog.info(DOMAIN, TAG, BUNDLE + 'InputTwoNumFunction_001 firstNumValue')
78      expect('5').assertEqual(firstNumValue)
79      await driver.delayMs(1000)
80      hilog.info(DOMAIN, TAG, BUNDLE + 'InputTwoNumFunction_001 inputSecondNum')
81      // 输入第二个数字
82      await driver.assertComponentExist(BY.key('inputSecondNum'))
83      let inputSecondNum = await driver.findComponent(BY.key('inputSecondNum'))
84      await inputSecondNum.inputText('7')
85      let secondNumValue = await inputSecondNum.getText()
86      hilog.info(DOMAIN, TAG, BUNDLE + 'InputTwoNumFunction_001 secondNumValue')
87      expect('7').assertEqual(secondNumValue)
88      await driver.delayMs(1000)
89      hilog.info(DOMAIN, TAG, BUNDLE + 'InputTwoNumFunction_001 end')
90    })
91    /**
92     * 连接服务
93     */
94    it(BUNDLE + 'ConnectServiceFunction_001', 0, async function () {
95      hilog.info(DOMAIN, TAG, BUNDLE + 'ConnectServiceFunction_001 begin')
96      let driver = await UiDriver.create()
97      await driver.delayMs(1000)
98      hilog.info(DOMAIN, TAG, BUNDLE + 'ConnectServiceFunction_001 clickConnectService')
99      // 点击连接服务
100      await driver.assertComponentExist(BY.key('connectService'))
101      let connectService = await driver.findComponent(BY.key('connectService'))
102      await connectService.click()
103      await driver.delayMs(1000)
104      hilog.info(DOMAIN, TAG, BUNDLE + 'ConnectServiceFunction_001 getConnectState')
105      // 连接状态变为已连接服务
106      await driver.assertComponentExist(BY.key('connectState'))
107      let connectState = await driver.findComponent(BY.key('connectState'))
108      let state = await connectState.getText()
109      hilog.info(DOMAIN, TAG, BUNDLE + 'ConnectServiceFunction_001 state')
110      expect('已连接服务').assertEqual(state)
111      hilog.info(DOMAIN, TAG, BUNDLE + 'ConnectServiceFunction_001 end')
112    })
113    /**
114     * 断开服务
115     */
116    it(BUNDLE + 'DisconnectServiceFunction_001', 0, async function () {
117      hilog.info(DOMAIN, TAG, BUNDLE + 'DisconnectServiceFunction_001 begin')
118      let driver = await UiDriver.create()
119      await driver.delayMs(1000)
120      hilog.info(DOMAIN, TAG, BUNDLE + 'DisconnectServiceFunction_001 click DisconnectService')
121      // 断开服务
122      await driver.assertComponentExist(BY.key('disconnectService'))
123      let disconnectService = await driver.findComponent(BY.key('disconnectService'))
124      await disconnectService.click()
125      await driver.delayMs(1000)
126      hilog.info(DOMAIN, TAG, BUNDLE + 'DisconnectServiceFunction_001 getConnectState')
127      // 连接状态变为已断开服务
128      await driver.assertComponentExist(BY.key('connectState'))
129      let connectState = await driver.findComponent(BY.key('connectState'))
130      let state = await connectState.getText()
131      hilog.info(DOMAIN, TAG, BUNDLE + 'DisconnectServiceFunction_001 state')
132      expect('已断开服务').assertEqual(state)
133      hilog.info(DOMAIN, TAG, BUNDLE + 'DisconnectServiceFunction_001 end')
134    })
135  })
136}