diff --git a/barrierfree/BUILD.gn b/barrierfree/BUILD.gn index b40a83952a502df10353dadbc1e9960f400d0dd8..33f8bab4092b7e7774b46c761a513f90e3c8ecd6 100644 --- a/barrierfree/BUILD.gn +++ b/barrierfree/BUILD.gn @@ -18,6 +18,8 @@ group("barrierfree") { if (is_standard_system) { deps = [ "accessibilityconfig:ActsAccessibilityConfigTest", + "accessibilityconfigreqwritepermission:ActsAccessibilityConfigReqWritePermissionTest", + "accessibilityconfigreqreadpermission:ActsAccessibilityConfigReqReadPermissionTest", "accessibilityelement:ActsAccessibilityElementTest", "accessibilityevent:ActsAccessibilityEventTest", "accessibilityextension:ActsAccessibilityExtensionTest", diff --git a/barrierfree/accessibilityconfig/Test.json b/barrierfree/accessibilityconfig/Test.json index eea8e56d74290ba0f190a2f86e276942793ccd45..f7ec63a34f4a0e3910cd079aeb84c246c6b33650 100644 --- a/barrierfree/accessibilityconfig/Test.json +++ b/barrierfree/accessibilityconfig/Test.json @@ -18,6 +18,9 @@ }, { "type": "ShellKit", + "run-command": [ + "power-shell setmode 602" + ], "teardown-command":[ "bm uninstall -n com.example.accessibilityconfig" ] diff --git a/barrierfree/accessibilityconfig/entry/src/main/module.json b/barrierfree/accessibilityconfig/entry/src/main/module.json index 716634826d1e04d1e1fc943f51b7bbc6b247a2e8..d38101a073792f97f0c958baaa9788e20809c657 100644 --- a/barrierfree/accessibilityconfig/entry/src/main/module.json +++ b/barrierfree/accessibilityconfig/entry/src/main/module.json @@ -28,6 +28,16 @@ "entity.system.home" ] }] - }] + }], + + "requestPermissions": [{ + "name": "ohos.permission.READ_ACCESSIBILITY_CONFIG", + "reason": "need use ohos.permission.READ_ACCESSIBILITY_CONFIG" + }, + { + "name": "ohos.permission.WRITE_ACCESSIBILITY_CONFIG", + "reason": "need use ohos.permission.WRITE_ACCESSIBILITY_CONFIG" + } + ] } } \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqreadpermission/AppScope/app.json b/barrierfree/accessibilityconfigreqreadpermission/AppScope/app.json new file mode 100644 index 0000000000000000000000000000000000000000..58b2c62b1b4c263a3717aad173175ca529b2cbc2 --- /dev/null +++ b/barrierfree/accessibilityconfigreqreadpermission/AppScope/app.json @@ -0,0 +1,21 @@ +{ + "app": { + "bundleName": "com.example.accessibilityconfigreqreadpermission", + "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": 9, + "targetAPIVersion": 9, + "car": { + "apiCompatibleVersion": 9, + "singleUser": false + } + } +} \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqreadpermission/AppScope/resources/base/element/string.json b/barrierfree/accessibilityconfigreqreadpermission/AppScope/resources/base/element/string.json new file mode 100644 index 0000000000000000000000000000000000000000..2c46549041c0fbe208c580a5587b0dc9b5500dbd --- /dev/null +++ b/barrierfree/accessibilityconfigreqreadpermission/AppScope/resources/base/element/string.json @@ -0,0 +1,12 @@ +{ + "string": [ + { + "name": "app_name", + "value": "ohosProject" + }, + { + "name": "mainability_description", + "value": "ETS_Phone_Empty Stage Ability" + } + ] +} \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqreadpermission/AppScope/resources/base/media/app_icon.png b/barrierfree/accessibilityconfigreqreadpermission/AppScope/resources/base/media/app_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c Binary files /dev/null and b/barrierfree/accessibilityconfigreqreadpermission/AppScope/resources/base/media/app_icon.png differ diff --git a/barrierfree/accessibilityconfigreqreadpermission/BUILD.gn b/barrierfree/accessibilityconfigreqreadpermission/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..03d2d1812978001dcc8670419228c0cf366b7890 --- /dev/null +++ b/barrierfree/accessibilityconfigreqreadpermission/BUILD.gn @@ -0,0 +1,42 @@ +# 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("//test/xts/tools/build/suite.gni") + +ohos_js_hap_suite("ActsAccessibilityConfigReqReadPermissionTest") { + hap_profile = "entry/src/main/module.json" + deps = [ + ":accessibilityconfigreqreadpermission_js_assets", + ":accessibilityconfigreqreadpermission_resources", + ] + ets2abc = true + certificate_profile = "signature/openharmony_sx.p7b" + hap_name = "ActsAccessibilityConfigReqReadPermissionTest" + part_name = "accessibility" + subsystem_name = "barrierfree" +} + +ohos_app_scope("accessibilityconfigreqreadpermission_app_profile") { + app_profile = "AppScope/app.json" + sources = [ "AppScope/resources" ] +} + +ohos_js_assets("accessibilityconfigreqreadpermission_js_assets") { + source_dir = "entry/src/main/ets" +} + +ohos_resources("accessibilityconfigreqreadpermission_resources") { + sources = [ "entry/src/main/resources" ] + deps = [ ":accessibilityconfigreqreadpermission_app_profile" ] + hap_profile = "entry/src/main/module.json" +} diff --git a/barrierfree/accessibilityconfigreqreadpermission/Test.json b/barrierfree/accessibilityconfigreqreadpermission/Test.json new file mode 100644 index 0000000000000000000000000000000000000000..e06203b4e65742be0bbb380db0222e553d97de75 --- /dev/null +++ b/barrierfree/accessibilityconfigreqreadpermission/Test.json @@ -0,0 +1,30 @@ +{ + "description": "Configuration for hjunit demo Tests", + "driver": { + "type": "OHJSUnitTest", + "test-timeout": "240000", + "bundle-name": "com.example.accessibilityconfigreqreadpermission", + "module-name": "phone", + "shell-timeout": "600000", + "testcase-timeout": 70000 + }, + "kits": [ + { + "test-file-name": [ + "ActsAccessibilityConfigReqReadPermissionTest.hap" + ], + "type": "AppInstallKit", + "cleanup-apps": true + }, + { + "type": "ShellKit", + "run-command": [ + "power-shell setmode 602", + "param set persist.ace.testmode.enabled 1" + ], + "teardown-command":[ + "bm uninstall -n com.example.accessibilityconfigreqreadpermission" + ] + } + ] +} \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/Application/AbilityStage.ts b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/Application/AbilityStage.ts new file mode 100644 index 0000000000000000000000000000000000000000..071c0d862407f266470cd7488a13b6bd745ee8fa --- /dev/null +++ b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/Application/AbilityStage.ts @@ -0,0 +1,7 @@ +import AbilityStage from "@ohos.application.AbilityStage" + +export default class MyAbilityStage extends AbilityStage { + onCreate() { + console.log("[Demo] MyAbilityStage onCreate") + } +} diff --git a/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/MainAbility/MainAbility.ts b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/MainAbility/MainAbility.ts new file mode 100644 index 0000000000000000000000000000000000000000..f9014b87a17cf7c30fb45d2f0455ac8e783a64f7 --- /dev/null +++ b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/MainAbility/MainAbility.ts @@ -0,0 +1,52 @@ +/* + * 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 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 windowStage=" + windowStage) + //globalThis.windowStage = windowStage + //globalThis.abilityStorage = this.storage + globalThis.abilityContext = this.context + windowStage.setUIContent(this.context, "MainAbility/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/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/MainAbility/pages/index/index.ets b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/MainAbility/pages/index/index.ets new file mode 100644 index 0000000000000000000000000000000000000000..04a0764afe12c378c1ea002ae58dfa6ed73290d1 --- /dev/null +++ b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/MainAbility/pages/index/index.ets @@ -0,0 +1,37 @@ +/* + * 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 router from '@ohos.router'; + +@Entry +@Component +struct Index { + @State message: string = 'request read permission for configuration'; + + aboutToAppear(){ + console.info("start run testcase!!!!"); + } + + build() { + Row() { + Column() { + Text(this.message) + .fontSize(50) + .fontWeight(FontWeight.Bold) + } + .width('100%') + } + .height('100%') + } +} \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/TestAbility/TestAbility.ts b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/TestAbility/TestAbility.ts new file mode 100644 index 0000000000000000000000000000000000000000..78935adb89211ab492fb41a13635b475f5224b0b --- /dev/null +++ b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/TestAbility/TestAbility.ts @@ -0,0 +1,53 @@ +/* + * 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 Ability from '@ohos.application.Ability' +import AbilityDelegatorRegistry from '@ohos.application.abilityDelegatorRegistry' +import { Hypium } from '@ohos/hypium' +import testsuite from '../test/List.test' + +export default class TestAbility extends Ability { + onCreate(want, launchParam) { + console.log('TestAbility onCreate') + var abilityDelegator: any + abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator() + var abilityDelegatorArguments: any + abilityDelegatorArguments = AbilityDelegatorRegistry.getArguments() + console.info('start run testcase!!!') + Hypium.hypiumTest(abilityDelegator, abilityDelegatorArguments, testsuite) + } + + onDestroy() { + console.log('TestAbility onDestroy') + } + + onWindowStageCreate(windowStage) { + console.log('TestAbility onWindowStageCreate') + windowStage.setUIContent(this.context, 'TestAbility/pages/index', null) + + globalThis.abilityContext = this.context; + } + + onWindowStageDestroy() { + console.log('TestAbility onWindowStageDestroy') + } + + onForeground() { + console.log('TestAbility onForeground') + } + + onBackground() { + console.log('TestAbility onBackground') + } +}; \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/TestAbility/pages/index.ets b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/TestAbility/pages/index.ets new file mode 100644 index 0000000000000000000000000000000000000000..e29d33fb1f74914762edf3a6b3abc01b92299ad3 --- /dev/null +++ b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/TestAbility/pages/index.ets @@ -0,0 +1,48 @@ +/* + * 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 router from '@ohos.router'; + +@Entry +@Component +struct Index { + aboutToAppear() { + console.info('TestAbility index aboutToAppear') + } + @State message: string = 'Hello World' + 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/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/TestRunner/OpenHarmonyTestRunner.ts b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/TestRunner/OpenHarmonyTestRunner.ts new file mode 100644 index 0000000000000000000000000000000000000000..8a7aa876957265ef4af010a245082752ac364887 --- /dev/null +++ b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/TestRunner/OpenHarmonyTestRunner.ts @@ -0,0 +1,72 @@ +/* + * 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 TestRunner from '@ohos.application.testRunner' +import AbilityDelegatorRegistry from '@ohos.application.abilityDelegatorRegistry' + +var abilityDelegator = undefined +var 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' + ]) + let targetParams = ''; + for (const key in parameters) { + if (keySet.has(key)) { + targetParams = `${targetParams} ${key} ${parameters[key]}` + } + } + return targetParams.trim() +} + +async function onAbilityCreateCallback() { + console.log("onAbilityCreateCallback"); +} + +async function addAbilityMonitorCallback(err: any) { + console.info("addAbilityMonitorCallback : " + JSON.stringify(err)) +} + +export default class OpenHarmonyTestRunner implements TestRunner { + constructor() { + } + + onPrepare() { + console.info("OpenHarmonyTestRunner OnPrepare ") + } + + async onRun() { + console.log('OpenHarmonyTestRunner onRun run') + abilityDelegatorArguments = AbilityDelegatorRegistry.getArguments() + abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator() + var testAbilityName = abilityDelegatorArguments.bundleName + '.TestAbility' + let lMonitor = { + abilityName: testAbilityName, + onAbilityCreate: onAbilityCreateCallback, + }; + abilityDelegator.addAbilityMonitor(lMonitor, addAbilityMonitorCallback) + var cmd = 'aa start -d 0 -a TestAbility' + ' -b ' + abilityDelegatorArguments.bundleName + cmd += ' '+translateParamsToString(abilityDelegatorArguments.parameters) + console.info('cmd : '+cmd) + abilityDelegator.executeShellCommand(cmd, + (err: any, d: any) => { + console.info('executeShellCommand : err : ' + JSON.stringify(err)); + console.info('executeShellCommand : data : ' + d.stdResult); + console.info('executeShellCommand : data : ' + d.exitCode); + }) + console.info('OpenHarmonyTestRunner onRun end') + } +}; \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/test/AccessibilityConfigReqReadPermission.test.ets b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/test/AccessibilityConfigReqReadPermission.test.ets new file mode 100644 index 0000000000000000000000000000000000000000..35e9ae4cce9b851a8911c086be3d992db489dfde --- /dev/null +++ b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/test/AccessibilityConfigReqReadPermission.test.ets @@ -0,0 +1,451 @@ +/* + * 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 { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from "@ohos/hypium" +import config from '@ohos.accessibility.config' + +export default function abilityTest() { + describe('AccessibilityConfigReqReadPermissionTest', function () { + + beforeEach(async function (done) { + console.info(`AccessibilityConfigReqReadPermissionTest: beforeEach starts`); + done(); + }) + + afterEach(async function (done) { + console.info(`AccessibilityConfigReqReadPermissionTest: afterEach starts`); + setTimeout(done, 1000); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncCallback_0100 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncCallback_0100 + * @tc.desc Test highContrastText.set() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_0100', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_0100'); + config.highContrastText.set(true, (err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncCallback_0100 has no write permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncPromise_0200 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncPromise_0200 + * @tc.desc Test highContrastText.set() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_0200', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_0200'); + config.highContrastText.set(false).then((result) => { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncPromise_0200 has no write permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncCallback_0700 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncCallback_0700 + * @tc.desc Test invertColor.set() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_0700', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_0700'); + config.invertColor.set(true, (err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncCallback_0700 has no write permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncPromise_0800 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncPromise_0800 + * @tc.desc Test invertColor.set() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_0800', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_0800'); + config.invertColor.set(false).then((result) => { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncPromise_0800 has no write permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncCallback_1300 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncCallback_1300 + * @tc.desc Test contentTimeout.set() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_1300', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_1300'); + config.contentTimeout.set(0, (err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncCallback_1300 has no write permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncPromise_1400 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncPromise_1400 + * @tc.desc Test contentTimeout.set() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_1400', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_1400'); + config.contentTimeout.set(5000).then((result) => { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncPromise_1400 has no write permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncCallback_1900 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncCallback_1900 + * @tc.desc Test animationOff.set() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_1900', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_1900'); + config.animationOff.set(true, (err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncCallback_1900 has no write permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncPromise_2000 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncPromise_2000 + * @tc.desc Test animationOff.set() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_2000', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_2000'); + config.animationOff.set(false).then((result) => { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncPromise_2000 has no write permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncCallback_2500 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncCallback_2500 + * @tc.desc Test brightnessDiscount.set() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_2500', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_2500'); + config.brightnessDiscount.set(0.1, (err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncCallback_2500 has no write permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncPromise_2600 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncPromise_2600 + * @tc.desc Test brightnessDiscount.set() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_2600', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_2600'); + config.brightnessDiscount.set(0.9).then((result) => { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncPromise_2600 has no write permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncCallback_4900 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncCallback_4900 + * @tc.desc Test mouseKey.set() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_4900', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_4900'); + config.mouseKey.set(true, (err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncCallback_4900 has no write permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncPromise_5000 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncPromise_5000 + * @tc.desc Test mouseKey.set() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_5000', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_5000'); + config.mouseKey.set(false).then((result) => { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncPromise_5000 has no write permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncCallback_5500 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncCallback_5500 + * @tc.desc Test mouseAutoClick.set() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_5500', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_5500'); + config.mouseAutoClick.set(-1, (err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncCallback_5500 has no write permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncPromise_5600 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncPromise_5600 + * @tc.desc Test mouseAutoClick.set() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_5600', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_5600'); + config.mouseAutoClick.set(5000).then((result) => { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncPromise_5600 has no write permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncCallback_6100 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncCallback_6100 + * @tc.desc Test shortkey.set() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_6100', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_6100'); + config.shortkey.set(true, (err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncCallback_6100 has no write permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncPromise_6200 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncPromise_6200 + * @tc.desc Test shortkey.set() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_6200', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_6200'); + config.shortkey.set(false).then((result) => { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncPromise_6200 has no write permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncCallback_6700 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncCallback_6700 + * @tc.desc Test shortkeyTarget.set() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_6700', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_6700'); + let value = 'teststr' + config.shortkeyTarget.set(value, (err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncCallback_6700 has no write permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncPromise_6800 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncPromise_6800 + * @tc.desc Test shortkeyTarget.set() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_6800', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_6800'); + let value = 'test' + config.shortkeyTarget.set(value).then((result) => { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncPromise_6800 has no write permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncCallback_7900 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncCallback_7900 + * @tc.desc Test daltonizationColorFilter.set() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_7900', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_7900'); + config.daltonizationColorFilter.set('Normal', (err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncCallback_7900 has no write permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncCallback_8000 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncCallback_8000 + * @tc.desc Test daltonizationColorFilter.set() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_8000', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncCallback_8000'); + config.daltonizationColorFilter.set('Deuteranomaly', (err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncCallback_8000 has no write permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncPromise_8100 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncPromise_8100 + * @tc.desc Test daltonizationColorFilter.set() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_8100', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_8100'); + config.daltonizationColorFilter.set('Protanomaly').then((result) => { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncPromise_8100 has no write permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqReadPermissionTest_set_asyncPromise_8200 + * @tc.name AccessibilityConfigReqReadPermissionTest_set_asyncPromise_8200 + * @tc.desc Test daltonizationColorFilter.set() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_8200', 0, async function(done) { + console.info('AccessibilityConfigReqReadPermissionTest_set_asyncPromise_8200'); + config.daltonizationColorFilter.set('Tritanomaly').then((result) => { + console.error(`AccessibilityConfigReqReadPermissionTest_set_asyncPromise_8200 has no write permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + }) +} \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/test/List.test.ets b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/test/List.test.ets new file mode 100644 index 0000000000000000000000000000000000000000..6b5047885bd4e364ca87d44927ee6cd5a66c36d3 --- /dev/null +++ b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/ets/test/List.test.ets @@ -0,0 +1,19 @@ +/* + * 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 abilityTest from './AccessibilityConfigReqReadPermission.test.ets' + +export default function testsuite() { + abilityTest() +} \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/module.json b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/module.json new file mode 100644 index 0000000000000000000000000000000000000000..0e143873751b5baafdce38de07409ba5d2d9d404 --- /dev/null +++ b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/module.json @@ -0,0 +1,39 @@ +{ + "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": "TestAbility", + "srcEntrance": "./ets/TestAbility/TestAbility.ts", + "description": "$string:phone_entry_main", + "icon": "$media:icon", + "label": "$string:entry_label", + "visible": true, + "orientation": "portrait", + "skills": [{ + "actions": [ + "action.system.home" + ], + "entities": [ + "entity.system.home" + ] + }] + }], + + "requestPermissions": [{ + "name": "ohos.permission.READ_ACCESSIBILITY_CONFIG", + "reason": "need use ohos.permission.READ_ACCESSIBILITY_CONFIG" + } + ] + } +} \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/resources/base/element/string.json b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/resources/base/element/string.json new file mode 100644 index 0000000000000000000000000000000000000000..45a71c1e5142f79ebcef5bb613c1ca3b711c950f --- /dev/null +++ b/barrierfree/accessibilityconfigreqreadpermission/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": "ActsAccessibilityConfigReqReadPermissionTest" + }, + { + "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": "Accessibility_desc", + "value": "accessibility_description" + }, + { + "name": "Accessibility_label", + "value": "accessibility_label" + } + ] +} diff --git a/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/resources/base/media/icon.png b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c Binary files /dev/null and b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/resources/base/media/icon.png differ diff --git a/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/resources/base/profile/main_pages.json b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/resources/base/profile/main_pages.json new file mode 100644 index 0000000000000000000000000000000000000000..43f5bb10ddb7e3fc4aa0b71a76818b8b48cc5bc2 --- /dev/null +++ b/barrierfree/accessibilityconfigreqreadpermission/entry/src/main/resources/base/profile/main_pages.json @@ -0,0 +1,5 @@ +{ + "src": [ + "TestAbility/pages/index" + ] +} \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqreadpermission/signature/openharmony_sx.p7b b/barrierfree/accessibilityconfigreqreadpermission/signature/openharmony_sx.p7b new file mode 100644 index 0000000000000000000000000000000000000000..7ffcdc78527c5c1aa24520ab7e913c5f47c703f0 Binary files /dev/null and b/barrierfree/accessibilityconfigreqreadpermission/signature/openharmony_sx.p7b differ diff --git a/barrierfree/accessibilityconfigreqwritepermission/AppScope/app.json b/barrierfree/accessibilityconfigreqwritepermission/AppScope/app.json new file mode 100644 index 0000000000000000000000000000000000000000..ba716ccae636be40953ffdbcf4ffda4b903022f7 --- /dev/null +++ b/barrierfree/accessibilityconfigreqwritepermission/AppScope/app.json @@ -0,0 +1,21 @@ +{ + "app": { + "bundleName": "com.example.accessibilityconfigreqwritepermission", + "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": 9, + "targetAPIVersion": 9, + "car": { + "apiCompatibleVersion": 9, + "singleUser": false + } + } +} \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqwritepermission/AppScope/resources/base/element/string.json b/barrierfree/accessibilityconfigreqwritepermission/AppScope/resources/base/element/string.json new file mode 100644 index 0000000000000000000000000000000000000000..2c46549041c0fbe208c580a5587b0dc9b5500dbd --- /dev/null +++ b/barrierfree/accessibilityconfigreqwritepermission/AppScope/resources/base/element/string.json @@ -0,0 +1,12 @@ +{ + "string": [ + { + "name": "app_name", + "value": "ohosProject" + }, + { + "name": "mainability_description", + "value": "ETS_Phone_Empty Stage Ability" + } + ] +} \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqwritepermission/AppScope/resources/base/media/app_icon.png b/barrierfree/accessibilityconfigreqwritepermission/AppScope/resources/base/media/app_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c Binary files /dev/null and b/barrierfree/accessibilityconfigreqwritepermission/AppScope/resources/base/media/app_icon.png differ diff --git a/barrierfree/accessibilityconfigreqwritepermission/BUILD.gn b/barrierfree/accessibilityconfigreqwritepermission/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..39519ef5f650bba186849f39b49d54d8394dea95 --- /dev/null +++ b/barrierfree/accessibilityconfigreqwritepermission/BUILD.gn @@ -0,0 +1,42 @@ +# 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("//test/xts/tools/build/suite.gni") + +ohos_js_hap_suite("ActsAccessibilityConfigReqWritePermissionTest") { + hap_profile = "entry/src/main/module.json" + deps = [ + ":accessibilityconfigreqwritepermission_js_assets", + ":accessibilityconfigreqwritepermission_resources", + ] + ets2abc = true + certificate_profile = "signature/openharmony_sx.p7b" + hap_name = "ActsAccessibilityConfigReqWritePermissionTest" + part_name = "accessibility" + subsystem_name = "barrierfree" +} + +ohos_app_scope("accessibilityconfigreqwritepermission_app_profile") { + app_profile = "AppScope/app.json" + sources = [ "AppScope/resources" ] +} + +ohos_js_assets("accessibilityconfigreqwritepermission_js_assets") { + source_dir = "entry/src/main/ets" +} + +ohos_resources("accessibilityconfigreqwritepermission_resources") { + sources = [ "entry/src/main/resources" ] + deps = [ ":accessibilityconfigreqwritepermission_app_profile" ] + hap_profile = "entry/src/main/module.json" +} diff --git a/barrierfree/accessibilityconfigreqwritepermission/Test.json b/barrierfree/accessibilityconfigreqwritepermission/Test.json new file mode 100644 index 0000000000000000000000000000000000000000..e87928be912a004154abf8f95fea87f94ce4d79f --- /dev/null +++ b/barrierfree/accessibilityconfigreqwritepermission/Test.json @@ -0,0 +1,30 @@ +{ + "description": "Configuration for hjunit demo Tests", + "driver": { + "type": "OHJSUnitTest", + "test-timeout": "240000", + "bundle-name": "com.example.accessibilityconfigreqwritepermission", + "module-name": "phone", + "shell-timeout": "600000", + "testcase-timeout": 70000 + }, + "kits": [ + { + "test-file-name": [ + "ActsAccessibilityConfigReqWritePermissionTest.hap" + ], + "type": "AppInstallKit", + "cleanup-apps": true + }, + { + "type": "ShellKit", + "run-command": [ + "power-shell setmode 602", + "param set persist.ace.testmode.enabled 1" + ], + "teardown-command":[ + "bm uninstall -n com.example.accessibilityconfigreqwritepermission" + ] + } + ] +} \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/Application/AbilityStage.ts b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/Application/AbilityStage.ts new file mode 100644 index 0000000000000000000000000000000000000000..071c0d862407f266470cd7488a13b6bd745ee8fa --- /dev/null +++ b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/Application/AbilityStage.ts @@ -0,0 +1,7 @@ +import AbilityStage from "@ohos.application.AbilityStage" + +export default class MyAbilityStage extends AbilityStage { + onCreate() { + console.log("[Demo] MyAbilityStage onCreate") + } +} diff --git a/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/MainAbility/MainAbility.ts b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/MainAbility/MainAbility.ts new file mode 100644 index 0000000000000000000000000000000000000000..f9014b87a17cf7c30fb45d2f0455ac8e783a64f7 --- /dev/null +++ b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/MainAbility/MainAbility.ts @@ -0,0 +1,52 @@ +/* + * 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 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 windowStage=" + windowStage) + //globalThis.windowStage = windowStage + //globalThis.abilityStorage = this.storage + globalThis.abilityContext = this.context + windowStage.setUIContent(this.context, "MainAbility/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/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/MainAbility/pages/index/index.ets b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/MainAbility/pages/index/index.ets new file mode 100644 index 0000000000000000000000000000000000000000..8da0a30ab3307f925e6c51d4a574d0f035a0980d --- /dev/null +++ b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/MainAbility/pages/index/index.ets @@ -0,0 +1,37 @@ +/* + * 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 router from '@ohos.router'; + +@Entry +@Component +struct Index { + @State message: string = 'request write permission for configuration'; + + aboutToAppear(){ + console.info("start run testcase!!!!"); + } + + build() { + Row() { + Column() { + Text(this.message) + .fontSize(50) + .fontWeight(FontWeight.Bold) + } + .width('100%') + } + .height('100%') + } +} \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/TestAbility/TestAbility.ts b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/TestAbility/TestAbility.ts new file mode 100644 index 0000000000000000000000000000000000000000..78935adb89211ab492fb41a13635b475f5224b0b --- /dev/null +++ b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/TestAbility/TestAbility.ts @@ -0,0 +1,53 @@ +/* + * 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 Ability from '@ohos.application.Ability' +import AbilityDelegatorRegistry from '@ohos.application.abilityDelegatorRegistry' +import { Hypium } from '@ohos/hypium' +import testsuite from '../test/List.test' + +export default class TestAbility extends Ability { + onCreate(want, launchParam) { + console.log('TestAbility onCreate') + var abilityDelegator: any + abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator() + var abilityDelegatorArguments: any + abilityDelegatorArguments = AbilityDelegatorRegistry.getArguments() + console.info('start run testcase!!!') + Hypium.hypiumTest(abilityDelegator, abilityDelegatorArguments, testsuite) + } + + onDestroy() { + console.log('TestAbility onDestroy') + } + + onWindowStageCreate(windowStage) { + console.log('TestAbility onWindowStageCreate') + windowStage.setUIContent(this.context, 'TestAbility/pages/index', null) + + globalThis.abilityContext = this.context; + } + + onWindowStageDestroy() { + console.log('TestAbility onWindowStageDestroy') + } + + onForeground() { + console.log('TestAbility onForeground') + } + + onBackground() { + console.log('TestAbility onBackground') + } +}; \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/TestAbility/pages/index.ets b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/TestAbility/pages/index.ets new file mode 100644 index 0000000000000000000000000000000000000000..e29d33fb1f74914762edf3a6b3abc01b92299ad3 --- /dev/null +++ b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/TestAbility/pages/index.ets @@ -0,0 +1,48 @@ +/* + * 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 router from '@ohos.router'; + +@Entry +@Component +struct Index { + aboutToAppear() { + console.info('TestAbility index aboutToAppear') + } + @State message: string = 'Hello World' + 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/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/TestRunner/OpenHarmonyTestRunner.ts b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/TestRunner/OpenHarmonyTestRunner.ts new file mode 100644 index 0000000000000000000000000000000000000000..8a7aa876957265ef4af010a245082752ac364887 --- /dev/null +++ b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/TestRunner/OpenHarmonyTestRunner.ts @@ -0,0 +1,72 @@ +/* + * 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 TestRunner from '@ohos.application.testRunner' +import AbilityDelegatorRegistry from '@ohos.application.abilityDelegatorRegistry' + +var abilityDelegator = undefined +var 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' + ]) + let targetParams = ''; + for (const key in parameters) { + if (keySet.has(key)) { + targetParams = `${targetParams} ${key} ${parameters[key]}` + } + } + return targetParams.trim() +} + +async function onAbilityCreateCallback() { + console.log("onAbilityCreateCallback"); +} + +async function addAbilityMonitorCallback(err: any) { + console.info("addAbilityMonitorCallback : " + JSON.stringify(err)) +} + +export default class OpenHarmonyTestRunner implements TestRunner { + constructor() { + } + + onPrepare() { + console.info("OpenHarmonyTestRunner OnPrepare ") + } + + async onRun() { + console.log('OpenHarmonyTestRunner onRun run') + abilityDelegatorArguments = AbilityDelegatorRegistry.getArguments() + abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator() + var testAbilityName = abilityDelegatorArguments.bundleName + '.TestAbility' + let lMonitor = { + abilityName: testAbilityName, + onAbilityCreate: onAbilityCreateCallback, + }; + abilityDelegator.addAbilityMonitor(lMonitor, addAbilityMonitorCallback) + var cmd = 'aa start -d 0 -a TestAbility' + ' -b ' + abilityDelegatorArguments.bundleName + cmd += ' '+translateParamsToString(abilityDelegatorArguments.parameters) + console.info('cmd : '+cmd) + abilityDelegator.executeShellCommand(cmd, + (err: any, d: any) => { + console.info('executeShellCommand : err : ' + JSON.stringify(err)); + console.info('executeShellCommand : data : ' + d.stdResult); + console.info('executeShellCommand : data : ' + d.exitCode); + }) + console.info('OpenHarmonyTestRunner onRun end') + } +}; \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/test/AccessibilityConfigReqWritePermission.test.ets b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/test/AccessibilityConfigReqWritePermission.test.ets new file mode 100644 index 0000000000000000000000000000000000000000..08c684eb49b7bb611642b20f02f5761e34a15a78 --- /dev/null +++ b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/test/AccessibilityConfigReqWritePermission.test.ets @@ -0,0 +1,410 @@ +/* + * 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 { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from "@ohos/hypium" +import config from '@ohos.accessibility.config' + +export default function abilityTest() { + describe('AccessibilityConfigReqWritePermissionTest', function () { + + beforeEach(async function (done) { + console.info(`AccessibilityConfigReqWritePermissionTest: beforeEach starts`); + done(); + }) + + afterEach(async function (done) { + console.info(`AccessibilityConfigReqWritePermissionTest: afterEach starts`); + setTimeout(done, 1000); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncCallback_0300 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncCallback_0300 + * @tc.desc Test highContrastText.get() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_0300', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_0300'); + config.highContrastText.get((err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncCallback_0300 has no read permission`); + expect(null).assertFail(); + } + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncPromise_0400 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncPromise_0400 + * @tc.desc Test highContrastText.get() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_0400', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_0400'); + config.highContrastText.get().then((result) => { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncPromise_0400 has no read permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncCallback_0900 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncCallback_0900 + * @tc.desc Test invertColor.get() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_0900', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_0900'); + config.invertColor.get((err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncCallback_0900 has no read permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncPromise_1000 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncPromise_1000 + * @tc.desc Test invertColor.get() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_1000', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_1000'); + config.invertColor.get().then((result) => { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncPromise_1000 has no read permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncCallback_1500 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncCallback_1500 + * @tc.desc Test contentTimeout.get() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_1500', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_1500'); + config.contentTimeout.get((err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncCallback_1500 has no read permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncPromise_1600 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncPromise_1600 + * @tc.desc Test contentTimeout.get() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_1600', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_1600'); + config.contentTimeout.get().then((result) => { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncPromise_1600 has no read permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncCallback_2100 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncCallback_2100 + * @tc.desc Test animationOff.get() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_2100', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_2100'); + config.animationOff.get((err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncCallback_2100 has no read permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncPromise_2200 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncPromise_2200 + * @tc.desc Test animationOff.get() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_2200', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_2200'); + config.animationOff.get().then((result) => { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncPromise_2200 has no read permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncCallback_2700 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncCallback_2700 + * @tc.desc Test brightnessDiscount.get() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_2700', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_2700'); + config.brightnessDiscount.get((err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncCallback_2700 has no read permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncPromise_2800 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncPromise_2800 + * @tc.desc Test brightnessDiscount.get() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_2800', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_2800'); + config.brightnessDiscount.get().then((result) => { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncPromise_2800 has no read permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncCallback_5100 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncCallback_5100 + * @tc.desc Test mouseKey.get() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_5100', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_5100'); + config.mouseKey.get((err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncCallback_5100 has no read permission`); + expect(null).assertFail();} + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncPromise_5200 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncPromise_5200 + * @tc.desc Test mouseKey.get() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_5200', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_5200'); + config.mouseKey.get().then((result) => { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncPromise_5200 has no read permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncCallback_5700 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncCallback_5700 + * @tc.desc Test mouseAutoClick.get() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_5700', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_5700'); + config.mouseAutoClick.get((err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncCallback_5700 has no read permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncPromise_5800 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncPromise_5800 + * @tc.desc Test mouseAutoClick.get() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_5800', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_5800'); + config.mouseAutoClick.get().then((result) => { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncPromise_5800 has no read permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncCallback_6300 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncCallback_6300 + * @tc.desc Test shortkey.get() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_6300', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_6300'); + config.shortkey.get((err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncCallback_6300 has no read permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncPromise_6400 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncPromise_6400 + * @tc.desc Test shortkey.get() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_6400', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_6400'); + config.shortkey.get().then((result) => { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncPromise_6400 has no read permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncCallback_6900 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncCallback_6900 + * @tc.desc Test shortkeyTarget.get() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_6900', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_6900'); + config.shortkeyTarget.get((err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncCallback_6900 has no read permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncPromise_7000 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncPromise_7000 + * @tc.desc Test shortkeyTarget.get() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_7000', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_7000'); + config.shortkeyTarget.get().then((result) => { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncPromise_7000 has no read permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncCallback_8300 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncCallback_8300 + * @tc.desc Test daltonizationColorFilter.get() function in callback mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_8300', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncCallback_8300'); + config.daltonizationColorFilter.get((err, result) => { + if (err.code != 0) { + expect(true).assertTrue(); + } else { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncCallback_8300 has no read permission`); + expect(null).assertFail(); + } + }); + done(); + }) + + /* + * @tc.number AccessibilityConfigReqWritePermissionTest_get_asyncPromise_8400 + * @tc.name AccessibilityConfigReqWritePermissionTest_get_asyncPromise_8400 + * @tc.desc Test daltonizationColorFilter.get() function in promise mode. + * @tc.size SmallTest + * @tc.type User + */ + it('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_8400', 0, async function(done) { + console.info('AccessibilityConfigReqWritePermissionTest_get_asyncPromise_8400'); + config.daltonizationColorFilter.get().then((result) => { + console.error(`AccessibilityConfigReqWritePermissionTest_get_asyncPromise_8400 has no read permission`); + expect(null).assertFail(); + done(); + }).catch((err) => { + done(); + }); + }) + }) +} \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/test/List.test.ets b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/test/List.test.ets new file mode 100644 index 0000000000000000000000000000000000000000..969213e45501dd65068b0b4e4231e5abc7e91b97 --- /dev/null +++ b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/ets/test/List.test.ets @@ -0,0 +1,19 @@ +/* + * 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 abilityTest from './AccessibilityConfigReqWritePermission.test.ets' + +export default function testsuite() { + abilityTest() +} \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/module.json b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/module.json new file mode 100644 index 0000000000000000000000000000000000000000..9db80b74c05a5ca054560920b7c4990be6e23119 --- /dev/null +++ b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/module.json @@ -0,0 +1,39 @@ +{ + "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": "TestAbility", + "srcEntrance": "./ets/TestAbility/TestAbility.ts", + "description": "$string:phone_entry_main", + "icon": "$media:icon", + "label": "$string:entry_label", + "visible": true, + "orientation": "portrait", + "skills": [{ + "actions": [ + "action.system.home" + ], + "entities": [ + "entity.system.home" + ] + }] + }], + + "requestPermissions": [{ + "name": "ohos.permission.WRITE_ACCESSIBILITY_CONFIG", + "reason": "need use ohos.permission.WRITE_ACCESSIBILITY_CONFIG" + } + ] + } +} \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/resources/base/element/string.json b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/resources/base/element/string.json new file mode 100644 index 0000000000000000000000000000000000000000..2c6b10a3d2830f07880af1a74c78b2d3c4945a11 --- /dev/null +++ b/barrierfree/accessibilityconfigreqwritepermission/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": "ActsAccessibilityConfigReqWritePermissionTest" + }, + { + "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": "Accessibility_desc", + "value": "accessibility_description" + }, + { + "name": "Accessibility_label", + "value": "accessibility_label" + } + ] +} diff --git a/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/resources/base/media/icon.png b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c Binary files /dev/null and b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/resources/base/media/icon.png differ diff --git a/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/resources/base/profile/main_pages.json b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/resources/base/profile/main_pages.json new file mode 100644 index 0000000000000000000000000000000000000000..43f5bb10ddb7e3fc4aa0b71a76818b8b48cc5bc2 --- /dev/null +++ b/barrierfree/accessibilityconfigreqwritepermission/entry/src/main/resources/base/profile/main_pages.json @@ -0,0 +1,5 @@ +{ + "src": [ + "TestAbility/pages/index" + ] +} \ No newline at end of file diff --git a/barrierfree/accessibilityconfigreqwritepermission/signature/openharmony_sx.p7b b/barrierfree/accessibilityconfigreqwritepermission/signature/openharmony_sx.p7b new file mode 100644 index 0000000000000000000000000000000000000000..7ffcdc78527c5c1aa24520ab7e913c5f47c703f0 Binary files /dev/null and b/barrierfree/accessibilityconfigreqwritepermission/signature/openharmony_sx.p7b differ