diff --git a/ability/ability_runtime/stage/BUILD.gn b/ability/ability_runtime/stage/BUILD.gn index df2f212962ecf6d21bdbed65d7a4066f357e1808..59ca123d04673baa99c07bf408129675f7f84469 100644 --- a/ability/ability_runtime/stage/BUILD.gn +++ b/ability/ability_runtime/stage/BUILD.gn @@ -18,6 +18,7 @@ group("stage") { if (is_standard_system) { deps = [ "actsdebuggabletest:actsdebuggabletest", + "actsgetgroupdirtest:actsgetgroupdirtest", "actslifecyclemultihap2:ActsLifecycleMultiHap2", "actslifecyclemultihap3:ActsLifecycleMultiHap3", "actslifecyclemultihaptest:ActsLifecycleMultiHapTest", diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/BUILD.gn b/ability/ability_runtime/stage/actsgetgroupdirtest/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..b9df80efc16daed6c97086e46584bf3b0126874d --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/BUILD.gn @@ -0,0 +1,24 @@ +# Copyright (c) 2023 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") + +group("actsgetgroupdirtest") { + testonly = true + if (is_standard_system) { + deps = [ + "actsgetgroupdirhap:ActsGetgroupdirhap", + "actsgetgroupdirtest:ActsGetgroupdirtest", + ] + } +} diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/AppScope/app.json b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/AppScope/app.json new file mode 100644 index 0000000000000000000000000000000000000000..7d65f23cf3da8740cc6e9af0773fc5dcbcf12b70 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/AppScope/app.json @@ -0,0 +1,19 @@ +{ + "app": { + "bundleName": "com.example.getgroupdirhap2", + "vendor": "example", + "versionCode": 1000000, + "versionName": "1.0.0", + "icon": "$media:app_icon", + "label": "$string:app_name", + "distributedNotificationEnabled": true, + "keepAlive": true, + "singleUser": true, + "minAPIVersion": 10, + "targetAPIVersion": 10, + "car": { + "apiCompatibleVersion": 10, + "singleUser": false + } + } +} diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/AppScope/resources/base/element/string.json b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/AppScope/resources/base/element/string.json new file mode 100644 index 0000000000000000000000000000000000000000..f0c5402f5464922b09c9eed0c8f1c48c63efc0c4 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/AppScope/resources/base/element/string.json @@ -0,0 +1,8 @@ +{ + "string": [ + { + "name": "app_name", + "value": "GetGroupdirHap2" + } + ] +} diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/AppScope/resources/base/media/app_icon.png b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/AppScope/resources/base/media/app_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c Binary files /dev/null and b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/AppScope/resources/base/media/app_icon.png differ diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/BUILD.gn b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..c446ae0d54dc721ab0413a7456bad248e80ba292 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/BUILD.gn @@ -0,0 +1,46 @@ +# Copyright (c) 2023 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_hap_assist_suite("ActsGetgroupdirhap") { + hap_name = "ActsGetgroupdirhap" + js_build_mode = "debug" + + testonly = true + hap_profile = "entry/src/main/module.json" + deps = [ + ":actsgetgroupdirhap_js_assets", + ":actsgetgroupdirhap_resources", + ] + ets2abc = true + certificate_profile = "signature/openharmony_sx.p7b" + + subsystem_name = "ability" + part_name = "ability_runtime" +} + +ohos_app_scope("actsgetgroupdirhap_app_profile") { + app_profile = "AppScope/app.json" + sources = [ "AppScope/resources" ] +} + +ohos_js_assets("actsgetgroupdirhap_js_assets") { + source_dir = "entry/src/main/ets" +} + +ohos_resources("actsgetgroupdirhap_resources") { + sources = [ "entry/src/main/resources" ] + deps = [ ":actsgetgroupdirhap_app_profile" ] + hap_profile = "entry/src/main/module.json" +} diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/ets/entryability/EntryAbility.ts b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/ets/entryability/EntryAbility.ts new file mode 100644 index 0000000000000000000000000000000000000000..5a2ad1b43fc919610df43f64ff4f8e01b48a0d29 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/ets/entryability/EntryAbility.ts @@ -0,0 +1,66 @@ +/* + * Copyright (c) 2023 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 hilog from '@ohos.hilog'; +import Ability from '@ohos.app.ability.UIAbility'; +import Window from '@ohos.window'; + +export default class EntryAbility extends Ability { + onCreate(want, launchParam) { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate'); + hilog.info(0x0000, 'testTag', '%{public}s', 'want param:' + JSON.stringify(want) ?? ''); + hilog.info(0x0000, 'testTag', '%{public}s', 'launchParam:' + JSON.stringify(launchParam) ?? ''); + } + + onDestroy() { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onDestroy'); + } + + onWindowStageCreate(windowStage: Window.WindowStage) { + // Main window is created, set main page for this ability + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate'); + + windowStage.loadContent('pages/Index', (err, data) => { + if (err.code) { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.ERROR); + hilog.error(0x0000, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err) ?? ''); + return; + } + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', 'Succeeded in loading the content. Data: %{public}s', JSON.stringify(data) ?? ''); + }); + } + + onWindowStageDestroy() { + // Main window is destroyed, release UI related resources + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageDestroy'); + } + + onForeground() { + // Ability has brought to foreground + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onForeground'); + } + + onBackground() { + // Ability has back to background + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onBackground'); + } +} diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/ets/pages/Index.ets b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/ets/pages/Index.ets new file mode 100644 index 0000000000000000000000000000000000000000..86b9aec13687ae982be58bd8562abd1585d50bfa --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/ets/pages/Index.ets @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2023 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. + */ + +@Entry +@Component +struct Index { + @State message: string = 'Hello World'; + + build() { + Row() { + Column() { + Text(this.message) + .fontSize(50) + .fontWeight(FontWeight.Bold) + } + .width('100%') + } + .height('100%') + } +} \ No newline at end of file diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/module.json b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/module.json new file mode 100644 index 0000000000000000000000000000000000000000..0e288c05b41ef026b9f802f6c848bd5301ebc785 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/module.json @@ -0,0 +1,37 @@ +{ + "module": { + "name": "entry", + "type": "entry", + "description": "$string:module_desc", + "mainElement": "EntryAbility", + "deviceTypes": [ + "default", + "tablet" + ], + "deliveryWithInstall": true, + "installationFree": false, + "pages": "$profile:main_pages", + "abilities": [ + { + "name": "EntryAbility", + "srcEntrance": "./ets/entryability/EntryAbility.ts", + "description": "$string:EntryAbility_desc", + "icon": "$media:icon", + "label": "$string:EntryAbility_label", + "startWindowIcon": "$media:icon", + "startWindowBackground": "$color:start_window_background", + "visible": true, + "skills": [ + { + "entities": [ + "entity.system.home" + ], + "actions": [ + "action.system.home" + ] + } + ] + } + ] + } +} \ No newline at end of file diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/base/element/color.json b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/base/element/color.json new file mode 100644 index 0000000000000000000000000000000000000000..3c712962da3c2751c2b9ddb53559afcbd2b54a02 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/base/element/color.json @@ -0,0 +1,8 @@ +{ + "color": [ + { + "name": "start_window_background", + "value": "#FFFFFF" + } + ] +} \ No newline at end of file diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/base/element/string.json b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/base/element/string.json new file mode 100644 index 0000000000000000000000000000000000000000..f94595515a99e0c828807e243494f57f09251930 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/base/element/string.json @@ -0,0 +1,16 @@ +{ + "string": [ + { + "name": "module_desc", + "value": "module description" + }, + { + "name": "EntryAbility_desc", + "value": "description" + }, + { + "name": "EntryAbility_label", + "value": "label" + } + ] +} \ No newline at end of file diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/base/media/icon.png b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c Binary files /dev/null and b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/base/media/icon.png differ diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/base/profile/main_pages.json b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/base/profile/main_pages.json new file mode 100644 index 0000000000000000000000000000000000000000..1898d94f58d6128ab712be2c68acc7c98e9ab9ce --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/base/profile/main_pages.json @@ -0,0 +1,5 @@ +{ + "src": [ + "pages/Index" + ] +} diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/en_US/element/string.json b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/en_US/element/string.json new file mode 100644 index 0000000000000000000000000000000000000000..f94595515a99e0c828807e243494f57f09251930 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/en_US/element/string.json @@ -0,0 +1,16 @@ +{ + "string": [ + { + "name": "module_desc", + "value": "module description" + }, + { + "name": "EntryAbility_desc", + "value": "description" + }, + { + "name": "EntryAbility_label", + "value": "label" + } + ] +} \ No newline at end of file diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/zh_CN/element/string.json b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/zh_CN/element/string.json new file mode 100644 index 0000000000000000000000000000000000000000..597ecf95e61d7e30367c22fe2f8638008361b044 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/entry/src/main/resources/zh_CN/element/string.json @@ -0,0 +1,16 @@ +{ + "string": [ + { + "name": "module_desc", + "value": "模块描述" + }, + { + "name": "EntryAbility_desc", + "value": "description" + }, + { + "name": "EntryAbility_label", + "value": "label" + } + ] +} \ No newline at end of file diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/signature/openharmony_sx.p7b b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/signature/openharmony_sx.p7b new file mode 100644 index 0000000000000000000000000000000000000000..4db9702642cc927fde368c0cd32a908c91a4a759 Binary files /dev/null and b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirhap/signature/openharmony_sx.p7b differ diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/AppScope/app.json b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/AppScope/app.json new file mode 100644 index 0000000000000000000000000000000000000000..3a25274c8596d34c11805fd7b3cb41d10d5d1b3a --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/AppScope/app.json @@ -0,0 +1,19 @@ +{ + "app": { + "bundleName": "com.example.getgroupdir", + "vendor": "example", + "versionCode": 1000000, + "versionName": "1.0.0", + "icon": "$media:app_icon", + "label": "$string:app_name", + "distributedNotificationEnabled": true, + "keepAlive": true, + "singleUser": true, + "minAPIVersion": 10, + "targetAPIVersion": 10, + "car": { + "apiCompatibleVersion": 10, + "singleUser": false + } + } +} diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/AppScope/resources/base/element/string.json b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/AppScope/resources/base/element/string.json new file mode 100644 index 0000000000000000000000000000000000000000..f7ce431a94839af9c529e54c0c031b237b233811 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/AppScope/resources/base/element/string.json @@ -0,0 +1,8 @@ +{ + "string": [ + { + "name": "app_name", + "value": "Debuggable" + } + ] +} diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/AppScope/resources/base/media/app_icon.png b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/AppScope/resources/base/media/app_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c Binary files /dev/null and b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/AppScope/resources/base/media/app_icon.png differ diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/BUILD.gn b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..a55c4a6c6181ee3d4e9e60433199bf82c621cc8c --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/BUILD.gn @@ -0,0 +1,43 @@ +# Copyright (c) 2023 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("ActsGetgroupdirtest") { + hap_profile = "entry/src/main/module.json" + js_build_mode = "debug" + deps = [ + ":actsgetgroupdirtest_js_assets", + ":actsgetgroupdirtest_resources", + ] + ets2abc = true + certificate_profile = "signature/openharmony_sx.p7b" + hap_name = "ActsGetgroupdirtest" + subsystem_name = "ability" + part_name = "ability_runtime" +} + +ohos_app_scope("actsgetgroupdirtest_app_profile") { + app_profile = "AppScope/app.json" + sources = [ "AppScope/resources" ] +} + +ohos_js_assets("actsgetgroupdirtest_js_assets") { + source_dir = "entry/src/main/ets" +} + +ohos_resources("actsgetgroupdirtest_resources") { + sources = [ "entry/src/main/resources" ] + deps = [ ":actsgetgroupdirtest_app_profile" ] + hap_profile = "entry/src/main/module.json" +} diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/Test.json b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/Test.json new file mode 100644 index 0000000000000000000000000000000000000000..4a25180422ee385f412a98294ed007d7639e5caa --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/Test.json @@ -0,0 +1,33 @@ +{ + "description": "Configuration for getgroupdir demo Tests", + "driver": { + "type": "OHJSUnitTest", + "test-timeout": "180000", + "bundle-name": "com.example.getgroupdir", + "module-name": "entry", + "shell-timeout": "600000", + "testcase-timeout": 15000 + }, + "kits": [ + { + "test-file-name": [ + "ActsGetgroupdirtest.hap", + "ActsGetgroupdirhap.hap" + ], + "type": "AppInstallKit", + "cleanup-apps": true + }, + { + "type": "ShellKit", + "run-command": [ + "power-shell wakeup", + "power-shell setmode 602", + "uinput -T -d 300 600 -m 300 600 300 100 -u 300 100", + "hilog -b D", + "hilog -Q pidoff", + "hilog -Q domainoff", + "hilog -G 2M" + ] + } + ] +} diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/TestRunner/OpenHarmonyTestRunner.ts b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/TestRunner/OpenHarmonyTestRunner.ts new file mode 100644 index 0000000000000000000000000000000000000000..188fd9a8436db816bad79ac18d88724b7033c48b --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/TestRunner/OpenHarmonyTestRunner.ts @@ -0,0 +1,86 @@ +/* + * Copyright (c) 2023 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 hilog from '@ohos.hilog'; +import TestRunner from '@ohos.application.testRunner'; +import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; + +let abilityDelegator = undefined; +let abilityDelegatorArguments = undefined; + +function translateParamsToString(parameters) { + const keySet = new Set([ + '-s class', '-s notClass', '-s suite', '-s it', + '-s level', '-s testType', '-s size', '-s timeout', + '-s dryRun' + ]) + let targetParams = ''; + for (const key in parameters) { + if (keySet.has(key)) { + targetParams = `${targetParams} ${key} ${parameters[key]}`; + } + } + return targetParams.trim(); +} + +async function onAbilityCreateCallback() { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'onAbilityCreateCallback'); +} + +async function addAbilityMonitorCallback(err: any) { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', 'addAbilityMonitorCallback : %{public}s', JSON.stringify(err) ?? ''); +} + +export default class OpenHarmonyTestRunner implements TestRunner { + constructor() { + } + + onPrepare() { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'OpenHarmonyTestRunner OnPrepare '); + } + + async onRun() { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'OpenHarmonyTestRunner onRun run'); + abilityDelegatorArguments = AbilityDelegatorRegistry.getArguments(); + abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); + let testAbilityName = abilityDelegatorArguments.bundleName + '.TestAbility'; + let lMonitor = { + abilityName: testAbilityName, + onAbilityCreate: onAbilityCreateCallback, + }; + abilityDelegator.addAbilityMonitor(lMonitor, addAbilityMonitorCallback); + let cmd = 'aa start -d 0 -a TestAbility' + ' -b ' + abilityDelegatorArguments.bundleName; + cmd += ' ' + translateParamsToString(abilityDelegatorArguments.parameters); + let debug = abilityDelegatorArguments.parameters['-D']; + if (debug === 'true') + { + cmd += ' -D'; + } + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', 'cmd : %{public}s', cmd); + abilityDelegator.executeShellCommand(cmd, + (err, d) => { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', 'executeShellCommand : err : %{public}s', JSON.stringify(err) ?? ''); + hilog.info(0x0000, 'testTag', 'executeShellCommand : data : %{public}s', d.stdResult ?? ''); + hilog.info(0x0000, 'testTag', 'executeShellCommand : data : %{public}s', d.exitCode ?? ''); + }); + hilog.info(0x0000, 'testTag', '%{public}s', 'OpenHarmonyTestRunner onRun end'); + } +} \ No newline at end of file diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/entryability/EntryAbility.ts b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/entryability/EntryAbility.ts new file mode 100644 index 0000000000000000000000000000000000000000..5a2ad1b43fc919610df43f64ff4f8e01b48a0d29 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/entryability/EntryAbility.ts @@ -0,0 +1,66 @@ +/* + * Copyright (c) 2023 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 hilog from '@ohos.hilog'; +import Ability from '@ohos.app.ability.UIAbility'; +import Window from '@ohos.window'; + +export default class EntryAbility extends Ability { + onCreate(want, launchParam) { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate'); + hilog.info(0x0000, 'testTag', '%{public}s', 'want param:' + JSON.stringify(want) ?? ''); + hilog.info(0x0000, 'testTag', '%{public}s', 'launchParam:' + JSON.stringify(launchParam) ?? ''); + } + + onDestroy() { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onDestroy'); + } + + onWindowStageCreate(windowStage: Window.WindowStage) { + // Main window is created, set main page for this ability + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate'); + + windowStage.loadContent('pages/Index', (err, data) => { + if (err.code) { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.ERROR); + hilog.error(0x0000, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err) ?? ''); + return; + } + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', 'Succeeded in loading the content. Data: %{public}s', JSON.stringify(data) ?? ''); + }); + } + + onWindowStageDestroy() { + // Main window is destroyed, release UI related resources + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageDestroy'); + } + + onForeground() { + // Ability has brought to foreground + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onForeground'); + } + + onBackground() { + // Ability has back to background + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onBackground'); + } +} diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/pages/Index.ets b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/pages/Index.ets new file mode 100644 index 0000000000000000000000000000000000000000..9fc8c2d8e4ffe7920e1d05e0e78fa713f390182e --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/pages/Index.ets @@ -0,0 +1,33 @@ +/* + * Copyright (c) 2023 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. + */ + +@Entry +@Component +struct Index { + @State message: string = 'Hello World'; + + build() { + Row() { + Column() { + Text(this.message) + .fontSize(50) + .fontWeight(FontWeight.Bold) + + } + .width('100%') + } + .height('100%') + } +} \ No newline at end of file diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/test/ActsGetgroupdirTest.test.ets b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/test/ActsGetgroupdirTest.test.ets new file mode 100644 index 0000000000000000000000000000000000000000..231a61a7f4927c27a877e881a0910bdd8f8d1ae9 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/test/ActsGetgroupdirTest.test.ets @@ -0,0 +1,131 @@ +/* + * Copyright (c) 2023 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 hilog from '@ohos.hilog'; +import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from '@ohos/hypium' + +export default function ActsGetgroupdirTest() { + describe('ActsGetgroupdirTest', function () { + beforeAll(function () {}) + beforeEach(function () {}) + afterEach(function () {}) + afterAll(function () {}) + /* + * @tc.number AMS_getGroupDir_001 + * @tc.name getGroupDir + * @tc.desc Function test + * @tc.level 0 + */ + it('AMS_getGroupDir_001',0, async function (done) { + console.log("start AMS_getGroupDir_001 =====>"); + let res; + await globalThis.myContext.getGroupDir("context_test1").then(data => { + console.error("getGroupDir AMS_getGroupDir_001 ====> result data" + data); + expect(data).assertContain("/data/storage/el2/group"); + }).catch((error) => { + console.error("getGroupDir AMS_getGroupDir_001 ====> result err" + JSON.stringify(error)); + expect().assertFail(); + }); + done(); + }) + + /* + * @tc.number AMS_getGroupDir_002 + * @tc.name getGroupDir + * @tc.desc Function test + * @tc.level 0 + */ + it('AMS_getGroupDir_002',0, async function (done) { + console.log("start AMS_getGroupDir_002 =====>"); + await globalThis.myContext.getGroupDir("111").then(data => { + console.error("getGroupDir AMS_getGroupDir_002 ====> result data" + data); + expect(data).assertEqual(""); + }).catch((error) => { + console.error("getGroupDir AMS_getGroupDir_002 ====> result err" + JSON.stringify(error)); + expect().assertFail(); + }); + done(); + }) + + /* + * @tc.number AMS_getGroupDir_003 + * @tc.name getGroupDir + * @tc.desc Function test + * @tc.level 0 + */ + it('AMS_getGroupDir_003',0, async function (done) { + console.log("start AMS_getGroupDir_003 =====>"); + await globalThis.myContext.getGroupDir("context_hap1").then(data => { + console.error("getGroupDir AMS_getGroupDir_003 ====> result data" + data); + expect(data).assertEqual(""); + }).catch((error) => { + console.error("getGroupDir AMS_getGroupDir_003 ====> result err" + JSON.stringify(error)); + expect().assertFail(); + }); + done(); + }) + + /* + * @tc.number AMS_getGroupDir_004 + * @tc.name getGroupDir + * @tc.desc Function test + * @tc.level 0 + */ + it('AMS_getGroupDir_004',0, async function (done) { + console.log("start AMS_getGroupDir_004 =====>"); + await globalThis.myContext.getGroupDir("context_test1", (err, data) => { + console.error("AMS_getGroupDir_004 ====> result data" + data); + console.error("AMS_getGroupDir_004 ====> result err" + JSON.stringify(err)); + expect(data).assertContain("/data/storage/el2/group"); + expect(err).assertNull(); + done(); + }) + }) + + /* + * @tc.number AMS_getGroupDir_005 + * @tc.name getGroupDir + * @tc.desc Function test + * @tc.level 0 + */ + it('AMS_getGroupDir_005',0, async function (done) { + console.log("start AMS_getGroupDir_005 =====>"); + await globalThis.myContext.getGroupDir("", (err, data) => { + console.error("AMS_getGroupDir_005 ====> result data" + data); + console.error("AMS_getGroupDir_005 ====> result err" + JSON.stringify(err)); + expect(data).assertEqual(""); + expect(err).assertNull(); + done(); + }) + }) + + /* + * @tc.number AMS_getGroupDir_006 + * @tc.name getGroupDir + * @tc.desc Function test + * @tc.level 0 + */ + it('AMS_getGroupDir_006',0, async function (done) { + console.log("start AMS_getGroupDir_006 =====>"); + await globalThis.myContext.getGroupDir("context_hap1", (err, data) => { + console.error("AMS_getGroupDir_006 ====> result data" + data); + console.error("AMS_getGroupDir_006 ====> result err" + JSON.stringify(err)); + expect(data).assertEqual(""); + expect(err).assertNull(); + done(); + }) + }) + }) +} \ No newline at end of file diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/test/List.test.ets b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/test/List.test.ets new file mode 100644 index 0000000000000000000000000000000000000000..caebd0cfb4579cb11a43579b22ea4b2d7971f6d2 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/test/List.test.ets @@ -0,0 +1,20 @@ +/* + * Copyright (c) 2023 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 aagetgroupdirTest from './ActsGetgroupdirTest.test'; + +export default function testsuite() { + aagetgroupdirTest(); +} \ No newline at end of file diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/testability/TestAbility.ets b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/testability/TestAbility.ets new file mode 100644 index 0000000000000000000000000000000000000000..652af38479281d31032f9a99224ec4a4ef9381e4 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/testability/TestAbility.ets @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2023 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 hilog from '@ohos.hilog'; +import Ability from '@ohos.app.ability.UIAbility'; +import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; +import { Hypium } from '@ohos/hypium'; +import testsuite from '../test/List.test'; +import Window from '@ohos.window'; + +export default class TestAbility extends Ability { + onCreate(want, launchParam) { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'TestAbility onCreate'); + hilog.info(0x0000, 'testTag', '%{public}s', 'want param:' + JSON.stringify(want) ?? ''); + hilog.info(0x0000, 'testTag', '%{public}s', 'launchParam:'+ JSON.stringify(launchParam) ?? ''); + globalThis.myContext = this.context; + let abilityDelegator: any; + abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); + let abilityDelegatorArguments: any; + abilityDelegatorArguments = AbilityDelegatorRegistry.getArguments(); + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'start run testcase!!!'); + Hypium.hypiumTest(abilityDelegator, abilityDelegatorArguments, testsuite); + } + + onDestroy() { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'TestAbility onDestroy'); + } + + onWindowStageCreate(windowStage: Window.WindowStage) { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'TestAbility onWindowStageCreate'); + windowStage.loadContent('testability/pages/Index', (err, data) => { + if (err.code) { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.ERROR); + hilog.error(0x0000, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err) ?? ''); + return; + } + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', 'Succeeded in loading the content. Data: %{public}s', + JSON.stringify(data) ?? ''); + }); + } + + onWindowStageDestroy() { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'TestAbility onWindowStageDestroy'); + } + + onForeground() { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'TestAbility onForeground'); + } + + onBackground() { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'TestAbility onBackground'); + } +} \ No newline at end of file diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/testability/pages/Index.ets b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/testability/pages/Index.ets new file mode 100644 index 0000000000000000000000000000000000000000..0554acaaa6ed0d2033fbbff765cdcec59154a431 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/ets/testability/pages/Index.ets @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2023 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 hilog from '@ohos.hilog'; + +@Entry +@Component +struct Index { + aboutToAppear() { + hilog.isLoggable(0x0000, 'testTag', hilog.LogLevel.INFO); + hilog.info(0x0000, 'testTag', '%{public}s', 'TestAbility index aboutToAppear'); + } + @State message: string = 'Hello Debuggable'; + build() { + Row() { + Column() { + Text(this.message) + .fontSize(50) + .fontWeight(FontWeight.Bold) + Button() { + Text('next page') + .fontSize(20) + .fontWeight(FontWeight.Bold) + }.type(ButtonType.Capsule) + .margin({ + top: 20 + }) + .backgroundColor('#0D9FFB') + .width('35%') + .height('5%') + .onClick(()=>{ + }) + } + .width('100%') + } + .height('100%') + } + } \ No newline at end of file diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/module.json b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/module.json new file mode 100644 index 0000000000000000000000000000000000000000..7b7b47f86f34c4ff8ee78eab271c777fe0014e63 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/module.json @@ -0,0 +1,47 @@ +{ + "module": { + "name": "entry", + "type": "entry", + "description": "$string:module_desc", + "mainElement": "EntryAbility", + "deviceTypes": [ + "default", + "tablet" + ], + "deliveryWithInstall": true, + "installationFree": false, + "pages": "$profile:main_pages", + "abilities": [ + { + "name": "EntryAbility", + "srcEntrance": "./ets/entryability/EntryAbility.ts", + "description": "$string:EntryAbility_desc", + "icon": "$media:icon", + "label": "$string:EntryAbility_label", + "startWindowIcon": "$media:icon", + "startWindowBackground": "$color:start_window_background", + "visible": true, + "skills": [ + { + "entities": [ + "entity.system.home" + ], + "actions": [ + "action.system.home" + ] + } + ] + }, + { + "name": "TestAbility", + "srcEntrance": "./ets/testability/TestAbility.ets", + "description": "$string:TestAbility_desc", + "icon": "$media:icon", + "label": "$string:TestAbility_label", + "visible": true, + "startWindowIcon": "$media:icon", + "startWindowBackground": "$color:start_window_background" + } + ] + } +} \ No newline at end of file diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/base/element/color.json b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/base/element/color.json new file mode 100644 index 0000000000000000000000000000000000000000..3c712962da3c2751c2b9ddb53559afcbd2b54a02 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/base/element/color.json @@ -0,0 +1,8 @@ +{ + "color": [ + { + "name": "start_window_background", + "value": "#FFFFFF" + } + ] +} \ No newline at end of file diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/base/element/string.json b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/base/element/string.json new file mode 100644 index 0000000000000000000000000000000000000000..d656140d5682ce36990cc9ffa6a0b1bea27df195 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/base/element/string.json @@ -0,0 +1,24 @@ +{ + "string": [ + { + "name": "module_desc", + "value": "module description" + }, + { + "name": "EntryAbility_desc", + "value": "description" + }, + { + "name": "EntryAbility_label", + "value": "label" + }, + { + "name": "TestAbility_desc", + "value": "the test ability" + }, + { + "name": "TestAbility_label", + "value": "test label" + } + ] +} \ No newline at end of file diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/base/media/icon.png b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c Binary files /dev/null and b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/base/media/icon.png differ diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/base/profile/main_pages.json b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/base/profile/main_pages.json new file mode 100644 index 0000000000000000000000000000000000000000..1898d94f58d6128ab712be2c68acc7c98e9ab9ce --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/base/profile/main_pages.json @@ -0,0 +1,5 @@ +{ + "src": [ + "pages/Index" + ] +} diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/en_US/element/string.json b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/en_US/element/string.json new file mode 100644 index 0000000000000000000000000000000000000000..d656140d5682ce36990cc9ffa6a0b1bea27df195 --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/en_US/element/string.json @@ -0,0 +1,24 @@ +{ + "string": [ + { + "name": "module_desc", + "value": "module description" + }, + { + "name": "EntryAbility_desc", + "value": "description" + }, + { + "name": "EntryAbility_label", + "value": "label" + }, + { + "name": "TestAbility_desc", + "value": "the test ability" + }, + { + "name": "TestAbility_label", + "value": "test label" + } + ] +} \ No newline at end of file diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/zh_CN/element/string.json b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/zh_CN/element/string.json new file mode 100644 index 0000000000000000000000000000000000000000..a59fa630544e65c7ea46730e422faa7e3e71325e --- /dev/null +++ b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/entry/src/main/resources/zh_CN/element/string.json @@ -0,0 +1,24 @@ +{ + "string": [ + { + "name": "module_desc", + "value": "模块描述" + }, + { + "name": "EntryAbility_desc", + "value": "description" + }, + { + "name": "EntryAbility_label", + "value": "label" + }, + { + "name": "TestAbility_desc", + "value": "the test ability" + }, + { + "name": "TestAbility_label", + "value": "test label" + } + ] +} \ No newline at end of file diff --git a/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/signature/openharmony_sx.p7b b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/signature/openharmony_sx.p7b new file mode 100644 index 0000000000000000000000000000000000000000..5540c87c1c77d802a1200242f0fbb76c8f5a0bde Binary files /dev/null and b/ability/ability_runtime/stage/actsgetgroupdirtest/actsgetgroupdirtest/signature/openharmony_sx.p7b differ