• 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 { UiDriver, BY, UiComponent, MatchPattern } from '@ohos.uitest'
18import featureAbility from '@ohos.ability.featureAbility'
19import hilog from '@ohos.hilog'
20
21const TAG = '[Sample_Process]'
22const DOMAIN = 0xF811
23const BUNDLE = 'Process_'
24
25export default function appTest() {
26  describe('appTest', function () {
27    it(BUNDLE + 'StartAbility_001', 0, async function (done) {
28      hilog.info(DOMAIN, TAG, BUNDLE + 'StartAbility_001 begin')
29      let parameter = {
30        "want": {
31          bundleName: "ohos.samples.etsprocess",
32          abilityName: "ohos.samples.etsprocess.MainAbility"
33        }
34      }
35      await featureAbility.startAbility(parameter, (err, data) => {
36        hilog.info(DOMAIN, TAG, BUNDLE + 'StartAbility_001 begin, err.code:' + err.code)
37        expect(0).assertEqual(err.code)
38        done()
39        hilog.info(DOMAIN, TAG, BUNDLE + 'StartAbility_001 end')
40      })
41    })
42
43    /**
44     * Process
45     */
46    it(BUNDLE + 'ProcessFunction_001', 0, async function () {
47      // create UiDriver
48      hilog.info(DOMAIN, TAG, BUNDLE + 'ProcessFunction_001 begin')
49      let driver = await UiDriver.create()
50      await driver.delayMs(1000)
51      // 获取当前系统运行时间
52      hilog.info(DOMAIN, TAG, BUNDLE + 'ProcessFunction_001 getUptime')
53      await driver.assertComponentExist(BY.key('getUptime'))
54      let getUptime = await driver.findComponent(BY.key('getUptime'))
55      await getUptime.click()
56      await driver.delayMs(1000)
57      // 获取进程当前工作目录
58      hilog.info(DOMAIN, TAG, BUNDLE + 'ProcessFunction_001 getDirectory')
59      await driver.assertComponentExist(BY.key('getDirectory'))
60      let getDirectory = await driver.findComponent(BY.key('getDirectory'))
61      await getDirectory.click()
62      await driver.delayMs(1000)
63      // 更改进程当前工作目录
64      hilog.info(DOMAIN, TAG, BUNDLE + 'ProcessFunction_001 changeDirectory')
65      await driver.assertComponentExist(BY.key('changeDirectory'))
66      let changeDirectory = await driver.findComponent(BY.key('changeDirectory'))
67      await changeDirectory.click()
68      await driver.delayMs(1000)
69      // 发送signal到指定的进程
70      hilog.info(DOMAIN, TAG, BUNDLE + 'ProcessFunction_001 sendSignal')
71      await driver.assertComponentExist(BY.key('sendSignal'))
72      let sendSignal = await driver.findComponent(BY.key('sendSignal'))
73      await sendSignal.click()
74      await driver.delayMs(1000)
75      // 启动一个子进程
76      hilog.info(DOMAIN, TAG, BUNDLE + 'ProcessFunction_001 startProcess')
77      await driver.assertComponentExist(BY.key('startProcess'))
78      let startProcess = await driver.findComponent(BY.key('startProcess'))
79      await startProcess.click()
80      await driver.delayMs(3000)
81      hilog.info(DOMAIN, TAG, BUNDLE + 'ProcessFunction_001 end')
82    })
83  })
84}