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_CommonEvent]' 22const DOMAIN = 0xF811 23const BUNDLE = 'CommonEvent_' 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 parameter = { 30 "want": { 31 bundleName: "ohos.samples.etscommonevent", 32 abilityName: "ohos.samples.etscommonevent.MainAbility" 33 } 34 } 35 featureAbility.startAbility(parameter, (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 + 'SubscribeFunction_001', 0, async function () { 46 hilog.info(DOMAIN, TAG, BUNDLE + 'SubscribeFunction_001 begin') 47 let driver = await UiDriver.create() 48 await driver.delayMs(1000) 49 hilog.info(DOMAIN, TAG, BUNDLE + 'SubscribeFunction_001 createSubscriber') 50 // 创建订阅者 51 await driver.assertComponentExist(BY.text('创建订阅者', MatchPattern.CONTAINS)) 52 let createBtn = await driver.findComponent(BY.text('创建订阅者', MatchPattern.CONTAINS)) 53 await createBtn.click() 54 await driver.delayMs(1000) 55 hilog.info(DOMAIN, TAG, BUNDLE + 'SubscribeFunction_001 subscribeCommonEvent') 56 // 订阅公共事件 57 await driver.assertComponentExist(BY.text('订阅公共事件', MatchPattern.CONTAINS)) 58 let subBtn = await driver.findComponent(BY.text('订阅公共事件', MatchPattern.CONTAINS)) 59 await subBtn.click() 60 await driver.delayMs(1000) 61 hilog.info(DOMAIN, TAG, BUNDLE + 'SubscribeFunction_001 end') 62 }) 63 /** 64 * 发布公共事件 65 */ 66 it(BUNDLE + 'PublishFunction_001', 0, async function () { 67 hilog.info(DOMAIN, TAG, BUNDLE + 'PublishFunction_001 begin') 68 let driver = await UiDriver.create() 69 await driver.delayMs(1000) 70 hilog.info(DOMAIN, TAG, BUNDLE + 'PublishFunction_001 clickPublishCommonEventBtn') 71 // 发布公共事件 72 await driver.assertComponentExist(BY.text('发布公共事件', MatchPattern.CONTAINS)) 73 let pubBtn = await driver.findComponent(BY.text('发布公共事件', MatchPattern.CONTAINS)) 74 await pubBtn.click() 75 await driver.delayMs(1000) 76 hilog.info(DOMAIN, TAG, BUNDLE + 'PublishFunction_001 clickPublishInformationBtn') 77 // 发布公共事件指定发布信息 78 await driver.assertComponentExist(BY.text('发布公共事件指定发布信息', MatchPattern.CONTAINS)) 79 let pubInfoBtn = await driver.findComponent(BY.text('发布公共事件指定发布信息', MatchPattern.CONTAINS)) 80 await pubInfoBtn.click() 81 await driver.delayMs(1000) 82 hilog.info(DOMAIN, TAG, BUNDLE + 'PublishFunction_001 end') 83 }) 84 /** 85 * 取消订阅 86 */ 87 it(BUNDLE + 'CancelSubscribeFunction_001', 0, async function () { 88 hilog.info(DOMAIN, TAG, BUNDLE + 'CancelSubscribeFunction_001 begin') 89 let driver = await UiDriver.create() 90 await driver.delayMs(1000) 91 hilog.info(DOMAIN, TAG, BUNDLE + 'CancelSubscribeFunction_001 ClickCancelSubscribe') 92 // 取消订阅 93 await driver.assertComponentExist(BY.text('取消订阅', MatchPattern.CONTAINS)) 94 let cancelBtn = await driver.findComponent(BY.text('取消订阅', MatchPattern.CONTAINS)) 95 await cancelBtn.click() 96 await driver.delayMs(1000) 97 hilog.info(DOMAIN, TAG, BUNDLE + 'CancelSubscribeFunction_001 end') 98 }) 99 }) 100}