未验证 提交 01cde1fa 编写于 作者: O openharmony_ci 提交者: Gitee

!2567 【XTS】【事件通知子系统】分布式

Merge pull request !2567 from fujiarui/master
......@@ -26,6 +26,7 @@ group("publish_test") {
#"publishcontentype:publishcontentype",
#"subscribe:subscribe",
"activebtn:activebtn",
"actsansdistributedtest:ActsAnsDistributeTest",
"actsansgetallactive:ActsAnsGetAllActiveTestXts",
"ansactscancelgroup:ActsAnsCancelGroupTest",
"ansactsremovegroup:ActsAnsRemoveGroupTest",
......
# Copyright (c) 2021 Huawei Device Co., Ltd.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
import("//test/xts/tools/build/suite.gni")
ohos_js_hap_suite("ActsAnsDistributeTest") {
hap_profile = "./entry/src/main/config.json"
deps = [
":hjs_demo_js_assets",
":hjs_demo_resources",
]
certificate_profile = "./signature/openharmony_sx.p7b"
hap_name = "ActsAnsDistributeTest"
}
ohos_js_assets("hjs_demo_js_assets") {
source_dir = "./entry/src/main/js/default"
}
ohos_resources("hjs_demo_resources") {
sources = [ "./entry/src/main/js/resources" ]
hap_profile = "./entry/src/main/config.json"
}
{
"description": "Configuration for hjunit demo Tests",
"driver": {
"type": "JSUnitTest",
"test-timeout": "60000",
"package": "com.example.actsansdistributetest",
"shell-timeout": "60000"
},
"kits": [
{
"test-file-name": [
"ActsAnsDistributeTest.hap"
],
"type": "AppInstallKit",
"cleanup-apps": true
}
]
}
{
"app": {
"bundleName": "com.example.actsansdistributetest",
"vendor": "example",
"version": {
"code": 1,
"name": "1.0"
},
"apiVersion": {
"compatible": 5,
"target": 5,
"releaseType": "Beta1"
}
},
"deviceConfig": {},
"module": {
"package": "com.example.actsansdistributetest",
"name": ".MyApplication",
"deviceType": [
"phone"
],
"reqPermissions": [
{
"name": "ohos.permission.NOTIFICATION_CONTROLLER"
}
],
"distro": {
"deliveryWithInstall": true,
"moduleName": "entry",
"moduleType": "entry"
},
"abilities": [
{
"skills": [
{
"entities": [
"entity.system.home"
],
"actions": [
"action.system.home"
]
}
],
"name": "com.example.actsansdistributetest.MainAbility",
"icon": "$media:icon",
"description": "$string:mainability_description",
"label": "$string:app_name",
"type": "page",
"isVisible": "true",
"launchType": "standard",
"visible": true
}
],
"js": [
{
"pages": [
"pages/index/index"
],
"name": "default",
"window": {
"designWidth": 720,
"autoDesignWidth": false
}
}
]
}
}
\ No newline at end of file
/*
* Copyright (c) 2021 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
export default {
onCreate() {
console.info('AceApplication onCreate');
},
onDestroy() {
console.info('AceApplication onDestroy');
}
};
{
"strings": {
"hello": "Hello",
"world": "World"
}
}
\ No newline at end of file
{
"strings": {
"hello": "您好",
"world": "世界"
}
}
\ No newline at end of file
.container {
flex-direction: column;
justify-content: center;
align-items: center;
}
.title {
font-size: 100px;
}
<div class="container">
<text class="title">
分布式自动化
</text>
</div>
/*
* Copyright (c) 2021 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import file from '@system.file'
import {Core, ExpectExtend} from 'deccjsunit/index'
const injectRef = Object.getPrototypeOf(global) || global
injectRef.regeneratorRuntime = require('@babel/runtime/regenerator')
export default {
data: {
title: ""
},
onInit() {
this.title = this.$t('strings.world');
},
onShow() {
console.info('onShow finish')
const core = Core.getInstance()
const expectExtend = new ExpectExtend({
'id': 'extend'
})
core.addService('expect', expectExtend)
core.init()
const configService = core.getDefaultService('config')
configService.setConfig(this)
require('../../../test/List.test')
core.execute()
},
onReady() {
console.info('onReady');
},
}
{
"string": [
{
"name": "app_name",
"value": "distribute"
},
{
"name": "mainability_description",
"value": "JS_Phone_Empty Feature Ability"
}
]
}
\ No newline at end of file
/*
* Copyright (c) 2021 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
require('./actsansdistributedtest.js')
\ No newline at end of file
/*
* Copyright (c) 2022 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import notify from '@ohos.notification'
import {describe, beforeAll, beforeEach, afterEach, afterAll, it, expect} from 'deccjsunit/index'
var timeout = 1800;
describe('ActsAnsDistributeTest', function () {
/*
* @tc.number: ActsDistribute_test_0100
* @tc.name: enableDistributed()
* @tc.desc: verify the function of enableDistributed,isDistributedEnabled
*/
it('ActsDistribute_test_0100', 0, async function (done) {
await notify.enableDistributed(false,async() => {
await notify.isDistributedEnabled((err,data) => {
console.log("===>ActsDistribute_test_0100 success===>"+err+data)
expect(data).assertEqual(false)
done();
})
})
})
/*
* @tc.number: ActsDistribute_test_0200
* @tc.name: enableDistributedByBundle()
* @tc.desc: verify the function of enableDistributedByBundle,isDistributedEnableByBundle
*/
it('ActsDistribute_test_0200', 0, async function (done) {
await notify.enableDistributedByBundle({
bundle:"com.example.actsansdistributetest"
},true,async() => {
await notify.isDistributedEnableByBundle({
bundle:"com.example.actsansdistributetest",
},(err,data) => {
console.log("===>ActsDistribute_test_0200 success===>"+err+data)
expect(data).assertEqual(true)
done();
})
})
})
/*
* @tc.number: ActsDistribute_test_0300
* @tc.name: getDeviceRemindType()
* @tc.desc: verify the function of getDeviceRemindType
*/
it('ActsDistribute_test_0300', 0, async function (done) {
await notify.getDeviceRemindType((err,data) => {
console.debug("===>ActsDistribute_test_0300===>"+ JSON.stringify(data))
expect(data != notify.DeviceRemindType.IDLE_DONOT_REMIND ).assertEqual(true);
expect(data != notify.DeviceRemindType.IDLE_REMIND).assertEqual(true);
expect(data != notify.DeviceRemindType.ACTIVE_DONOT_REMIND).assertEqual(true);
expect(data).assertEqual(notify.DeviceRemindType.ACTIVE_REMIND);
done();
});
})
/*
* @tc.number: ActsDistribute_test_0400
* @tc.name: publish()
* @tc.desc: verify the function of publish
*/
it('ActsDistribute_test_0400', 0, async function (done) {
function onConsume0100(data) {
console.info("========ActsDistribute_test_0400 onConsume data:=======>" + JSON.stringify(data));
expect(data.request.distributedOption.remindType).assertEqual(3);
expect(data.request.deviceId).assertEqual("");
console.info("========ActsDistribute_test_0400 onConsume data:=======>" + JSON.stringify(data.request.notificationFlags));
expect(JSON.stringify(data.request.notificationFlags)).assertEqual(undefined);
}
await notify.enableDistributed(true);
await notify.enableDistributedSelf(true);
console.info("==================ActsDistribute_test_0400 start==================>");
var subscriber ={
onConsume:onConsume0100,
}
await notify.subscribe(subscriber);
var notificationRequest = {
content: {
contentType: notify.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
normal: {
title: "test13_title",
text: "test13_text",
additionalText: "test13_additionalText"
}
},
id: 4,
label: "ANS_PublishBasicText_0100",
slotType : notify.SlotType.CONTENT_INFORMATION,
distributedOption:{isDistributed: true, supportDisplayDevices: ["0"], supportOperateDevices: ["0"]}
}
await notify.publish(notificationRequest);
console.info("===========ActsDistribute_test_0400 publish promise========>");
setTimeout((async function(){
console.info("======ActsDistribute_test_0400 setTimeout==============>");
await notify.unsubscribe(subscriber);
console.info("======ActsDistribute_test_0400 setTimeout unsubscribe==>");
done();
}),timeout);
})
/*
* @tc.number: ActsDistribute_test_0500
* @tc.name: onEnabledNotificationChanged()
* @tc.desc: verify the function of onEnabledNotificationChanged
*/
it('ActsDistribute_test_0500', 0, async function (done) {
function onEnabledNotificationChanged001(data){
console.log("===>onEnabledNotificationChanged001 success===>"+JSON.stringify(data))
console.log("===>onEnabledNotificationChanged001 bundle===>"+JSON.stringify(data.bundle))
console.log("===>onEnabledNotificationChanged001 uid===>"+JSON.stringify(data.uid))
console.log("===>onEnabledNotificationChanged001 enable===>"+JSON.stringify(data.enable))
expect(JSON.stringify(data.bundle)).assertEqual("com.example.actsansdistributetest");
expect(JSON.stringify(data.uid)).assertEqual("454231");
expect(JSON.stringify(data.enable)).assertEqual(true);
}
function connectCallbacka() {
console.debug("==>connectCallbacka code==>");
}
var subscriber ={
onConnect:connectCallbacka,
onEnabledNotificationChanged:onEnabledNotificationChanged001,
}
await notify.subscribe(subscriber,async(err)=>{
console.debug("==>subscribeCallback code==>" +err.code);
expect(err.code).assertEqual(0);
await notify.requestEnableNotification((err) => {
console.log("===>ActsDistribute_test_0500 success===>"+err.code)
})
});
setTimeout((async function(){
console.info("======ActsDistribute_test_0500 setTimeout==============>");
await notify.unsubscribe(subscriber);
console.info("======ActsDistribute_test_0500 setTimeout unsubscribe==>");
done();
}),timeout);
})
})
......@@ -22,6 +22,7 @@ describe('ActsAnsNotificationPublishXts', function () {
console.info("===ACTS_PublishMULTILINEContent_0100 onConsume start===>");
console.info("===ACTS_PublishMULTILINEContent_0100 onConsume data:===>" + JSON.stringify(data));
expect(data.request.label).assertEqual("ACTS_PublishMULTILINEContent_0100");
expect(data.request.creatorUserId).assertEqual(100);
console.info("===ACTS_PublishMULTILINEContent_0100 onConsume end===>");
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册