未验证 提交 27adb445 编写于 作者: O openharmony_ci 提交者: Gitee

!4353 新增时间通知removalWantAgent和EnabledForUninstallApp的xts用例

Merge pull request !4353 from FangJinliang/pr_0716
......@@ -40,6 +40,7 @@ group("publish_test") {
#"publishvibra:ActsAnsPublishVibraTest",
#"sub:ActsAnsSubTestXts",
"unsubscribe:ActsAnsUnSubscriberTest",
"publishremovalwantagent:ActsAnsPublishRemovalWantAgentTest",
"wantagent:wantagent",
]
}
......
# 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("ActsAnsPublishRemovalWantAgentTest") {
hap_profile = "./entry/src/main/config.json"
deps = [
":hjs_demo_js_assets",
":hjs_demo_resources",
]
certificate_profile = "./signature/openharmony_sx.p7b"
hap_name = "ActsAnsPublishRemovalWantAgentTest"
}
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": "180000",
"package": "com.example.actsanspublishremovalwantagenttest",
"shell-timeout": "60000"
},
"kits": [
{
"test-file-name": [
"ActsAnsPublishRemovalWantAgentTest.hap"
],
"type": "AppInstallKit",
"cleanup-apps": true
}
]
}
{
"app": {
"bundleName": "com.example.actsanspublishremovalwantagenttest",
"vendor": "example",
"version": {
"code": 1,
"name": "1.0"
},
"apiVersion": {
"compatible": 4,
"target": 5,
"releaseType": "Beta1"
}
},
"deviceConfig": {},
"module": {
"package": "com.example.actsanspublishremovalwantagenttest",
"name": ".actsanspublishremovalwantagenttest",
"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.actsanspublishremovalwantagenttest.MainAbility",
"icon": "$media:icon",
"description": "$string:mainability_description",
"label": "$string:app_name",
"type": "page",
"launchType": "standard",
"visible": true
}
],
"js": [
{
"pages": [
"pages/index/index"
],
"name": "default",
"window": {
"designWidth": 720,
"autoDesignWidth": false
}
}
]
}
}
/*
* 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
/*
* 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.
*/
.container {
flex-direction: column;
justify-content: center;
align-items: center;
}
.title {
font-size: 100px;
}
/*
* 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.
*/
<div class="container">
<text class="title">
Test of Publishing vibrating Notification
</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 app from '@system.app'
import device from '@system.device'
import router from '@system.router'
import {Core, ExpectExtend, ReportExtend} from 'deccjsunit/index'
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'
})
const reportExtend = new ReportExtend(file)
core.addService('expect', expectExtend)
core.addService('report', reportExtend)
core.init()
const configService = core.getDefaultService('config')
configService.setConfig(this)
require('../../../test/List.test')
core.execute()
}
}
{
"string": [
{
"name": "app_name",
"value": "PubVibra"
},
{
"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.
*/
import notify from '@ohos.notification'
import WantAgent from '@ohos.wantAgent'
import {describe, beforeAll, beforeEach, afterEach, afterAll, it, expect} from 'deccjsunit/index'
var timeout = 1000;
describe('ActsAnsPublishRemovalWantAgentTest', function () {
console.info("===========ActsAnsPublishRemovalWantAgentTest start====================>");
/*
* @tc.number: ACTS_PublishRemovalWantAgent_xts_0100
* @tc.name: removalWantAgent
* @tc.desc: publish removalWantAgent notification
*/
function consumeCallback(data) {
console.info("===>consumeCallback data : ===>" +JSON.stringify(data));
var wantAgentObj = data.removalWantAgent
console.info("===>wantAgent: ===>" + JSON.stringify(wantAgentObj))
WantAgent.getWant(wantAgentObj).then((data) => {
expect(data[0].action).assertEqual("usual.event.REMOVAL_WANTAGENT");
});
}
it('ACTS_PublishRemovalWantAgent_xts_0100', 0, async function (done) {
console.info("===ACTS_PublishRemovalWantAgent_xts_0100===begin===>");
var subInfo ={
onConsume:consumeCallback
}
notify.subscribe(subInfo);
var agentInfo = {
wants: [
{
bundleName: 'com.example.actsanspublishremovalwantagenttest',
abilityName: 'com.example.actsanspublishremovalwantagenttest.MainAbility',
action: "usual.event.REMOVAL_WANTAGENT"
}
],
operationType: WantAgent.OperationType.SEND_COMMON_EVENT,
requestCode: 0,
wantAgentFlags:[WantAgent.WantAgentFlags.ONE_TIME_FLAG]
};
var wantAgentData = await WantAgent.getWantAgent(agentInfo);
var notificationRequest = {
content:{
contentType: notify.ContentType.NOTIFICATION_CONTENT_LONG_TEXT,
longText : {
title: "test_title",
text: "test_text",
additionalText: "test_PublishRemovalWantAgent",
longText: "longText123456",
briefText: "briefText123456",
expandedTitle: "expandedTitle123456"
},
},
id: 1,
slotType : notify.SlotType.SERVICE_INFORMATION,
removalWantAgent : wantAgentData
}
console.info("===ACTS_PublishRemovalWantAgent_xts_0100===publish===>");
await notify.publish(notificationRequest, (err) => {
console.info("===>publish callback===>"+err.code);
expect(err.code).assertEqual(0)
});
console.info("===ACTS_PublishRemovalWantAgent_xts_0100===end===>");
setTimeout((async function(){
notify.unsubscribe(subInfo);
console.info("======ACTS_PublishRemovalWantAgent_xts_0100 setTimeout unsubscribe===>");
done();
}),timeout);
});
/*
* @tc.number: SetEnabledForUninstallApp_test_0100
* @tc.name: set and get enabled when distributed device without app
* @tc.desc: set true and get true
*/
it('SetEnabledForUninstallApp_test_0100', 0, async function (done) {
await notify.setSyncNotificationEnabledForUninstallApp(
100,true,async() => {
await notify.getSyncNotificationEnabledForUninstallApp(100, (err,data) => {
console.log("===>getSyncNotificationEnabledForUninstallApp===>"+err+data)
expect(data).assertEqual(true)
done();
})
})
})
/*
* @tc.number: SetEnabledForUninstallApp_test_0200
* @tc.name: set and get enabled when distributed device without app
* @tc.desc: set false and get false
*/
it('SetEnabledForUninstallApp_test_0200', 0, async function (done) {
await notify.setSyncNotificationEnabledForUninstallApp(
100,false,async() => {
await notify.getSyncNotificationEnabledForUninstallApp(100, (err,data) => {
console.log("===>getSyncNotificationEnabledForUninstallApp===>"+err+data)
expect(data).assertEqual(false)
done();
})
})
})
/*
* @tc.number: SetEnabledForUninstallApp_test_0300
* @tc.name: set and get enabled when distributed device without app (promise)
* @tc.desc: set true and get true
*/
it('SetEnabledForUninstallApp_test_0300', 0, async function (done) {
notify.setSyncNotificationEnabledForUninstallApp(100, true).then(() => {
notify.getSyncNotificationEnabledForUninstallApp(100).then((data) => {
console.log("===>getSyncNotificationEnabledForUninstallApp===>"+data)
expect(data).assertEqual(true)
done();
}).catch((err) => {
Logger.error(TAG,
`===>getSyncNotificationEnabledForUninstallApp failed because ${JSON.stringify(err)}`);
});
}).catch((err) => {
Logger.error(TAG, `===>setSyncNotificationEnabledForUninstallApp failed because ${JSON.stringify(err)}`);
});
})
})
\ 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('./ExampleJsunit.test.js')
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册