From 2d5eb0b5f273152075baeb408f8a8fda17dbe261 Mon Sep 17 00:00:00 2001 From: inter515 Date: Tue, 24 May 2022 14:33:20 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9EqueryExtensionAbilityInfos?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E7=94=A8=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: inter515 --- .../bundle_standard/bundlemanager/BUILD.gn | 1 + .../js/test/ActsBmsQueryAbilityByWant.test.js | 22 +- .../main/js/test/ActsBmsHapModuleTest.test.js | 44 +- .../actsbundlemanageretstest/Test.json | 6 +- .../entry/src/main/ets/test/List.test.ets | 2 + .../test/QueryExtensionAbilityInfos.test.ets | 404 ++++++++++++++++++ .../test/getApplicationInfoJsunit.test.ets | 2 +- .../bmsstagedemoone/AppScope/app.json | 21 + .../resources/base/element/string.json | 8 + .../sceneProject/bmsstagedemoone/BUILD.gn | 41 ++ .../sceneProject/bmsstagedemoone/Test.json | 4 + .../src/main/ets/Application/AbilityStage.ts | 9 + .../src/main/ets/FormAbility/FormAbility.ts | 37 ++ .../src/main/ets/MainAbility/MainAbility.ts | 36 ++ .../entry/src/main/ets/pages/index/index.ets | 66 +++ .../src/main/ets/pages/second/second.ets | 43 ++ .../entry/src/main/ets/test/List.test.ets | 20 + .../entry/src/main/module.json | 68 +++ .../main/resources/base/element/string.json | 40 ++ .../src/main/resources/base/media/icon.png | Bin 0 -> 15458 bytes .../resources/base/profile/form_config.json | 81 ++++ .../resources/base/profile/main_pages.json | 6 + .../signature/openharmony_sx.p7b | Bin 0 -> 3443 bytes .../test/actszipfileandunzipfiletest.test.js | 20 +- 24 files changed, 938 insertions(+), 43 deletions(-) create mode 100644 appexecfwk/bundle_standard/bundlemanager/actsbundlemanageretstest/entry/src/main/ets/test/QueryExtensionAbilityInfos.test.ets create mode 100644 appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/AppScope/app.json create mode 100644 appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/AppScope/resources/base/element/string.json create mode 100644 appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/BUILD.gn create mode 100644 appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/Test.json create mode 100644 appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/Application/AbilityStage.ts create mode 100644 appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/FormAbility/FormAbility.ts create mode 100644 appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/MainAbility/MainAbility.ts create mode 100644 appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/pages/index/index.ets create mode 100644 appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/pages/second/second.ets create mode 100644 appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/test/List.test.ets create mode 100644 appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/module.json create mode 100644 appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/resources/base/element/string.json create mode 100644 appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/resources/base/media/icon.png create mode 100644 appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/resources/base/profile/form_config.json create mode 100644 appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/resources/base/profile/main_pages.json create mode 100644 appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/signature/openharmony_sx.p7b diff --git a/appexecfwk/bundle_standard/bundlemanager/BUILD.gn b/appexecfwk/bundle_standard/bundlemanager/BUILD.gn index b6776ebf5..46c174c9f 100644 --- a/appexecfwk/bundle_standard/bundlemanager/BUILD.gn +++ b/appexecfwk/bundle_standard/bundlemanager/BUILD.gn @@ -56,6 +56,7 @@ group("bundlemanager") { "sceneProject/bmsscenethree:bmsJstest3", "sceneProject/bmsscenetwo:bmsJstest2", "sceneProject/bmssecondright:second_right", + "sceneProject/bmsstagedemoone:bmsStageDemo1", ] } } diff --git a/appexecfwk/bundle_standard/bundlemanager/actsbmsgetinfostest/entry/src/main/js/test/ActsBmsQueryAbilityByWant.test.js b/appexecfwk/bundle_standard/bundlemanager/actsbmsgetinfostest/entry/src/main/js/test/ActsBmsQueryAbilityByWant.test.js index cbb24fe8a..a65db539d 100644 --- a/appexecfwk/bundle_standard/bundlemanager/actsbmsgetinfostest/entry/src/main/js/test/ActsBmsQueryAbilityByWant.test.js +++ b/appexecfwk/bundle_standard/bundlemanager/actsbmsgetinfostest/entry/src/main/js/test/ActsBmsQueryAbilityByWant.test.js @@ -19,6 +19,8 @@ const BUNDLE_NAME1 = 'com.example.third1'; const SYSTEM_NAME = 'com.example.system2'; const ABILITIY_NAME8 = 'com.example.system2.MainAbility'; const USERID = 100; +const ACTION_NAME = 'action.system.home'; +const ENTITY_NAME = 'entity.system.home'; describe('ActsBmsQueryAbilityByWant', function () { @@ -30,8 +32,8 @@ describe('ActsBmsQueryAbilityByWant', function () { */ it('bms_queryAbilityByWant_0100', 0, async function (done) { await bundle.queryAbilityByWant({ - action: ['action.system.home'], - entities: ['entity.system.home'], + action: [ACTION_NAME], + entities: [ENTITY_NAME], bundleName: BUNDLE_NAME1 }, bundle.BundleFlag.GET_ABILITY_INFO_WITH_APPLICATION | bundle.BundleFlag.GET_ABILITY_INFO_SYSTEMAPP_ONLY, USERID).then(data => { @@ -40,8 +42,8 @@ describe('ActsBmsQueryAbilityByWant', function () { expect(err).assertEqual(1); }); bundle.queryAbilityByWant({ - action: ['action.system.home'], - entities: ['entity.system.home'], + action: [ACTION_NAME], + entities: [ENTITY_NAME], bundleName: BUNDLE_NAME1 }, bundle.BundleFlag.GET_ABILITY_INFO_WITH_APPLICATION | bundle.BundleFlag.GET_ABILITY_INFO_SYSTEMAPP_ONLY, USERID, (err, data) => { @@ -60,8 +62,8 @@ describe('ActsBmsQueryAbilityByWant', function () { it('bms_queryAbilityByWant_0200', 0, async function (done) { await bundle.queryAbilityByWant( { - action: ['action.system.home'], - entities: ['entity.system.home'] + action: [ACTION_NAME], + entities: [ENTITY_NAME] }, bundle.BundleFlag.GET_ABILITY_INFO_WITH_APPLICATION | bundle.BundleFlag.GET_ABILITY_INFO_SYSTEMAPP_ONLY, USERID).then(data => { @@ -75,8 +77,8 @@ describe('ActsBmsQueryAbilityByWant', function () { }); bundle.queryAbilityByWant( { - action: ['action.system.home'], - entities: ['entity.system.home'] + action: [ACTION_NAME], + entities: [ENTITY_NAME] }, bundle.BundleFlag.GET_ABILITY_INFO_WITH_APPLICATION | bundle.BundleFlag.GET_ABILITY_INFO_SYSTEMAPP_ONLY, USERID, (err, data) => { @@ -98,7 +100,7 @@ describe('ActsBmsQueryAbilityByWant', function () { */ it('bms_queryAbilityByEntities_0300', 0, async function (done) { let dataInfos = await bundle.queryAbilityByWant({ - action: 'action.system.home', + action: ACTION_NAME, entities: ["entity.app.music", "entity.app.email", "entity.app.contacts", @@ -117,7 +119,7 @@ describe('ActsBmsQueryAbilityByWant', function () { expect(dataInfos.length).assertEqual(1); cheackAbilityInfos(dataInfos[0]); bundle.queryAbilityByWant({ - action: 'action.system.home', + action: ACTION_NAME, entities: ["entity.app.music", "entity.app.email", "entity.app.contacts", diff --git a/appexecfwk/bundle_standard/bundlemanager/actsbmshapmoduletest/entry/src/main/js/test/ActsBmsHapModuleTest.test.js b/appexecfwk/bundle_standard/bundlemanager/actsbmshapmoduletest/entry/src/main/js/test/ActsBmsHapModuleTest.test.js index 793f8f556..1502384a5 100644 --- a/appexecfwk/bundle_standard/bundlemanager/actsbmshapmoduletest/entry/src/main/js/test/ActsBmsHapModuleTest.test.js +++ b/appexecfwk/bundle_standard/bundlemanager/actsbmshapmoduletest/entry/src/main/js/test/ActsBmsHapModuleTest.test.js @@ -23,6 +23,10 @@ const BUNDLE_NAME5 = 'com.example.system1'; const BUNDLE_NAME6 = "com.example.bmsmainabilitysecondscene"; const FIRSTMAINABILITY = 'com.example.bmsmainabilityfirstscene.MainAbility'; const SECONDMAINABILITY = 'com.example.bmsmainabilitysecondscene.MainAbility'; +const MODULE_NAME = 'entry'; +const ICON_PATH = "$media:icon"; +const LABEL = '$string:app_name'; +const DEVICE_TYPES = 'phone'; describe('ActsBmsHapModuleTest', function () { @@ -40,18 +44,18 @@ describe('ActsBmsHapModuleTest', function () { if (result.hapModuleInfos.length > 0) { let hapModuleInfo = result.hapModuleInfos[0]; expect(hapModuleInfo.name).assertEqual(BUNDLE_NAME1); - expect(hapModuleInfo.moduleName).assertEqual('entry'); + expect(hapModuleInfo.moduleName).assertEqual(MODULE_NAME); expect(hapModuleInfo.description).assertEqual(''); expect(hapModuleInfo.descriptionId).assertEqual(0); - expect(hapModuleInfo.iconPath).assertEqual("$media:icon"); + expect(hapModuleInfo.iconPath).assertEqual(ICON_PATH); expect(hapModuleInfo.icon).assertEqual(''); - expect(hapModuleInfo.label).assertEqual('$string:app_name'); + expect(hapModuleInfo.label).assertEqual(LABEL); expect(hapModuleInfo.labelId).assertEqual(0); expect(hapModuleInfo.iconId).assertEqual(0); expect(hapModuleInfo.backgroundImg).assertEqual(""); expect(hapModuleInfo.supportedModes).assertEqual(0); expect(hapModuleInfo.reqCapabilities.length).assertEqual(0); - expect(hapModuleInfo.deviceTypes[0]).assertEqual('phone'); + expect(hapModuleInfo.deviceTypes[0]).assertEqual(DEVICE_TYPES); expect(hapModuleInfo.mainAbilityName).assertEqual(FIRSTMAINABILITY); expect(hapModuleInfo.mainElementName).assertEqual(FIRSTMAINABILITY); expect(hapModuleInfo.abilityInfo.length).assertLarger(0); @@ -79,10 +83,10 @@ describe('ActsBmsHapModuleTest', function () { let hapModuleInfo1 = result.hapModuleInfos[1]; checkHapMoudleInfos(hapModuleInfo); checkHapMoudleInfos(hapModuleInfo1); - expect(hapModuleInfo.label).assertEqual('$string:app_name'); + expect(hapModuleInfo.label).assertEqual(LABEL); expect(hapModuleInfo.name).assertEqual(BUNDLE_NAME1); expect(hapModuleInfo1.name).assertEqual(BUNDLE_NAME6); - expect(hapModuleInfo.moduleName).assertEqual('entry'); + expect(hapModuleInfo.moduleName).assertEqual(MODULE_NAME); expect(hapModuleInfo.mainAbilityName).assertEqual(FIRSTMAINABILITY); expect(hapModuleInfo.mainElementName).assertEqual(FIRSTMAINABILITY); expect(hapModuleInfo1.moduleName).assertEqual('bmsmainabilitysecondscene'); @@ -106,18 +110,18 @@ describe('ActsBmsHapModuleTest', function () { if (result.hapModuleInfos.length > 0) { let hapModuleInfo = result.hapModuleInfos[0]; expect(hapModuleInfo.name).assertEqual(BUNDLE_NAME2); - expect(hapModuleInfo.moduleName).assertEqual('entry'); + expect(hapModuleInfo.moduleName).assertEqual(MODULE_NAME); expect(hapModuleInfo.description).assertEqual(''); expect(hapModuleInfo.descriptionId).assertEqual(0); - expect(hapModuleInfo.iconPath).assertEqual("$media:icon"); + expect(hapModuleInfo.iconPath).assertEqual(ICON_PATH); expect(hapModuleInfo.icon).assertEqual(''); - expect(hapModuleInfo.label).assertEqual('$string:app_name'); + expect(hapModuleInfo.label).assertEqual(LABEL); expect(hapModuleInfo.labelId).assertEqual(0); expect(hapModuleInfo.iconId).assertEqual(0); expect(hapModuleInfo.backgroundImg).assertEqual(""); expect(hapModuleInfo.supportedModes).assertEqual(0); expect(hapModuleInfo.reqCapabilities.length).assertEqual(0); - expect(hapModuleInfo.deviceTypes[0]).assertEqual('phone'); + expect(hapModuleInfo.deviceTypes[0]).assertEqual(DEVICE_TYPES); expect(hapModuleInfo.mainAbilityName).assertEqual(""); expect(hapModuleInfo.mainElementName).assertEqual(""); expect(hapModuleInfo.abilityInfo.length).assertLarger(0); @@ -143,18 +147,18 @@ describe('ActsBmsHapModuleTest', function () { if (result.hapModuleInfos.length == 1) { let hapModuleInfo = result.hapModuleInfos[0]; expect(hapModuleInfo.name).assertEqual(BUNDLE_NAME3); - expect(hapModuleInfo.moduleName).assertEqual('entry'); + expect(hapModuleInfo.moduleName).assertEqual(MODULE_NAME); expect(hapModuleInfo.description).assertEqual(''); expect(hapModuleInfo.descriptionId).assertEqual(0); - expect(hapModuleInfo.iconPath).assertEqual("$media:icon"); + expect(hapModuleInfo.iconPath).assertEqual(ICON_PATH); expect(hapModuleInfo.icon).assertEqual(''); - expect(hapModuleInfo.label).assertEqual('$string:app_name'); + expect(hapModuleInfo.label).assertEqual(LABEL); expect(hapModuleInfo.labelId).assertEqual(0); expect(hapModuleInfo.iconId).assertEqual(0); expect(hapModuleInfo.backgroundImg).assertEqual(""); expect(hapModuleInfo.supportedModes).assertEqual(0); expect(hapModuleInfo.reqCapabilities.length).assertEqual(0); - expect(hapModuleInfo.deviceTypes[0]).assertEqual('phone'); + expect(hapModuleInfo.deviceTypes[0]).assertEqual(DEVICE_TYPES); expect(hapModuleInfo.mainAbilityName).assertEqual("com.example.third5.AMainAbility"); expect(hapModuleInfo.mainElementName).assertEqual("com.example.third5.AMainAbility"); expect(hapModuleInfo.abilityInfo.length).assertLarger(0); @@ -181,18 +185,18 @@ describe('ActsBmsHapModuleTest', function () { if (data.hapModuleInfos.length == 1) { let hapModuleInfo = data.hapModuleInfos[0]; expect(hapModuleInfo.name).assertEqual(BUNDLE_NAME5); - expect(hapModuleInfo.moduleName).assertEqual('entry'); + expect(hapModuleInfo.moduleName).assertEqual(MODULE_NAME); expect(hapModuleInfo.description).assertEqual(''); expect(hapModuleInfo.descriptionId).assertEqual(0); - expect(hapModuleInfo.iconPath).assertEqual("$media:icon"); + expect(hapModuleInfo.iconPath).assertEqual(ICON_PATH); expect(hapModuleInfo.icon).assertEqual(''); - expect(hapModuleInfo.label).assertEqual('$string:app_name'); + expect(hapModuleInfo.label).assertEqual(LABEL); expect(hapModuleInfo.labelId).assertEqual(0); expect(hapModuleInfo.iconId).assertEqual(0); expect(hapModuleInfo.backgroundImg).assertEqual(""); expect(hapModuleInfo.supportedModes).assertEqual(0); expect(hapModuleInfo.reqCapabilities.length).assertEqual(0); - expect(hapModuleInfo.deviceTypes[0]).assertEqual('phone'); + expect(hapModuleInfo.deviceTypes[0]).assertEqual(DEVICE_TYPES); expect(hapModuleInfo.mainAbilityName).assertEqual("com.example.system1.MainAbility"); expect(hapModuleInfo.mainElementName).assertEqual("com.example.system1.MainAbility"); expect(hapModuleInfo.abilityInfo.length).assertLarger(0); @@ -208,14 +212,14 @@ describe('ActsBmsHapModuleTest', function () { function checkHapMoudleInfos(info) { expect(info.description).assertEqual(''); expect(info.descriptionId).assertEqual(0); - expect(info.iconPath).assertEqual("$media:icon"); + expect(info.iconPath).assertEqual(ICON_PATH); expect(info.icon).assertEqual(''); expect(info.labelId).assertEqual(0); expect(info.iconId).assertEqual(0); expect(info.backgroundImg).assertEqual(""); expect(info.supportedModes).assertEqual(0); expect(info.reqCapabilities.length).assertEqual(0); - expect(info.deviceTypes[0]).assertEqual('phone'); + expect(info.deviceTypes[0]).assertEqual(DEVICE_TYPES); expect(info.abilityInfo.length).assertLarger(0); expect(info.colorMode).assertEqual(-1); expect(info.extensionAbilityInfo.length).assertEqual(0); diff --git a/appexecfwk/bundle_standard/bundlemanager/actsbundlemanageretstest/Test.json b/appexecfwk/bundle_standard/bundlemanager/actsbundlemanageretstest/Test.json index 43f0abe6f..56ad127d8 100644 --- a/appexecfwk/bundle_standard/bundlemanager/actsbundlemanageretstest/Test.json +++ b/appexecfwk/bundle_standard/bundlemanager/actsbundlemanageretstest/Test.json @@ -27,7 +27,8 @@ "push":[ "bmsThirdBundleTest1.hap -> /data/bmsThirdBundleTest1.hap ", "first_right.hap -> /data/test/first_right.hap", - "second_right.hap -> /data/second_right.hap" + "second_right.hap -> /data/second_right.hap", + "bmsStageDemo1.hap -> /data/test/bmsStageDemo1.hap" ] }, { @@ -35,7 +36,8 @@ "run-command": [ "bm install -p /data/bmsThirdBundleTest1.hap", "bm install -p /data/test/first_right.hap", - "bm install -p /data/second_right.hap" + "bm install -p /data/second_right.hap", + "bm install -p /data/test/bmsStageDemo1.hap" ], "teardown-command":[ "bm uninstall -n com.example.third1", diff --git a/appexecfwk/bundle_standard/bundlemanager/actsbundlemanageretstest/entry/src/main/ets/test/List.test.ets b/appexecfwk/bundle_standard/bundlemanager/actsbundlemanageretstest/entry/src/main/ets/test/List.test.ets index 0d567bdf1..04b6fa437 100644 --- a/appexecfwk/bundle_standard/bundlemanager/actsbundlemanageretstest/entry/src/main/ets/test/List.test.ets +++ b/appexecfwk/bundle_standard/bundlemanager/actsbundlemanageretstest/entry/src/main/ets/test/List.test.ets @@ -21,8 +21,10 @@ import isAbilityEnableETSUnit from "./IsAbilityEnabledETSUnit.ets"; import isApplicationEnabledETSUnit from "./IsApplicationEnabledETSUnit.ets"; import getAbilityIcon from "./GetAbilityIcon.test.ets"; import getNameForUid from "./GetNameForUid.test.ets"; +import queryExtensionAbilityInfos from "./QueryExtensionAbilityInfos.test.ets"; export default function testsuite() { + queryExtensionAbilityInfos(); getAbilityIcon(); getLaunchWantForBundle(); getNameForUid(); diff --git a/appexecfwk/bundle_standard/bundlemanager/actsbundlemanageretstest/entry/src/main/ets/test/QueryExtensionAbilityInfos.test.ets b/appexecfwk/bundle_standard/bundlemanager/actsbundlemanageretstest/entry/src/main/ets/test/QueryExtensionAbilityInfos.test.ets new file mode 100644 index 000000000..5a27e61c8 --- /dev/null +++ b/appexecfwk/bundle_standard/bundlemanager/actsbundlemanageretstest/entry/src/main/ets/test/QueryExtensionAbilityInfos.test.ets @@ -0,0 +1,404 @@ +/** + * 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 bundle from '@ohos.bundle' +import { describe, it, expect } from 'hypium/index'; + +const BUNDLE_NAME1 = "ohos.acts.bundle.stage"; +const BUNDLE_NAME2 = "com.noexit.com"; +const ABILITY_NAME1 = "ExtensionAbility1"; +const ABILITY_NAME2 = "noexitAbility"; + +export default function QueryExtensionAbilityInfos() { + + describe('QueryExtensionAbilityInfos', function () { + + /* + * @tc.number: SUB_BMS_APPINFO_EXTENSION_0001 + * @tc.name: test queryExtensionAbilityInfos api + * @tc.desc: test queryExtensionAbilityInfos with invalid userId + */ + it('SUB_BMS_APPINFO_EXTENSION_0001', 0, async function (done) { + await bundle.queryExtensionAbilityInfos( + { + "bundleName": BUNDLE_NAME1, + "abilityName": ABILITY_NAME1 + }, bundle.ExtensionAbilityType.FORM, bundle.ExtensionFlag.GET_EXTENSION_INFO_DEFAULT, 1001).then(data => { + expect(data).assertFail(); + }).catch(err => { + expect(err).assertEqual(1); + }); + bundle.queryExtensionAbilityInfos( + { + "bundleName": BUNDLE_NAME1, + "abilityName": ABILITY_NAME1 + }, bundle.ExtensionAbilityType.FORM, bundle.ExtensionFlag.GET_EXTENSION_INFO_DEFAULT, 1001, (err, data) => { + if (err) { + expect(err).assertEqual(1); + done(); + return; + } + expect(data).assertFail(); + done(); + }) + }) + + /* + * @tc.number: SUB_BMS_APPINFO_EXTENSION_0002 + * @tc.name: test queryExtensionAbilityInfos api + * @tc.desc: test queryExtensionAbilityInfos get permissions flag + */ + it('SUB_BMS_APPINFO_EXTENSION_0002', 0, async function (done) { + await bundle.queryExtensionAbilityInfos({ + "bundleName": BUNDLE_NAME1, + "abilityName": ABILITY_NAME1 + }, bundle.ExtensionAbilityType.FORM, bundle.ExtensionFlag.GET_EXTENSION_INFO_WITH_PERMISSION, 100).then(data => { + expect(data[0].bundleName).assertEqual("ohos.acts.bundle.stage"); + expect(data[0].moduleName).assertEqual("phone"); + expect(data[0].name).assertEqual("ExtensionAbility1"); + expect(data[0].labelId).assertLarger(0); + expect(data[0].descriptionId).assertLarger(0); + expect(data[0].iconId).assertEqual(0); + expect(data[0].isVisible).assertFalse(); + expect(data[0].extensionAbilityType).assertEqual(0); + expect(data[0].permissions[0]).assertEqual("ohos.permission.GET_BUNDLE_INFO"); + expect(data[0].enabled).assertTrue(); + expect(data[0].readPermission).assertEqual(""); + expect(data[0].writePermission).assertEqual(""); + expect(data[0].metadata.length).assertEqual(0); + }).catch(err => { + expect(err).assertEqual(1); + }); + bundle.queryExtensionAbilityInfos({ + "bundleName": BUNDLE_NAME1, + "abilityName": ABILITY_NAME1 + }, bundle.ExtensionAbilityType.FORM, bundle.ExtensionFlag.GET_EXTENSION_INFO_WITH_PERMISSION, 100, (err, data) => { + if (err) { + expect(err).assertEqual(1); + done(); + return; + } + expect(data[0].bundleName).assertEqual("ohos.acts.bundle.stage"); + expect(data[0].moduleName).assertEqual("phone"); + expect(data[0].name).assertEqual("ExtensionAbility1"); + expect(data[0].labelId).assertLarger(0); + expect(data[0].descriptionId).assertLarger(0); + expect(data[0].iconId).assertEqual(0); + expect(data[0].isVisible).assertFalse(); + expect(data[0].extensionAbilityType).assertEqual(0); + expect(data[0].permissions[0]).assertEqual("ohos.permission.GET_BUNDLE_INFO"); + expect(data[0].enabled).assertTrue(); + expect(data[0].readPermission).assertEqual(""); + expect(data[0].writePermission).assertEqual(""); + expect(data[0].metadata.length).assertEqual(0); + done(); + }) + }) + + /* + * @tc.number: SUB_BMS_APPINFO_EXTENSION_0003 + * @tc.name: test queryExtensionAbilityInfos api + * @tc.desc: test queryExtensionAbilityInfos with default flag + */ + + it('SUB_BMS_APPINFO_EXTENSION_0003', 0, async function (done) { + await bundle.queryExtensionAbilityInfos( + { + "bundleName": BUNDLE_NAME1, + "abilityName": ABILITY_NAME1 + }, bundle.ExtensionAbilityType.FORM, bundle.ExtensionFlag.GET_EXTENSION_INFO_DEFAULT, + 100).then(data => { + expect(data[0].bundleName).assertEqual("ohos.acts.bundle.stage"); + expect(data[0].moduleName).assertEqual("phone"); + expect(data[0].name).assertEqual("ExtensionAbility1"); + expect(data[0].labelId).assertLarger(0); + expect(data[0].descriptionId).assertLarger(0); + expect(data[0].iconId).assertEqual(0); + expect(data[0].isVisible).assertFalse(); + expect(data[0].extensionAbilityType).assertEqual(0); + expect(data[0].permissions.length).assertEqual(0); + expect(data[0].enabled).assertTrue(); + expect(data[0].readPermission).assertEqual(""); + expect(data[0].writePermission).assertEqual(""); + expect(data[0].metadata.length).assertEqual(0); + }).catch(err => { + expect(err).assertEqual(1); + }); + bundle.queryExtensionAbilityInfos( + { + "bundleName": BUNDLE_NAME1, + "abilityName": ABILITY_NAME1 + }, bundle.ExtensionAbilityType.FORM, bundle.ExtensionFlag.GET_EXTENSION_INFO_DEFAULT, + 100, (err, data) => { + if (err) { + expect(err).assertEqual(1); + done(); + return; + } + expect(data[0].bundleName).assertEqual("ohos.acts.bundle.stage"); + expect(data[0].moduleName).assertEqual("phone"); + expect(data[0].name).assertEqual("ExtensionAbility1"); + expect(data[0].labelId).assertLarger(0); + expect(data[0].descriptionId).assertLarger(0); + expect(data[0].iconId).assertEqual(0); + expect(data[0].isVisible).assertFalse(); + expect(data[0].extensionAbilityType).assertEqual(0); + expect(data[0].permissions.length).assertEqual(0); + expect(data[0].enabled).assertTrue(); + expect(data[0].readPermission).assertEqual(""); + expect(data[0].writePermission).assertEqual(""); + expect(data[0].metadata.length).assertEqual(0); + done(); + }) + }) + + /* + * @tc.number: SUB_BMS_APPINFO_EXTENSION_0004 + * @tc.name: test queryExtensionAbilityInfos api + * @tc.desc: test queryExtensionAbilityInfos with get application flag + */ + + it('SUB_BMS_APPINFO_EXTENSION_0004', 0, async function (done) { + await bundle.queryExtensionAbilityInfos({ + "bundleName": BUNDLE_NAME1, + "abilityName": ABILITY_NAME1 + }, bundle.ExtensionAbilityType.FORM, bundle.ExtensionFlag.GET_EXTENSION_INFO_WITH_APPLICATION, + 100).then(data => { + expect(data[0].bundleName).assertEqual("ohos.acts.bundle.stage"); + expect(data[0].moduleName).assertEqual("phone"); + expect(data[0].name).assertEqual("ExtensionAbility1"); + expect(data[0].labelId).assertLarger(0); + expect(data[0].descriptionId).assertLarger(0); + expect(data[0].iconId).assertEqual(0); + expect(data[0].isVisible).assertFalse(); + expect(data[0].extensionAbilityType).assertEqual(0); + expect(data[0].permissions.length).assertEqual(0); + expect(data[0].enabled).assertTrue(); + expect(data[0].readPermission).assertEqual(""); + expect(data[0].writePermission).assertEqual(""); + expect(data[0].metadata.length).assertEqual(0); + checkApplication(data); + }).catch(err => { + expect(err).assertFail(); + }); + bundle.queryExtensionAbilityInfos({ + "bundleName": BUNDLE_NAME1, + "abilityName": ABILITY_NAME1 + }, bundle.ExtensionAbilityType.FORM, bundle.ExtensionFlag.GET_EXTENSION_INFO_WITH_APPLICATION, + 100, (err, data) => { + if (err) { + expect(err).assertFail(); + done(); + return; + } + expect(data[0].bundleName).assertEqual("ohos.acts.bundle.stage"); + expect(data[0].moduleName).assertEqual("phone"); + expect(data[0].name).assertEqual("ExtensionAbility1"); + expect(data[0].labelId).assertLarger(0); + expect(data[0].descriptionId).assertLarger(0); + expect(data[0].iconId).assertEqual(0); + expect(data[0].isVisible).assertFalse(); + expect(data[0].extensionAbilityType).assertEqual(0); + expect(data[0].permissions.length).assertEqual(0); + expect(data[0].enabled).assertTrue(); + expect(data[0].readPermission).assertEqual(""); + expect(data[0].writePermission).assertEqual(""); + expect(data[0].metadata.length).assertEqual(0); + checkApplication(data); + done(); + }) + }) + + /* + * @tc.number: SUB_BMS_APPINFO_EXTENSION_0005 + * @tc.name: test queryExtensionAbilityInfos api + * @tc.desc: test queryExtensionAbilityInfos with invalid bundleName + */ + it('SUB_BMS_APPINFO_EXTENSION_0005', 0, async function (done) { + await bundle.queryExtensionAbilityInfos( + { + "bundleName": BUNDLE_NAME2, + "abilityName": ABILITY_NAME1 + }, bundle.ExtensionAbilityType.FORM, bundle.ExtensionFlag.GET_EXTENSION_INFO_DEFAULT, 100).then(data => { + expect(data).assertFail(); + }).catch(err => { + expect(err).assertEqual(1); + }); + bundle.queryExtensionAbilityInfos( + { + "bundleName": BUNDLE_NAME2, + "abilityName": ABILITY_NAME1 + }, bundle.ExtensionAbilityType.FORM, bundle.ExtensionFlag.GET_EXTENSION_INFO_DEFAULT, 100, (err, data) => { + if (err) { + expect(err).assertEqual(1); + done(); + return; + } + expect(data).assertFail(); + done(); + }) + }) + + /* + * @tc.number: SUB_BMS_APPINFO_EXTENSION_0006 + * @tc.name: test queryExtensionAbilityInfos api + * @tc.desc: test queryExtensionAbilityInfos with invalid abilityName + */ + it('SUB_BMS_APPINFO_EXTENSION_0006', 0, async function (done) { + await bundle.queryExtensionAbilityInfos( + { + "bundleName": BUNDLE_NAME1, + "abilityName": ABILITY_NAME2 + }, bundle.ExtensionAbilityType.FORM, bundle.ExtensionFlag.GET_EXTENSION_INFO_DEFAULT, 100).then(data => { + expect(data).assertFail(); + }).catch(err => { + expect(err).assertEqual(1); + }); + bundle.queryExtensionAbilityInfos( + { + "bundleName": BUNDLE_NAME1, + "abilityName": ABILITY_NAME2 + }, bundle.ExtensionAbilityType.FORM, bundle.ExtensionFlag.GET_EXTENSION_INFO_DEFAULT, 100, (err, data) => { + if (err) { + expect(err).assertEqual(1); + done(); + return; + } + expect(data).assertFail(); + done(); + }) + }) + + /* + * @tc.number: SUB_BMS_APPINFO_EXTENSION_0007 + * @tc.name: test queryExtensionAbilityInfos api + * @tc.desc: test queryExtensionAbilityInfos with invalid param + */ + it('SUB_BMS_APPINFO_EXTENSION_0007', 0, async function (done) { + await bundle.queryExtensionAbilityInfos( + { + "bundleName": BUNDLE_NAME1, + "abilityName": ABILITY_NAME1 + }, bundle.ExtensionAbilityType.FORM, null, 100).then(data => { + expect(data).assertFail(); + }).catch(err => { + expect(err).assertEqual(1); + }); + await bundle.queryExtensionAbilityInfos( + { + "bundleName": BUNDLE_NAME1, + "abilityName": ABILITY_NAME1 + }, bundle.ExtensionAbilityType.FORM, bundle.ExtensionFlag.GET_EXTENSION_INFO_DEFAULT, null).then(data => { + expect(data).assertFail(); + }).catch(err => { + expect(err).assertEqual(1); + }); + bundle.queryExtensionAbilityInfos( + { + "bundleName": BUNDLE_NAME1, + "abilityName": ABILITY_NAME1 + }, bundle.ExtensionAbilityType.FORM, null, 100, (err, data) => { + expect(err).assertEqual(1); + expect(data).assertEqual("type mismatch"); + done(); + }) + }) + + /* + * @tc.number: SUB_BMS_APPINFO_EXTENSION_0008 + * @tc.name: test queryExtensionAbilityInfos api + * @tc.desc: test queryExtensionAbilityInfos with get metaData flag and no userId + */ + it('SUB_BMS_APPINFO_EXTENSION_0008', 0, async function (done) { + await bundle.queryExtensionAbilityInfos({ + "bundleName": BUNDLE_NAME1, + "abilityName": ABILITY_NAME1 + }, bundle.ExtensionAbilityType.FORM, bundle.ExtensionFlag.GET_EXTENSION_INFO_WITH_METADATA).then(data => { + expect(data[0].bundleName).assertEqual("ohos.acts.bundle.stage"); + expect(data[0].moduleName).assertEqual("phone"); + expect(data[0].name).assertEqual("ExtensionAbility1"); + expect(data[0].labelId).assertLarger(0); + expect(data[0].descriptionId).assertLarger(0); + expect(data[0].iconId).assertEqual(0); + expect(data[0].isVisible).assertFalse(); + expect(data[0].extensionAbilityType).assertEqual(0); + expect(data[0].permissions.length).assertEqual(0); + expect(data[0].enabled).assertTrue(); + expect(data[0].readPermission).assertEqual(""); + expect(data[0].writePermission).assertEqual(""); + expect(data[0].metadata[0].name).assertEqual("ohos.extension.form"); + expect(data[0].metadata[0].value).assertEqual(""); + expect(data[0].metadata[0].resource).assertEqual("$profile:form_config"); + }).catch(err => { + expect(err).assertFail(); + }); + bundle.queryExtensionAbilityInfos({ + "bundleName": BUNDLE_NAME1, + "abilityName": ABILITY_NAME1 + }, bundle.ExtensionAbilityType.FORM, bundle.ExtensionFlag.GET_EXTENSION_INFO_WITH_METADATA, (err, data) => { + if (err) { + expect(err).assertFail(); + done(); + return; + } + expect(data[0].bundleName).assertEqual("ohos.acts.bundle.stage"); + expect(data[0].moduleName).assertEqual("phone"); + expect(data[0].name).assertEqual("ExtensionAbility1"); + expect(data[0].labelId).assertLarger(0); + expect(data[0].descriptionId).assertLarger(0); + expect(data[0].iconId).assertEqual(0); + expect(data[0].isVisible).assertFalse(); + expect(data[0].extensionAbilityType).assertEqual(0); + expect(data[0].permissions.length).assertEqual(0); + expect(data[0].enabled).assertTrue(); + expect(data[0].readPermission).assertEqual(""); + expect(data[0].writePermission).assertEqual(""); + expect(data[0].metadata[0].name).assertEqual("ohos.extension.form"); + expect(data[0].metadata[0].value).assertEqual(""); + expect(data[0].metadata[0].resource).assertEqual("$profile:form_config"); + done(); + }) + }) + + function checkApplication(data) { + expect(data[0].applicationInfo.name).assertEqual("ohos.acts.bundle.stage"); + expect(data[0].applicationInfo.codePath).assertEqual("/data/app/el1/bundle/public/ohos.acts.bundle.stage"); + expect(data[0].applicationInfo.accessTokenId).assertLarger(0); + expect(data[0].applicationInfo.description).assertEqual("$string:description_application"); + expect(data[0].applicationInfo.descriptionId).assertLarger(0); + expect(data[0].applicationInfo.icon).assertEqual("$media:icon"); + expect(data[0].applicationInfo.iconId).assertLarger(0); + expect(data[0].applicationInfo.label).assertEqual("$string:app_name"); + expect(data[0].applicationInfo.labelId).assertLarger(0); + expect(data[0].applicationInfo.systemApp).assertTrue(); + expect(data[0].applicationInfo.supportedModes).assertEqual(0); + expect(data[0].applicationInfo.process).assertEqual(""); + expect(data[0].applicationInfo.entryDir).assertEqual("/data/app/el1/bundle/public/ohos.acts.bundle.stage/phone"); + expect(data[0].applicationInfo.permissions.length).assertEqual(0); + expect(data[0].applicationInfo.moduleSourceDirs[0]).assertEqual("/data/app/el1/bundle/public/ohos.acts.bundle.stage/phone"); + expect(data[0].applicationInfo.moduleInfos[0].moduleName).assertEqual("phone"); + expect(data[0].applicationInfo.moduleInfos[0].moduleSourceDir).assertEqual("/data/app/el1/bundle/public/ohos.acts.bundle.stage/phone"); + expect(JSON.stringify(data[0].applicationInfo.metaData)).assertEqual("{}"); + expect(JSON.stringify(data[0].applicationInfo.metadata)).assertEqual("{}"); + expect(data[0].applicationInfo.enabled).assertTrue(); + expect(data[0].applicationInfo.flags).assertEqual(0); + expect(data[0].applicationInfo.uid).assertLarger(0); + expect(data[0].applicationInfo.entityType).assertEqual("unspecified"); + expect(data[0].applicationInfo.removable).assertTrue(); + expect(data[0].applicationInfo.fingerprint).assertEqual(""); + } + + }) +} diff --git a/appexecfwk/bundle_standard/bundlemanager/actsbundlemanageretstest/entry/src/main/ets/test/getApplicationInfoJsunit.test.ets b/appexecfwk/bundle_standard/bundlemanager/actsbundlemanageretstest/entry/src/main/ets/test/getApplicationInfoJsunit.test.ets index 1a913d9ac..3c2e73bf0 100644 --- a/appexecfwk/bundle_standard/bundlemanager/actsbundlemanageretstest/entry/src/main/ets/test/getApplicationInfoJsunit.test.ets +++ b/appexecfwk/bundle_standard/bundlemanager/actsbundlemanageretstest/entry/src/main/ets/test/getApplicationInfoJsunit.test.ets @@ -33,7 +33,7 @@ const BUNDLE_NAME = 'com.open.harmony.packagemag'; const BUNDLE_NAME_OTHER = 'com.ohos.acepackage'; const USER_ID_100 = 100; -export default function applicationBundleJsunit() { +export default function getApplicationInfoJsunit() { describe('appInfoTest', function () { diff --git a/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/AppScope/app.json b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/AppScope/app.json new file mode 100644 index 000000000..3c2c2b076 --- /dev/null +++ b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/AppScope/app.json @@ -0,0 +1,21 @@ +{ + "app":{ + "bundleName":"ohos.acts.bundle.stage", + "vendor":"huawei", + "versionCode":1000000, + "versionName":"1.0.0", + "debug":false, + "icon":"$media:icon", + "label":"$string:app_name", + "description":"$string:description_application", + "distributedNotificationEnabled":true, + "keepAlive":true, + "singleUser":true, + "minAPIVersion":8, + "targetAPIVersion":8, + "car":{ + "apiCompatibleVersion":8, + "singleUser":false + } + } +} diff --git a/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/AppScope/resources/base/element/string.json b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/AppScope/resources/base/element/string.json new file mode 100644 index 000000000..ee69f9a86 --- /dev/null +++ b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/AppScope/resources/base/element/string.json @@ -0,0 +1,8 @@ +{ + "string":[ + { + "name":"app_name", + "value":"ohosProject" + } + ] +} \ No newline at end of file diff --git a/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/BUILD.gn b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/BUILD.gn new file mode 100644 index 000000000..d5a079d99 --- /dev/null +++ b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/BUILD.gn @@ -0,0 +1,41 @@ +# 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("bmsStageDemo1") { + hap_profile = "entry/src/main/module.json" + deps = [ + ":bmsstagedemoone_js_assets", + ":bmsstagedemoone_resources", + ] + ets2abc = true + certificate_profile = "signature/openharmony_sx.p7b" + hap_name = "bmsStageDemo1" + testonly = true +} + +ohos_app_scope("bmsstagedemoone_app_profile") { + app_profile = "AppScope/app.json" + sources = [ "AppScope/resources" ] +} + +ohos_js_assets("bmsstagedemoone_js_assets") { + source_dir = "entry/src/main/ets" +} + +ohos_resources("bmsstagedemoone_resources") { + sources = [ "entry/src/main/resources" ] + deps = [ ":bmsstagedemoone_app_profile" ] + hap_profile = "entry/src/main/module.json" +} diff --git a/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/Test.json b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/Test.json new file mode 100644 index 000000000..26909f288 --- /dev/null +++ b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/Test.json @@ -0,0 +1,4 @@ +{ + "description": "Configuration for hjunit demo Tests", +} + diff --git a/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/Application/AbilityStage.ts b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/Application/AbilityStage.ts new file mode 100644 index 000000000..51cb02ba3 --- /dev/null +++ b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/Application/AbilityStage.ts @@ -0,0 +1,9 @@ +import AbilityStage from "@ohos.application.AbilityStage" + +export default class MyAbilityStage extends AbilityStage { + onCreate() { + console.log("[Demo] MyAbilityStage onCreate") + globalThis.stageOnCreateRun = 1; + globalThis.stageContext = this.context; + } +} diff --git a/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/FormAbility/FormAbility.ts b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/FormAbility/FormAbility.ts new file mode 100644 index 000000000..2f94ce176 --- /dev/null +++ b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/FormAbility/FormAbility.ts @@ -0,0 +1,37 @@ +import FormExtension from '@ohos.application.FormExtension'; +import formBindingData from '@ohos.application.formBindingData'; +import formInfo from '@ohos.application.formInfo'; + +export default class FormAbility extends FormExtension { + onCreate(want) { + // Called to return a FormBindingData object. + let formData = {}; + return formBindingData.createFormBindingData(formData); + } + + onCastToNormal(formId) { + // Called when the form provider is notified that a temporary form is successfully + // converted to a normal form. + } + + onUpdate(formId) { + // Called to notify the form provider to update a specified form. + } + + onVisibilityChange(newStatus) { + // Called when the form provider receives form events from the system. + } + + onEvent(formId, message) { + // Called when a specified message event defined by the form provider is triggered. + } + + onDestroy(formId) { + // Called to notify the form provider that a specified form has been destroyed. + } + + onAcquireFormState(want) { + // Called to return a {@link FormState} object. + return formInfo.FormState.READY; + } +}; \ No newline at end of file diff --git a/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/MainAbility/MainAbility.ts b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/MainAbility/MainAbility.ts new file mode 100644 index 000000000..2f9d6d1f2 --- /dev/null +++ b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/MainAbility/MainAbility.ts @@ -0,0 +1,36 @@ +import Ability from '@ohos.application.Ability' + +export default class MainAbility extends Ability { + onCreate(want,launchParam){ + // Ability is creating, initialize resources for this ability + console.log("[Demo] MainAbility onCreate") + globalThis.abilityWant = want; + } + + onDestroy() { + // Ability is destroying, release resources for this ability + console.log("[Demo] MainAbility onDestroy") + } + + onWindowStageCreate(windowStage) { + // Main window is created, set main page for this ability + console.log("[Demo] MainAbility onWindowStageCreate") + globalThis.abilityContext = this.context + windowStage.setUIContent(this.context, "pages/index/index", null) + } + + onWindowStageDestroy() { + //Main window is destroyed, release UI related resources + console.log("[Demo] MainAbility onWindowStageDestroy") + } + + onForeground() { + // Ability has brought to foreground + console.log("[Demo] MainAbility onForeground") + } + + onBackground() { + // Ability has back to background + console.log("[Demo] MainAbility onBackground") + } +}; \ No newline at end of file diff --git a/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/pages/index/index.ets b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/pages/index/index.ets new file mode 100644 index 000000000..7974e5d93 --- /dev/null +++ b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/pages/index/index.ets @@ -0,0 +1,66 @@ +/* + * 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, InstrumentLog, ReportExtend} from "deccjsunit/index.ets" +import testsuite from "../../test/List.test.ets" + + +@Entry +@Component +struct Index { + + aboutToAppear(){ + console.info("start run testcase!!!!") + const core = Core.getInstance() + const expectExtend = new ExpectExtend({ + 'id': 'extend' + }) + core.addService('expect', expectExtend) + const reportExtend = new ReportExtend(file) + + core.addService('report', reportExtend) + core.init() + core.subscribeEvent('task', reportExtend) + const configService = core.getDefaultService('config') + console.info('parameters---->' + JSON.stringify(globalThis.abilityWant.parameters)) + globalThis.abilityWant.parameters.timeout = 70000; + configService.setConfig(globalThis.abilityWant.parameters) + testsuite(globalThis.abilityContext) + core.execute() + } + + build() { + Flex({ direction:FlexDirection.Column, alignItems:ItemAlign.Center, justifyContent: FlexAlign.Center }) { + Text('Hello World') + .fontSize(50) + .fontWeight(FontWeight.Bold) + Button() { + Text('next page') + .fontSize(25) + .fontWeight(FontWeight.Bold) + }.type(ButtonType.Capsule) + .margin({ + top: 20 + }) + .backgroundColor('#0D9FFB') + .onClick(() => { + + }) + } + .width('100%') + .height('100%') + } +} \ No newline at end of file diff --git a/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/pages/second/second.ets b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/pages/second/second.ets new file mode 100644 index 000000000..1c1c727ff --- /dev/null +++ b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/pages/second/second.ets @@ -0,0 +1,43 @@ +/* + * 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 router from '@system.router'; + +@Entry +@Component +struct Second { + private content: string = "Second Page" + + build() { + Flex({ direction: FlexDirection.Column,alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) { + Text(`${this.content}`) + .fontSize(50) + .fontWeight(FontWeight.Bold) + Button() { + Text('back to index') + .fontSize(20) + .fontWeight(FontWeight.Bold) + }.type(ButtonType.Capsule) + .margin({ + top: 20 + }) + .backgroundColor('#0D9FFB') + .onClick(() => { + router.back() + }) + } + .width('100%') + .height('100%') + } +} \ No newline at end of file diff --git a/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/test/List.test.ets b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/test/List.test.ets new file mode 100644 index 000000000..193419242 --- /dev/null +++ b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/ets/test/List.test.ets @@ -0,0 +1,20 @@ +/* + * 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 function testsuite(context) { + + +} \ No newline at end of file diff --git a/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/module.json b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/module.json new file mode 100644 index 000000000..2cb80f071 --- /dev/null +++ b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/module.json @@ -0,0 +1,68 @@ +{ + "module": { + "name": "phone", + "type": "entry", + "srcEntrance": "./ets/Application/AbilityStage.ts", + "description": "$string:phone_entry_dsc", + "mainElement": "MainAbility", + "deviceTypes": [ + "phone" + ], + "deliveryWithInstall": true, + "installationFree": false, + "uiSyntax": "ets", + "pages": "$profile:main_pages", + "abilities": [ + { + "name": "ohos.acts.bundle.stage.MainAbility", + "srcEntrance": "./ets/MainAbility/MainAbility.ts", + "description": "$string:phone_entry_main", + "icon": "$media:icon", + "label": "$string:entry_label", + "orientation": "portrait", + "visible": true, + "skills": [ + { + "actions": [ + "action.system.home" + ], + "entities":[ + "entity.system.home" + ] + } + ] + } + ], + "extensionAbilities": [ + { + "name": "FormAbility", + "srcEntrance": "./ets/FormAbility/FormAbility.ts", + "label": "$string:form_FormAbility_label", + "description": "$string:form_FormAbility_desc", + "type": "form", + "metadata": [ + { + "name": "ohos.extension.form", + "resource": "$profile:form_config" + } + ], + "permissions": ["ohos.permission.GET_BUNDLE_INFO"] + }, + { + "name": "ExtensionAbility1", + "srcEntrance": "./ets/FormAbility/FormAbility.ts", + "label": "$string:form_FormAbility_label", + "description": "$string:form_FormAbility_desc", + "type": "form", + "metadata": [ + { + "name": "ohos.extension.form", + "resource": "$profile:form_config" + } + ], + "permissions": ["ohos.permission.GET_BUNDLE_INFO"] + } + ] + + } +} diff --git a/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/resources/base/element/string.json b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/resources/base/element/string.json new file mode 100644 index 000000000..c9962d9e0 --- /dev/null +++ b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/resources/base/element/string.json @@ -0,0 +1,40 @@ +{ + "string": [ + { + "name": "phone_entry_dsc", + "value": "i am an entry for phone" + }, + { + "name": "phone_entry_main", + "value": "the phone entry ability" + }, + { + "name": "entry_label", + "value": "ActsContextTest" + }, + { + "name": "form_description", + "value": "my form" + }, + { + "name": "serviceability_description", + "value": "my whether" + }, + { + "name": "description_application", + "value": "demo for test" + }, + { + "name": "app_name", + "value": "Demo" + }, + { + "name": "form_FormAbility_desc", + "value": "form_description" + }, + { + "name": "form_FormAbility_label", + "value": "form_label" + } + ] +} diff --git a/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/resources/base/media/icon.png b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..474a55588fd7216113dd42073aadf254d4dba023 GIT binary patch literal 15458 zcmV-oJe|XdP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!~g&e!~vBn4jTXfJNHRMK~#8N)t$?W zZ`*d)f6uD@IOn2&LJ;lP6@!gHh#>Y1!r&0HL_gDqb&`3X(Z=GaQp8SP` z92In5!tr>lHv4nxKS1{J@p1P!+F4$_JksuYcRrnVr_*tFKEi|jF}%m8r`_Y_l6p^% z@+LnCznqL`mDBrry9$FzRWuxkQF=}GpwhbiR|yW zmfjQNx4tFelhpeM=s1qPZ}7VBtuHUqIh+_+IvN7$>(jXIa?55SEAd6rfw_FG^Ciq> zUAOb*d;6XH7UwzzrTnE1QtLJmPK4||=GS#JMbf8dX;2o^T+5qYx7QF%t86tY^M!6V zrngTY z1udv}ju^g5nNRXGgh*Bp3Mrd$sWa|p#az3e^Glh~4OYDwx?a*KW72*IFc`5a72{iM zp*N~%>#A7GyQ5CGc@5sreOI4Vr-jh46-ty$UgtlNS4u^>BKcJpW(i@*S9!$UCqmcd z(U6LQxPK-@LYcI@ROQlUqYfv9)@pP1D z^PGd_#Bn=j?h;(A2YP*^zO{q!-impmO*sshM)pxC{aRnxpLI$OVz(ElViw;?d~N$q$^VbIP>sa0q0)N~6iq!!fI>IcRGDdADCq?$^K61=g>C{IY# z;~=ksR37V9Yzp%@sRJ8ebxt7()agtNj zFX-#JY(~NHNecrS7DT}|J>yQfr$J*Ww>;PMMSj|?ifs>m;mOpS;hB2QJtAw(Aw2S_ zSHe`NtQeUBZN(O=rgRoV{J5F+Ft*YQkw zwtwkXsI}a&=y|SSZxEX3H8VG5pvDb*DypGrx7RHOJ0i^ra2-P!NRFO4D{+Ry>|JXL zGjQaB$9omq%IUE9OgQbqtQMtUxwo448OTeE6JEO(GROhuciWZ5BouJ*L~LTeo;4dtD1t#pnhtSi{UW~!N8lsnLV4AB&!P?*BYDt{H& z%&bDsz7IE15kl1~PvI`8P44N?xzRmdc}}725-w90Fdv0S!A0anyY|dSG}_^L&))LF zz4K+fI-yqH>N0 zgo)+iY3)b8AJt+2Z>KNwTQ-d?GjYyuI%!>DNlTFvDiBBa$CrlyNy#r_Sho8!34uL# zRbE+7I??*TrZGd;$+f!%8_B1Sc*Ia#=XozCRDucxF$H^&J+EfrLzkl0 z&Y3P^^vbm_^GJtcTe;>pe{n4!{EtOfLyv17pOHk&6d)QY28Om{l|N|LJYM(9dcX=m z(`(v2zJ^0${=gPYRc@u!raOd&0;{ZWR``si^fg~l4oL?SD>EgWzMqA-<`?rq(W^EZ zVWn$bq5GX_&GgJOY`!oa&@zRZ&4hiDHmw<(Mk_N)4(+wilna`8P6Sjw)OS?{y0(N(0*);t@8SAl~B`A^+@J zV1RVu>FKY$>KaP3uj?dg$oKga*<{6RD1b)fODgTiZOJR>{Kkeu4uk2y#e!oE4iAlB zYL*V8DT~1MLc{NwyHeClv|$!rLwWSf$b4NexAR)uTBgvUvCBJO=sfB6_1wOZtOXTj zc`5k{U1P}t$8tTmwm1Gq57=?FuXc|tkh+fj*LX~;FJx?f%NC4*45f)%IS75<;}ANX z;gHpyj8K*dUZi4hTt8$GpexJ4q}CPXVyW%DV;NflfVk+qu7f_9k z*}8EIodV}*+31PZmwxv(r&~BEn9C$YJ9U6zg!~5>d$_Pa8+ad7I91;c_0IOtEQZJv zWv~YzHgi=b!-mWfXtn|_JkoD5oK-0qxdz=bc;8A)h$8Ki7uj*~)FIoxTCmM)Lkx$^ zDAapMq>9(D*y56Y3)j_pPZhR{lBnF6$6?8nU&c%yomL(4$90sL@mADWR@cgG>br4< zm7f(4kA&8Grlx|Pqa>B}@VHOlNlK;+Bw%8XPl;5YrIxrI!FgaD+MM$T3TD9_g?p$n0Z^z z(ZK~3V;*H`@3>UjK<`U8)$c<0O1ic7Ev6ocyuLu$qCG4Y{bp{Y=5PB;{k{&5MvzIV zqrB@hYXOE@LmvV6T#B|X4dE6jY+>wEAHh2P=EcesGcpX)dv1+PVs{Q^sw4rG+6 zIMNJ)vc{%SR$PJ)BEf_u+O<&U!M5VQ%rC4^x?<;d{RR~!z6NtUq3;)^4s7W1#)j^v zagl`{s8YEpK6_jhO$@_^<2ryqkqSlOyMV|^!)TC@2*LI`^CDdG%EMG3N_}|VeMXsg zreLRr}}fkU0|;F z*7Y@d*Xq264ee>$vQAr(zQG}~k1UIKZbPoo zBq4|^xF`pLiPaELV00X>9O?5D3Lo=a4w3a>7DQFw_SB8SWLAZInMO&pQ4!LSj~YD6 z@OBztL*L8Ob`EK5=<7MJK_T?^rLFqqOeZgHg&A?6PjVts8H}BcoI;mGT&hNI$*O+_n?-TzQ=5&@FU+ z8%JCG;=yD5GrXl(p=k!g0{xS2uj3r!y6+pk&uJG6J=Xz^8H=fHEN`Geyfj0EZ=)FZ zy@n~1956HJK-yv(s;r3#B|r&&i8b$4=&<8A?%_Ig;+gcpy^8a?q58J3buP@kLYeB# zuvJF4c@1BKR_u&3Y};O=+1J~;*T6d6N2fErzRvXb@UVNhXB&bjsk}B6yjIvbbueQP zP_b352q{pB@qe)PPPC;?V+3uRSYKh6Wh-G{U!Yyu2MUFQ#d`*N-+5JeEfd?K^}L)s zf!p!b7#;VQb6lcB|I})~eU0;~5--2s&h1c7E$a&)Ds*<-L~vtY9Bo zkapu+;9@BYMXVY#B)(0sTH}^k>s8%(pgI{Xf(haf_V8hgi`#C?Ct4y|0|!+}!f3DH z+7lPAq<`@md>3KNVE+qD(Zi^+g|6Fue3yRaI^D*%0Okp7ODn37mjONA%=wvO%5xVQ zTLN#vEcl-WuJzOXZ*iUv#jn9!=WG1ER=&-j$2yn2*1lnGH$&%rZA`Dxw@t4VG%`~H zf9Y}|9;`TQTK9mS3;I0H&4~Yo49$KP^r%W)`Y{~?48zu$u*+BI`E4V#7j8e-FPMdy zlv}aA@EU9d+kG}};U%9{-@sDA#eUW{uhD8bEb>B1V&8Xp-q{fYW8z=#H*jr$*E;_$ z@M<5gC_cd5Lp9u}jyf=BwmQi6V+=lfOKvJ=X!Iyx9EQ#c)`b4 zKvDGyx4pWr^=v#+VuYs=Vk6@e7u4d1!Kpb%RZKw6E3Qj(?^v^!=Q7Om@wg(g?zN8j&sMIKz9iV4 zc4x~y!k!I8Fuzx!iz65Z7T|G~b`%6DdXCfb5(*ml-~nmlifY7JlTJMQPa*T6b2Jn|a6Da6sHJDjm$zW)COz7Nma z@m_;#<#XO^G&--#XB5;;-!C3HD{Omx?S7m8{~l__aQ@jdxtjJ|GzXroXKu&PLYf6O zL+8I%{xz6AQnDcGd_$FMLthRI;Udw+8<#Aotm2N-r zn4jnMT(+Iln*YY{3tt;|=YLVISAuh&+d6O2oXfmkV-9ew;oRt2c{B3U2;nXGKJ=PL z+kCBE*O}|i*TS`N3fp=@=WX+a*XUe>ZQUNzwfq_SemU6@Yx6j~5$H6 zu;u5q_CIgf^3gE!x&`ZZ`D@tq7DaaE&kp4gtA`ZK9SgCgo-bd)9K39^W)8b2Ztif?dvTxo*6ccMW}uCEo;sUVl;Jz`QTk8!jk$#usgAFpX;qo!2ti%EoIA zMVkHHp}Jn%HeC1V*ZXeR_Pxc17mAz<8oHy`I-B#ioy<6wZ?7A!-EZ?6s*Jud5+Ofi zIg%24U0|46NB&xI&1(x=cx_w_ua#fptNCrb2GV;C--2uPXMCZ^x#0Uk%@ZZm8Rh{s z-PZ;=LkmNth%>xspLc-rszbie_3ri@yg8q_KP}()(Q~#Qp0=~MZm{Ry`TmPM=t#Hu zU489s=>2TBdoiZ(0o@KhSeOi}UO~Y%z6~{qQjicKF%WU@&%XNl>2bmm0DGU|9UYQJ zIt}Xefv!Av8x{BN=Cu2Gd$W6gd)&P{lSi}qb$lsPMF`*5ShqX{&_quc4bAJjc<3)rwKDgfRl=YcS(%!j2KHR5(iWb-9aNb?G8LMhadSeDH|Knt=S;nP8H(1& zN0fWH?9K@C{rR-JHUE6v-J*beX^Zyjd}Ckm_f&JNh4UUTNPeCzQt$ckVfXZSzuQ0F z?M}PP?%nZu_k;K6-M6U5)#_s_`j&(uhmE4I^64=5C9bsBI*N}K zw?J1f&}WF>1^N|_l7A5nA3*ZB4$aOKR8BM8isEME=#g#m6;6TbY37x^mW zNFDJ8A-+5BP?n+ZxO@NZu=@ypxZMvV|NN9X@6h&p@CH}PH}L3Hpz z&-EizlqsKw{Ud!pVH_A1bZ*ZY%=kzmdCjL3TR;Ux|Laio?6+n1U0|;JU3!VK27hn$ zvH!)t`Y)fYsGw9{#|fW6=j6i_!N{-zRd9lBtmA9`2@{mm&%C&!9Tt*Q4>++32{U+v zB%SljvqQa3kjcDxE;SV7k9_>u-sgLNNQ77V%WB%@)e}ick3Qwuc`$P!%F}4{?pqXQ zG-%rWD=>c&7=`;wvE)M~E>v|}XfxQpvzf7nK;_d>mvJ|I*}mlUni3KXg*>TQ;Wa+C zP`sf(U*pK5AL`ijs3n63tQnb9xEsH3uNR(H3-O33t3(M!Ies$K*BOeD`ZQ?gt5E94 zLr~XIkGbqlq&LS-@gUL@DQbkt&*=VvP)WEX_2vC+H%P@33eYf`p9-<03Y$FjbI|iZ z4eSPtcQT%AS!knA)wFV5&_dJibO!Tg{66qj{jJhoGlZt$TP)ltSZ@3d)&T)4WbmLs zQ9@TnE!@|KAJPCZs6;;ndgeY$eg$iZ`BAPm9E(X=0-^nhC2|_z%``IH=}`&EdlkoA zy1zuh@0ssz4-dOr^Pf@f<@0X$@CiBedVLOFdCy#x#TG*7fZRPb3MQM-7R0^ zIAS!<`Ito5u8`=*;L(jC@)OF6Dv_#f_5S=Mn=#qfE%V|5Bd`w_4ld@@fc5>3!5`i| zjxS2qn8pZ7QSjG-;%;2qRt}9&UQg?Wt1#$YF^X!l%Cw;BH$B_UZMXe&YvfrLoi94# z4f!&pF?A@XeuG#9wA?J^VE%@7?{LhI?^wv(x=3+RgSCrzkQRTU&XKyu=L_u^u!DxF zClztw8qaw~F=9Q{M+x*HPbWQ)MURo;MCiSRt_z~~w~xDT-|u#R_lJ~bkhZr?L(h4vO)QenY#q;#a8k38h2fY2B{L6z2Ir%cc(bpF`eBC1}zo5tV zI+VvX%5*{vC<^%JS)?IE*KY)t_ zR*T>b!uY_F@jXg>cSgJ}He5gu3f-Tn+?(tf*)O`$_ZqxmrJAh)p7)M2Qw8ka?o1oE z3wn)VzC?=B481U_K;_AK^PaGrh=Cjwf;=5rpxvGf_0WQcY&(WmM)A0=3UW?#zR%Cw zAwUmR$55|!6K+c(j(Zk<(Rv#jS|M+>|E}=0Hr>y`c}T&l2sh9yYiP}im3G-yAXL%$ z&N>R~9oCI5m*w&{{bBdb$K&qXZ*F!UKim>3&zbu?r@TebClppzZ(6Iu ztTLhRH*)S>^|5L1&zRL-lWmH@?+SCtOMZole100m-HU|s&tN`5rWb;toyE#JDARZ) zs39p2w?5AC<=OJN3QDLpt%RWv(g<D^bECi1RPoG4Aau1p0ZiEPC`7 z7}Byu>xh?Z)Gt|(++}OvHD1Wv>}Szz-{0Ud%_n1^LzP142Bl@ai${5sdz6P(pU|?N z<^1b-GF>=l#=}-2Mi6jj{l0fxef|FeX2taNtoY8~qHuUbkXa2Pz&*kdJ?*(+nC=BV zRk?Mcf>)|^agT!AL=On86pJ@q?oi5S6mpM3?h!Z(C-SobrjNTQ>mi|2L?63Hl31ETM82B?t`DXxdR_il|rO35ANsgesKzBF}xG z)tSpwoQfL85d#^*dP1QIhj{YbPXsxwRem4omNA*`GjY}dcJkXN>rul z<$l#NG~r#y0mCE&SE`1}s8(a)+OE2e_e$n%!A$}#c3;4?wk?OouR+s)4b}sLqIY=4 zqQzxph@kWN=OgP>LK0ILgHuz2D^uqg!WF5jPnYh_hR#jy2eT)%je?gR0`__t0N2%C zZ*h+Y(}Z>kVh}#dJbJ{(>e-VT)-G9e-RS)&d{2KWhoq*CHkRFO`C3<0Z^zwynhlbLzWyESf&- z-oJm3m)45avsP0VNI5;imA#fvQS(@Yfuejel4C;VV)vG{FBK2jTDbpoK6fGG9~6Xv z@ZvY=+H+T-d%*9h2+Gp)90RCfx`VmEfL_Uv($2E2!djr6Hbho0vlf`!{j6}U-{x@z zl}g>e^0$9mwNlI7hyyF-sdNWyh%?;zSJOPk^MG8>v6gUy^z+9;voE9q@cHvkvUo9n zh6rE?Osu!12P5`H^V5;px#DUDl9j5x(QuhpDbA4~*M5;wWL@fUwfTru;$x|%6#c12u{xgy;ej~ zAnd5T(9k0>iZe7t-@Ung=esx_j*nwOSJAf~4<2%Qz!0+f_h8d=fTU~zpEFj3Q-{FDp=l%Bf%-+|742%r=bPa8yh&yDAbTV$4Ql$@p(dIdll&zTs(nREi}B!XgNaT+|Tzzd8TRFma?|cb^E%(>x0Ux zeH(KlxL7NLJs^eIt1EC?r1z)<2qX9qLK%XB@mfz6TVd^$Z3K%Ts+D!Fl=J znXrz+d{gg(NcjDLBBNMCZo=(YES-oFj3cXSJuLhv0qDb@s#{K;49(;SEiAz{jY8T7 zE&u7UJzIsiHEQg>XCAJBW!693-=jE|a(O}^G8oYc$ZX72&RZ%(_Dji)4$QeVtH;bw zWdLHAi|J4=1I-ttS0TGXZF{SWmAd!uh@jL6&v3X7%Egy|iarPMu5w*Dv%1Y&dU~!4 zvz%19Kw}&Swn=Vl=u-m}3_RXl7!|X52~ma0d&=!ssAw}om;5}T$0xSjgig26vJehg z)qy$BbXZ!h+XP(3aCSVgUnG=yJwsl$BFRNgyj)>ZS3y?D)e!31#a8n4)+sDHR=v)rE+1GJeN>@z|DFw} zZ!vfu&!mN3N!0@C#~YxZg^=Efnp_!+E~R^c;T(`>LJ#Cup2~IU3{e{n(GVqt8$C&Mbz4y%4(bPNIj; zKSOWyw}dw`>@R@Aw%}oa(7b#XyascA%c1ctnCW)?X+!AMnEJUZXv9eFE&|4@7AEOUf; zBei?;QpYscqQ<3$S79)cacx9#To@(;(n!mQpa(ieI0z3k8R&>BjnR$!gjvvBL67!Y zyp5|^e!(`cky2kG`tdGkTNIwUV%7EC=; zJ)e{|3)+W#P_O!fZY$C$g#Qeu?p-D9+k7gnIFb{+K;FE{i20|kg|$wy19THugnI=A z>xnU!k(Y9a=PvuyqTNaqayjZyJ7aqR(xlPx7yi^=_+i2e<>hq_%jG!t(2mek+4&QT zHUvZ65GRowvU5RGa>#(&c$4#^UaLUOla_)Ve3ai8dr^wz)FVisz~Utf5IvMOX-mEl zAWBkMv<{ysAE^ooP1=Vh=zUUprArm*7`kqZEdr{s)>ZSzzY5%fApcuo0IXEmE3mX3 z(4N`QLotVz>X5U;j}?Cv#R<37h8|=U6dg%9DtkV_MPBhJ^9ZIzT9) z*hcHlUZ;dF-41w}*_(SBDGj~YW;86FKueUjW+kZ_J z)fczpe(-4<>S=7BamfGm`Dyowh4<&IxKTKvcKLCTQZf%7Bqxp1I(-g)t=Ew933^OI zr{)RHi2*(F3JmtsuG`FDdk;5yD|h^bU;Nb{Qr#9{q(h=W3_0BDf&7<8ClLgQd1o$F znkWQzDU+P_@Su33ir}7(iVv<+Zs(wkAcQQ6L}^m)>5`tLH|Bf|7-u`=(I^KOws$VJ zjd=>mJnKo9lnVzLy70P$W}`#~Pn*n-C-UjTr#aG+R7!^;%}^$zKrtzqMKRp~*eX&m zZ$?2w47jC8mx&8O%*c^uRXxm!I^$8{-h&s+ko06qo=%lIfA(+uE_W}%0jNGfT|MVF zkT9U0{cT9{eG?8L42w`(SrszxcvvnIf_V-gYz^Vc`qC*@RTft{EsACEWa|+D7;9l9 zrO+P$Wsswv#{4!y=7IJMaoyxg&Xza3&v%#I|NeYO`ndBCu*EC=l6|M00ok^Y`Wwa75C&bU)X|^(4cbGA z{RgO9SZ>&937TK+t!J->lwQDCUccm86=`{ut$k+9%*_= zQd3ZMl0KCM(~*(OsVUm{mB0Qw7%7zuGlKg(nbq_F%VcI@WJue@A?o589SY;~ufB?DLtP)KdH!i1z3Ro2)J`AVh_tfA*Zs|>nLsuZU1f?T&Ziz@ND zH?FYMy#h^x|MMJHCsBF5KUUEiLOGAuYN0UmD`_OWf7l)WYXO*9(-^0n|J5k z4?f=RzWs2M^T@LvNu`s>@DzojTu`ZxP^)Le)4)8n2VQ*U_i;hbwd#YKo|E7n!4bS}`*<4ol?7`j7&-a+HVn7(mGavG}_} ze_-QJ1m55Hkp`a}obm+0$3YRVzYu=>%=JU|lL>sDiugtV9VX0?TUcHoMmPvBFE4Y= zW$LOR>vE~hk)j|`MUi&-OS*cYb+F#NxlnOquH$w0VQ5zIqSy68^C%;&YZnTxO6w4U zDqx4%#`1`UR)hk~b_nRahP7?wn_|mX!?4@2Qew%-F}nThXr=$nW6ShKD9I~1W7_yk z9yR>YDeio^k2rj~{>}Sa@TMNt-X8H%9|8HxsT1h|WOaqt=2uSwofhK?ri5A+RUNnB z%u`9#gz$@}8Fsm=fzmF35x{rqI-Pq>AKAF*@~0U_6r)^C z31y6~SY1PW@}1r%+V~EuA<>nWMB9Dc+qfLgYZE9>Wj5a8(xQyHniBdsVKZ!JdQT1v zWH3ywLW;uIagjIX9OqUI1g0ZYm=y&FFMr}9FzIVRqfh6$STL#ghE3BhH=HUA@6%4B zBNao7xwqy^1UL9=1<7}VO3;s4_pfs4#w)@hfmC2qyjR;O3Q55`KxOWk! zGBb~(%)GnHwJ&3TW=;ADEq}Uqn%M7td=Kk}KDAqJ?4a}l2Mx0$9?Resi}@N{Gimy= ze8t71ydKckb6&%?t}xdRs^m#fWenC?@2h^L=6{iDI3%qsafUL`rnlle#)i49vGY4^ z6jWx63O-_lbnSE9`lI8{=_;lccwxery@0I`m!31QgcixkNHD{SYF+LpkC;F5f99KR2C#Ur#LZZ;4FUXsdfp3$uk%R z!R#d`;m}~@AcMvb^*h|l!d<%&$sCE?2ba`#LSB>GN9ZG z86mGru+Z_%wlFtVdOeVZ;R&{RbKPt8g>9W{IM?H!<@y@F3E5UK-T~@sUa&F9%J-h@ z&cBAQMW#+??7F7ql`$E_KH9>AkX3CCEL^zNw#cni=2Koi6oHr(7@fy@DAJl17}mX}G77^A=8ACI@@vmHp@RzzX-Y#{Z?qq< z&7bRvgNv#&!>C^oXn58&S4vs+GegsV4Hw0itpr>=W~fBA?n=kXt1l`K%=*A>l*qM? z<$Jz|`dXuJZhP{M;v`lo0qdu8IS9ux@-PpmMNX%3vI>;kfdw?JGSUc)yc~B~CNAw7 zir#C`^|#nZX!aqraytDI5s0OxV?0W)%WbEyg>}5pp0LbSBhN*Z4`@1HgRWO-lq;-o zs?ciHEYu^fQJ10)-STP%FJt(tDBtR4&H8xnRy&Vdd~}kpcnB_z zT-q{_7f4t>9z2LA1do+vj+5++8vQq`uqEijq+vXvd>Dn-wi{?oae?6}Ma&)&A%n_b6hhS(ns%pxit^s9ykF#) zY150JzLy7k?Uv>j!ifT;jyNl(1wTXAQ+RVK3JXnPEcQCx?z0;@Z;Ju>9{iOu=@TbV zuKfcle{&N)7+n2o8P5Oa-~YGB#RU&HqmijD+yac7BeZ+=IBq>$_PV!mS?pKo+<)3e z%n43fQHG-YyB0Zlc^$xZ%^5Pj@3vh72I3bb$oFZ-lW zS!Y}jt*k+_@0wrzWCpwHviu8AaFFh>F?z=!7-Lmg+uC12kAbTqRyPB@Yx)7MjcCzL zIIelrsOFtqesb|l5TepR zqNz_?SGhv0oIEFLA@$a=BxJWD`w&{NwRIgtXsSr_#-Qq&aG$j57Fb^6QOR9bC=;7H zhi}Vmzp<|vm_UutDUJ%H9d8)ktsil&s?jx zW-+X0e3ysa0loN}m;K-QC;u*8SUHM>PPwlNEg`lrvX?=ipD(@^amfk8kMHWiu0M$N zs~vtnN14kaeWcAkkD@fA@|GxErlIXiM#)1c-Ukd#T&C~J2}I}!!hC~f>c?P8IH{j` zrJxibR3BQj|1SLiDqY#Ff^L`v4(M(J=JxrnI;u=LW6)FVuOmy#ZZ(v(|1vbL!Ik1P zO;FG2%iC6@KP~k4Ev{9bk@so;xO;zlv)li@fBx^8vPy|!QD6?l(rS@Xie&;!`1O#$ z(|WfUK0ADPERXc9IX}Jf8BeV`dN1=JiZ%55WvuLnkfm=N2=Ve&)VgN9S4h^fB2*S zm{t*1^Y6!SwE#Vo?o^~5((Txwj*9y;0<{|l?CB5+L~%Y*$@k?@n2PXq3Kg7lLE^ef z5OUh{aEah$K2HorD2>NLTZ2%roF9IYg=FQt*B!E9RaGJq%G7jHFU(t7?VNY$r*gjAb-%-l+KXx zeI9oc39;N8JwJXt@BBdH{0T;dvjY~_sCbRsQCH5l&CVK?{QQ5jdV&W^~B#Xm(fIV9wIXr`^sVtk(r}0v9yWt z?dsdE0?kSZj&Tsd5cg1>k5mU*P^s(Sg$64UMtm$H7u`kl$@#e+c`FT49{HE zIQQ!agbOXZ6;8b9KAcGrMH-{Fb=4ByYS`R3jJpZ(r{roEjFMfNqGmlGZor^PSt ztmp|4($o66U@Ir9RO+1Qq(2CuvhN=5cXxPXg*;FA^&;DVdh(!?&;_#^hV4|QiqY${ zu=-SwZJejAqY(7JwBssglPFq`wY`RNII~&OU@$zIq~E1)$JwE8)kgBe4?P&#k_R_> zRoWy1R6S2t>|1438~Z3T>U-%d;kuy}X#|4To*}|OBtAlH31KLbaT#Wp0f2gv&_6pDLJROKAzruA zrF9|CA$v$1ATP8LZ@g6j5mF7+KAFkMKP#)BxX{8dKHuN(PB*u522I1S{TYId4$weI zF2bZ4<eWjRP5I!zpm_2VZSqUnHo%~8_AkN zw`yec z-0dDE`am`B-K3t6bwI*zy(2{3bVc9tspU6K^2(?~l5LRoL?7qAcwLV-!Y{ zQ9ry#uk8ykl+F zH2dHB(SM+i@;ZM*XvYejUgD8jn(dA-ZJLuA$|4-=NRU)8q&Q#?+w%un08i%y72=$! zcU=gr$zwozmoE|BUG7S0iy#Y5^sC@y*pf&1QGoR>P#sbvjH0z{jqX6^W4%|g9B*8Z z=~=9vt(QK^8zX#$5O0Hi#;75UF{&;U--_u}$gv^@AiYwSWrpHf{d->#Yi$#C8LDZk z0n~wqio}SimeVrBCL;44DL>uz0~a%7I7j;N#b*rOMUK>@?T0c#>o@+DiiC&)$^q@< z>MACRbgr~4PFw^arE6Qy19b-z64db>pS+lrc4UrD_0%4u;DYBTK0tLr#Ga_<%0|J^ zgT!)`k4?aAA_8gZ&`&-_L8gkj__hNVhCJky@M<0F#{2PP2b@C>`RVb{RykN-#T%0I zeAX!;yp)1grEyK8=g0fJmugx5P8h~2UB}|upp|Bm@T^!EQ}~K%H7p&*#f&ew)n``y zA}5hFUYR!+@kTvNnOk2k*NC1FqS0pm8$bF39X||aB{*WX;HotW(&eM5QbKu1mD!?x zuMTH_w`*L-hZ^}VA4_q0C{nr+u zX!;X)j}2>|dd^VcqUK5Rtm7CRxb&p!t0#`fgAX4QMJS3%<-tt8{Dm^xgRLvyLS#U` zio8Vu9|(J%Gxz6b>`x=mXbwyZ@}*(ql}B#m#fJ`2DssqQ3POqgjgt2$k#$V|V2$V6 z{<#fz4bLuqY?smTFMUNmdIKf<-~8SGlI=%ec;mREm@HjRX*f(66cBMz?@ylE&?bsh z@s#R?ew0BbZQ+kp`U46IM6|5~Ez2ZdkB^+RYy~d!Wyw(lOy$cVp#7IeiW&lCzEKw8 zGhArebA>XW(l}@Ks0#88AM#=p=?4tAHNMUh>^}zRVgblcD*zuJeB%NHxA8~7&3F3K zAYd$S$x+vP6FXyZt}- z{r}3!ysV$w#X1$JZl72G@wkTCr@<`VBT++f{`d+4%SsK_oWS!)h$X)7Iw5YwMUI%|DP($<}KZ+-u>XG?b9I5f47B0;%?P3__l;YH& z`92CVO`RCVP#y-H@nJZgr1<2a{xBQ-lIK~pAH?^`km{I01IzdD7@r|t*_4y`9@NA5 zq$<1;c6}R8!%NJeZ{_C?c;3;(Bhvgl9`1TUrhJs+)3eHTVN^Wtf9v1;w`bk-!U80# zPb4Nai`;Q4VyWJmBm(HGVb%x!$o9g(m z@BNm8)L5LW41ks^%nDsO9dc#n{!ihj%?OK8jS5s)q|ox6AsyuMaEws?(61<4>Dl&% z(AowWE}sZbd2$Fpd3X!W{44-|eRU%5z)~*gA?R**Vyu2$E5~BWM~PgBBq$=kqGE67 z`@|=dDkKs@MXyRk(q=Sb__5!7i&kaqd|~>q`yW64akf!;YC=W70<8l5tW13-+~|Y; zkOj7m+O z!5pPf&u5hW8I_=fD zD*;20N{)BIOQ{tj;NRl5w-|ch2}M5c{wK!f>CfqKoBq&WEM66PqkaN5`Y)t8TRI`--F?$f7FyF2*vpx(dgmuRWV_Q&1- Y0jIQKqpXab7ytkO07*qoM6N<$f;yQ2zW@LL literal 0 HcmV?d00001 diff --git a/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/resources/base/profile/form_config.json b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/resources/base/profile/form_config.json new file mode 100644 index 000000000..d468824a7 --- /dev/null +++ b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/resources/base/profile/form_config.json @@ -0,0 +1,81 @@ +{ + "forms": [ + { + "isDefault": true, + "src": "./js/widget/pages/index/index", + "scheduledUpdateTime": "10:30", + "defaultDimension": "2*2", + "name": "widget", + "description": "This is a service widget.", + "colorMode": "auto", + "window": { + "designWidth": 720, + "autoDesignWidth": true + }, + "formConfigAbility": "ability://xxxxx", + "supportDimensions": [ + "2*2" + ], + "updateEnabled": true, + "updateDuration": 1 + }, + { + "isDefault": true, + "src": "./js/widget1/pages/index/index", + "scheduledUpdateTime": "10:30", + "defaultDimension": "2*2", + "name": "widget1", + "description": "This is a service widget.", + "colorMode": "auto", + "window": { + "designWidth": 720, + "autoDesignWidth": true + }, + "formConfigAbility": "ability://xxxxx", + "supportDimensions": [ + "1*2", + "2*2" + ], + "updateEnabled": true, + "updateDuration": 1 + }, + { + "isDefault": true, + "src": "./js/widget2/pages/index/index", + "scheduledUpdateTime": "10:30", + "defaultDimension": "2*2", + "name": "widget2", + "description": "This is a service widget.", + "colorMode": "auto", + "window": { + "designWidth": 720, + "autoDesignWidth": true + }, + "formConfigAbility": "ability://xxxxx", + "supportDimensions": [ + "2*2" + ], + "updateEnabled": true, + "updateDuration": 1 + }, + { + "isDefault": true, + "src": "./js/widget3/pages/index/index", + "scheduledUpdateTime": "10:30", + "defaultDimension": "2*2", + "name": "widget3", + "description": "This is a service widget.", + "colorMode": "auto", + "window": { + "designWidth": 720, + "autoDesignWidth": true + }, + "formConfigAbility": "ability://xxxxx", + "supportDimensions": [ + "2*2" + ], + "updateEnabled": true, + "updateDuration": 1 + } + ] +} \ No newline at end of file diff --git a/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/resources/base/profile/main_pages.json b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/resources/base/profile/main_pages.json new file mode 100644 index 000000000..6898b31d2 --- /dev/null +++ b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/entry/src/main/resources/base/profile/main_pages.json @@ -0,0 +1,6 @@ +{ + "src": [ + "pages/index/index", + "pages/second/second" + ] +} \ No newline at end of file diff --git a/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/signature/openharmony_sx.p7b b/appexecfwk/bundle_standard/bundlemanager/sceneProject/bmsstagedemoone/signature/openharmony_sx.p7b new file mode 100644 index 0000000000000000000000000000000000000000..66b4457a8a81fb8d3356cf46d67226c850944858 GIT binary patch literal 3443 zcmcgvYj6|S8MPj^V?bbHu)zUrguxV$eOH!j$tfhe(&~j*^2(BJ8Bw#6Ru5a+m8F$e z7KKoe&=>-grhpq>=4Bu;(DE|wG>}Juk_0FTWjZM)HPlI=G?d~bG!)vE?SRd|k4|RL z5AA&4J@@X}@1F16xgaj0Q_^NE(=Gc(#7pJ3#zhN2Tx93-c#sGTPf1&_OvfVyLOu_~ zlSe%S@>=7`Ny51BKMTc;WGL*TDT$MIk>XNl)`J8^1h|A4DgXsQJWCvj_*`5l2htLU zQb|hWZthQ3EO$wia-fh9N)kXtGPj$A6damq3MM9pNIyx0NiIPIgA$i7%!GW72$Oi< z0D=zJ`Y49^Lr|^Wn5#m~7QIHVf-PuY)=pu1y$Xw|RIr2ez^opDJ$jTdsS0Ci7(+as25)_x zsT{}EFl&V|Ef!V9U<2YYRwA&?0@oW&+zMu#MLjlkC63QUS*F~nt&CJ?HBF8xWrVb# zH5lU5!jKhJMKRn`g!moxUavC%H9DwzPo=ifYo{C*v<_3DeJD7J5s#wqYJ_!Y{dKl# zbI>7`d2oQTI#itWjMb#pQF0&==*tju`)aL$UCE23tZj*onZ@#D%qMUx!zW7U>s7pT(2?vZB-yTR}BaHF_^_p z>A)i>RKq&8(V$JL0R&eIy~f~oaNp~cTG=WKY(YHEf$Hj!M5XOif2}bDVT~#nwm57i z6^;k1BfkI#2a7>4e42{8g?g`>nbo*tA?vQh{fRzIem6Y!&u8`Yow^C zqOv67Mm26i&zNJdsSk}S5ZJ9i5g1b;GMLpRDryEM1hJu-awZyzc>Q+DX-4p{!Nodj z8p@BoYeJz0+)sJZt zuEPepall8Mbf92R2NrOKP{5F3h655oKi75PrZ7VWYMqI0@AnHgNidN_?~A>hO$>~4 z^Tb@Mb6p+qg%i#dPPBT6TPfsoGNel~WMtla4$I*p39k?b>wSH06QT&ecu{LS5j7WKgGt{%Qg#tlx5^zGpL0XEyDon}XtBlYX@N6O&mN9(L z$3WvjRw6q*BYjXd*Fq8jXbPB|7!qV;4<3SpL4U$-IR3dR7);6%Ng*HwQb@`@>Ox+;D8{>7P%3W3Q%Usi-A~_qV+>e)rntOWl*O-6dZMKE8F5;?K0akaPU^t@xU> z%=cfHofS|kPL6wHyBU;&9FES!DZ+6ebIF)LFY6Fz{&D!$xgA|o7k1uCUbIc31tSxH zQ9Ry%g+c*8bqSc5h(`)Dg=0P>uD!i0X1s82?ZKCCB;WhGR>U(8-7|qN3Ap)CQv0fX zX>mu>K3(2u5yPDS2i~g-k`cK-?+g}k~KDu+;-P*Btr{$~&b>;qGA|AHs7nh`J|G6Cj zFM?4Cp=2b4lMDphW2lmNDT9=hRhqu_t?@tZNiwycZ^=K%z>ov)XaXk~tj_oQ`@1 zbTo;4XZBDgPjUAKnGqx}k`C5UB78cI_yh?}-u&gMP5ZOtdzXK(qxOqy@YH| zKVg=t_U%sjdhgBr><=%#F8a;Uk{yeK)y=0CKNmdE*mmS2GpIWB>H6u#<%c`=zqcWK z9HF5KQ#7Oa~pEP2)s#v~d&wROM>gVs@EXK<+yLWhcgU&n0TfndfCpllJ0~-G1 zq|eQ>U0Y7f|Lt@0PS { - console.log("zipFile fail: " + err); + console.log("ACTS_ZipFile_4500 zipFile fail: " + err); expect(err).assertFail(); done(); }) @@ -990,7 +990,7 @@ it('ACTS_ZipFile_4500', 0, async function (done) { /* * @tc.number: ACTS_ZipFile_4900 * @tc.name: zipFile -* @tc.desc: COMPRESS_STRATEGY_FILTERED, +* @tc.desc: COMPRESS_STRATEGY_FILTERED_PROMISE, */ it('ACTS_ZipFile_4900', 0, async function (done) { console.log("==================ACTS_ZipFile_4900 start=================="); @@ -1019,7 +1019,7 @@ it('ACTS_ZipFile_4900', 0, async function (done) { expect(data).assertEqual(zlib.ErrorCode.ERROR_CODE_OK); done(); }).catch(err => { - console.log("unzipFile fail: " + err); + console.log("ACTS_ZipFile_4900 err: " + err); expect(err).assertFail(); done(); }) @@ -1029,7 +1029,7 @@ it('ACTS_ZipFile_4900', 0, async function (done) { done(); }); }).catch(err => { - console.log("zipFile fail: " + err); + console.log("ACTS_ZipFile_4900 zipFile fail: " + err); expect(err).assertFail(); done(); }) -- GitLab