提交 e40a84cc 编写于 作者: J jiyong_sd

Adapt to the new framework

Signed-off-by: Njiyong_sd <jiyong@huawei.com>
Change-Id: I473f6d482d5ea09855afcc269f304b122f436205
上级 d736bfc3
......@@ -9,7 +9,7 @@
# 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.
# limitations under the License.
import("//test/xts/tools/build/suite.gni")
......
......@@ -9,7 +9,7 @@
# 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.
# limitations under the License.
import("//test/xts/tools/build/suite.gni")
......
{
"app": {
"bundleName": "com.amsst.stdataability",
"vendor": "test",
"version": {
"code": 1000110,
"name": "1.1.1"
},
"apiVersion": {
"compatible": 9,
"target": 9
}
},
"deviceConfig": {},
"module": {
"package": "com.amsst.stdataability",
"name": ".MyApplication",
"mainAbility": ".MainAbility",
"srcPath": "",
"deviceType": [
"phone"
],
"distro": {
"deliveryWithInstall": true,
"moduleName": "entry",
"moduleType": "entry",
"installationFree": false
},
"abilities": [
{
"skills": [
{
"entities": [
"entity.system.home"
],
"actions": [
"action.system.home"
]
}
],
"orientation": "unspecified",
"visible": true,
"srcPath": "MainAbility",
"name": ".MainAbility",
"srcLanguage": "ets",
"icon": "$media:icon",
"description": "$string:description_mainability",
"formsEnabled": false,
"label": "$string:entry_MainAbility",
"type": "page",
"launchType": "standard"
},
{
"srcPath": "TestDataAbility",
"name": ".TestDataAbility",
"icon": "$media:icon",
"srcLanguage": "ets",
"description": "$string:description_testdataability",
"type": "data",
"visible": true,
"uri": "dataability://com.example.myapplication.DataAbility"
},
{
"srcPath": "TestDataAbility2",
"name": ".TestDataAbility2",
"icon": "$media:icon",
"srcLanguage": "ets",
"description": "$string:description_testdataability",
"type": "data",
"visible": true,
"uri": "dataability://com.example.myapplication.DataAbility2"
}
],
"js": [
{
"mode": {
"syntax": "ets",
"type": "pageAbility"
},
"pages": [
"pages/index",
"pages/second"
],
"name": ".MainAbility",
"window": {
"designWidth": 720,
"autoDesignWidth": false
}
}
],
"defPermissions": [
{
"name": "com.ohos.screenlock.DataAbilityShellProvider.PROVIDER"
}
]
}
}
{
"app": {
"bundleName": "com.amsst.stdataability",
"vendor": "test",
"version": {
"code": 1000110,
"name": "1.1.1"
},
"apiVersion": {
"compatible": 9,
"target": 9
}
},
"deviceConfig": {},
"module": {
"package": "com.amsst.stdataability",
"name": ".MyApplication",
"mainAbility": ".MainAbility",
"srcPath": "",
"deviceType": [
"phone"
],
"distro": {
"deliveryWithInstall": true,
"moduleName": "entry",
"moduleType": "entry",
"installationFree": false
},
"abilities": [
{
"skills": [
{
"entities": [
"entity.system.home"
],
"actions": [
"action.system.home"
]
}
],
"orientation": "unspecified",
"visible": true,
"srcPath": "MainAbility",
"name": ".MainAbility",
"srcLanguage": "ets",
"icon": "$media:icon",
"description": "$string:description_mainability",
"formsEnabled": false,
"label": "$string:entry_MainAbility",
"type": "page",
"launchType": "standard"
},
{
"srcPath": "TestDataAbility",
"name": ".TestDataAbility",
"icon": "$media:icon",
"srcLanguage": "ets",
"description": "$string:description_testdataability",
"type": "data",
"visible": true,
"uri": "dataability://com.example.myapplication.DataAbility"
},
{
"srcPath": "TestDataAbility2",
"name": ".TestDataAbility2",
"icon": "$media:icon",
"srcLanguage": "ets",
"description": "$string:description_testdataability",
"type": "data",
"visible": true,
"uri": "dataability://com.example.myapplication.DataAbility2"
}
],
"js": [
{
"mode": {
"syntax": "ets",
"type": "pageAbility"
},
"pages": [
"pages/index",
"pages/second"
],
"name": ".MainAbility",
"window": {
"designWidth": 720,
"autoDesignWidth": false
}
}
],
"defPermissions": [
{
"name": "com.ohos.screenlock.DataAbilityShellProvider.PROVIDER"
}
]
}
}
/*
* 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 AbilityStage from "@ohos.application.AbilityStage"
export default class MyAbilityStage extends AbilityStage {
onCreate() {
console.log("MyAbilityStage onCreate");
}
/*
* 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 AbilityStage from "@ohos.application.AbilityStage"
export default class MyAbilityStage extends AbilityStage {
onCreate() {
console.log("MyAbilityStage onCreate");
}
}
\ No newline at end of file
/*
* Copyright (C) 2022 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import Ability from '@ohos.application.Ability'
export default class MainAbility extends Ability {
onCreate(want, launchParam) {
console.log("jws onCreate");
}
onDestroy() {
console.log("jws onDestroy");
}
onWindowStageCreate(windowStage) {
console.log("jws onWindowStageCreate");
}
onWindowStageDestroy() {
console.log("jws onWindowStageDestroy");
}
onForeground() {
console.log("jws onForeground");
}
onBackground() {
console.log("jws onBackground");
}
call(){
}
/*
* 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) {
console.log("jws onCreate");
}
onDestroy() {
console.log("jws onDestroy");
}
onWindowStageCreate(windowStage) {
console.log("jws onWindowStageCreate");
}
onWindowStageDestroy() {
console.log("jws onWindowStageDestroy");
}
onForeground() {
console.log("jws onForeground");
}
onBackground() {
console.log("jws onBackground");
}
call(){
}
}
\ No newline at end of file
/*
* Copyright (C) 2022 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
export default {
onCreate() {
console.info('Application onCreate')
},
onDestroy() {
console.info('Application onDestroy')
},
/*
* 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.
*/
export default {
onCreate() {
console.info('Application onCreate')
},
onDestroy() {
console.info('Application onDestroy')
},
}
\ No newline at end of file
/*
* Copyright (C) 2022 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import {Core} from 'deccjsunit/index'
@Entry
@Component
struct Index {
aboutToAppear() {
console.info('onShow finish')
const core = Core.getInstance()
core.init()
const configService = core.getDefaultService('config')
configService.setConfig(this)
core.execute()
}
build() {
Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {
Text('Hello World')
.fontSize(50)
.fontWeight(FontWeight.Bold)
}
.width('100%')
.height('100%')
}
/*
* 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 {Core} from 'deccjsunit/index'
@Entry
@Component
struct Index {
aboutToAppear() {
console.info('onShow finish')
const core = Core.getInstance()
core.init()
const configService = core.getDefaultService('config')
configService.setConfig(this)
core.execute()
}
build() {
Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {
Text('Hello World')
.fontSize(50)
.fontWeight(FontWeight.Bold)
}
.width('100%')
.height('100%')
}
}
\ No newline at end of file
/*
* Copyright (C) 2022 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import router from '@system.router';
@Entry
@Component
struct Second {
private content: string = "Second Page"
build() {
Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {
Text(`${this.content}`)
.fontSize(50)
.fontWeight(FontWeight.Bold)
Button() {
Text('back to index')
.fontSize(20)
.fontWeight(FontWeight.Bold)
}.type(ButtonType.Capsule)
.margin({
top: 20
})
.backgroundColor('#0D9FFB')
.onClick(() => {
router.back()
})
}
.width('100%')
.height('100%')
}
/*
* 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 '@system.router';
@Entry
@Component
struct Second {
private content: string = "Second Page"
build() {
Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {
Text(`${this.content}`)
.fontSize(50)
.fontWeight(FontWeight.Bold)
Button() {
Text('back to index')
.fontSize(20)
.fontWeight(FontWeight.Bold)
}.type(ButtonType.Capsule)
.margin({
top: 20
})
.backgroundColor('#0D9FFB')
.onClick(() => {
router.back()
})
}
.width('100%')
.height('100%')
}
}
\ No newline at end of file
/*
* 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 dataAbility from '@ohos.data.dataAbility'
import featureAbility from '@ohos.ability.featureAbility'
import fileio from '@ohos.fileio'
import dataRdb from '@ohos.data.rdb'
const TABLE_NAME = 'book'
const STORE_CONFIG = {name: 'book.db'}
const SQL_CREATE_TABLE = 'CREATE TABLE IF NOT EXISTS book' +
'(id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, age INTEGER, introduction TEXT NOT NULL)'
let rdbStore: any = undefined
const TAG = 'ACTS_ DataAbility.data'
const context = featureAbility.getContext()
let defaultReturn = 1;
let returnError = 0;
let returnError1 = -1;
let returnError2 = -2;
let returnError3 = -3;
let dataAbilityUri = ("dataability:///com.example.myapplication.DataAbility");
export default {
onInitialized(abilityInfo) {
console.debug('ACTS_ DataAbility onInitialized,abilityInfo=' + abilityInfo.bundleName)
dataRdb.getRdbStore(context, STORE_CONFIG, 1, (err, store) => {
console.debug('ACTS_ [data]getRdbStoreThen')
store.executeSql(SQL_CREATE_TABLE, [])
rdbStore = store
});
},
insert(uri, valueBucket, callback) {
console.debug(TAG + ' insert start 1121')
console.debug(TAG + ' valueBucket json=>' + JSON.stringify(valueBucket))
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
console.debug(TAG + ' valueBucket.age =>' + valueBucket.age)
console.debug(TAG + ' valueBucket.name =>' + valueBucket.name)
console.debug(TAG + ' valueBucket.salary =>' + valueBucket.salary)
if (valueBucket.age != 24) {
err = "Error age"
callback(err, returnError2);
}
if (valueBucket.name != "ActsDataAbilityHelperTest") {
err = "Error name"
callback(err, returnError2);
}
if (valueBucket.salary != 2024.20) {
err = "Error salary"
callback(err, returnError2);
}
err = "Error insert"
console.debug(TAG + ' rdbStore.insert ')
rdbStore.insert(TABLE_NAME, valueBucket, function (err, resultSet) {
console.log(TAG + "insert callback resultSet:" + resultSet
+ " ,json=" + JSON.stringify(resultSet) + ' ,err' + err)
callback(err, defaultReturn);
})
},
query(uri, columns, predicates, callback) {
console.debug(TAG + ' query start')
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
let rdbPredicates = dataAbility.createRdbPredicates(TABLE_NAME, predicates)
rdbStore.query(rdbPredicates, columns, callback)
},
update(uri, valueBucket, predicates, callback) {
console.debug(TAG + 'update start')
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
console.debug(TAG + ' valueBucket.age =>' + valueBucket.age)
console.debug(TAG + ' valueBucket.name =>' + valueBucket.name)
console.debug(TAG + ' valueBucket.salary =>' + valueBucket.salary)
if (valueBucket.age != 24) {
err = "Error age"
callback(err, returnError2);
}
if (valueBucket.name != "ActsDataAbilityHelperTest") {
err = "Error name"
callback(err, returnError2);
}
if (valueBucket.salary != 2024.20) {
err = "Error salary"
callback(err, returnError2);
}
err = "Error update"
let rdbPredicates = dataAbility.createRdbPredicates(TABLE_NAME, predicates)
rdbStore.update(valueBucket, rdbPredicates, function (err, resultSet) {
console.log(TAG + "insert callback resultSet:" + resultSet
+ " ,json=" + JSON.stringify(resultSet) + ' ,err' + err)
callback(err, defaultReturn);
})
},
delete(uri, predicates, callback) {
console.debug(TAG + 'delete start')
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
let rdbPredicates = dataAbility.createRdbPredicates(TABLE_NAME, predicates)
rdbStore.delete(rdbPredicates, function (err, resultSet) {
console.log(TAG + "insert callback resultSet:" + resultSet
+ " ,json=" + JSON.stringify(resultSet) + ' ,err' + err)
callback(err, defaultReturn);
})
},
call(uri, method, arg, extras, callback) {
console.debug(TAG + 'call start')
console.debug(TAG + 'uri---->' + uri)
console.debug(TAG + 'method---->' + uri)
},
batchInsert(uri, values, callback) {
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
for (var j = 0; j < values.length; j++) {
rdbStore.insert("EMPLOYEE", values[j], function (err, ret) {
console.log(TAG + "batchInsert callback ret:" + JSON.stringify(ret))
})
}
console.log(TAG + "batchInsert values.length:" + values.length + ' ,json=' + JSON.stringify(values.length))
callback(err, values.length);
},
getType(uri, callback) {
console.info(TAG + '==================== DataAbility test interface by getType ================');
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
callback("success", uri);
},
getFileTypes(uri, mimeTypeFilter, callback) {
console.info(TAG + '==================== DataAbility test interface by GetFileTypes ================');
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
let type1 = " ";
let type2 = " ";
let type3 = " ";
let types;
if (mimeTypeFilter == "*/*") {
type1 = ("hap");
type2 = ("jpg");
type3 = ("image/png");
types = [type1, type2, type3];
} else if (mimeTypeFilter == "image/*") {
type1 = ("image/png");
types = [type1];
} else if (mimeTypeFilter == "*/jpg") {
type1 = ("jpg");
types = [type1];
}
console.log(TAG + "GetFileTypes callback ret:" + JSON.stringify(types))
callback("success", types);
},
openFile(uri, mode, callback) {
console.info(TAG + '==================== DataAbility test interface by openFile ================');
let defaultReturn = 1;
let returnError1 = -1;
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
if (!(mode == ("r") || mode == ("w") || mode == ("wt") || mode == ("wa") ||
mode == ("rw") || mode == ("rwt"))) {
if (mode == ("A1@k#4%$,.<>)(oioiu*((*&(&*giIGT^%&^Ug;sdfk;losd*7873iug8%&^$&%]ERFUy&^%&&R7")) {
defaultReturn = returnError2;
} else
defaultReturn = returnError3;
}
console.info(TAG + " path = /data/test ");
let path = "/data/test"
fileio.stat(path).then(function (stat) {
console.info(TAG + "openFile getFileInfo successfully callback ret:" + JSON.stringify(stat));
}).catch(function (err) {
console.info(TAG + "openFile getFileInfo failed with error callback ret:" + err);
defaultReturn = returnError1;
});
console.info(TAG + " path ==>" + path);
callback("success", defaultReturn);
},
normalizeUri(uri, callback) {
console.info(TAG + '==================== DataAbility test interface by normalizeUri ================');
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, "");
}
callback("success", uri);
},
denormalizeUri(uri, callback) {
console.info(TAG + '==================== DataAbility test interface by denormalizeUri ================');
console.info(TAG + "denormalizeUri uri:" + JSON.stringify(uri));
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, "");
}
callback("success", uri);
}
/*
* 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 dataAbility from '@ohos.data.dataAbility'
import featureAbility from '@ohos.ability.featureAbility'
import fileio from '@ohos.fileio'
import dataRdb from '@ohos.data.rdb'
const TABLE_NAME = 'book'
const STORE_CONFIG = {name: 'book.db'}
const SQL_CREATE_TABLE = 'CREATE TABLE IF NOT EXISTS book' +
'(id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, age INTEGER, introduction TEXT NOT NULL)'
let rdbStore: any = undefined
const TAG = 'ACTS_ DataAbility.data'
const context = featureAbility.getContext()
let defaultReturn = 1;
let returnError = 0;
let returnError1 = -1;
let returnError2 = -2;
let returnError3 = -3;
let dataAbilityUri = ("dataability:///com.example.myapplication.DataAbility");
export default {
onInitialized(abilityInfo) {
console.debug('ACTS_ DataAbility onInitialized,abilityInfo=' + abilityInfo.bundleName)
dataRdb.getRdbStore(context, STORE_CONFIG, 1, (err, store) => {
console.debug('ACTS_ [data]getRdbStoreThen')
store.executeSql(SQL_CREATE_TABLE, [])
rdbStore = store
});
},
insert(uri, valueBucket, callback) {
console.debug(TAG + ' insert start 1121')
console.debug(TAG + ' valueBucket json=>' + JSON.stringify(valueBucket))
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
console.debug(TAG + ' valueBucket.age =>' + valueBucket.age)
console.debug(TAG + ' valueBucket.name =>' + valueBucket.name)
console.debug(TAG + ' valueBucket.salary =>' + valueBucket.salary)
if (valueBucket.age != 24) {
err = "Error age"
callback(err, returnError2);
}
if (valueBucket.name != "ActsDataAbilityHelperTest") {
err = "Error name"
callback(err, returnError2);
}
if (valueBucket.salary != 2024.20) {
err = "Error salary"
callback(err, returnError2);
}
err = "Error insert"
console.debug(TAG + ' rdbStore.insert ')
rdbStore.insert(TABLE_NAME, valueBucket, function (err, resultSet) {
console.log(TAG + "insert callback resultSet:" + resultSet
+ " ,json=" + JSON.stringify(resultSet) + ' ,err' + err)
callback(err, defaultReturn);
})
},
query(uri, columns, predicates, callback) {
console.debug(TAG + ' query start')
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
let rdbPredicates = dataAbility.createRdbPredicates(TABLE_NAME, predicates)
rdbStore.query(rdbPredicates, columns, callback)
},
update(uri, valueBucket, predicates, callback) {
console.debug(TAG + 'update start')
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
console.debug(TAG + ' valueBucket.age =>' + valueBucket.age)
console.debug(TAG + ' valueBucket.name =>' + valueBucket.name)
console.debug(TAG + ' valueBucket.salary =>' + valueBucket.salary)
if (valueBucket.age != 24) {
err = "Error age"
callback(err, returnError2);
}
if (valueBucket.name != "ActsDataAbilityHelperTest") {
err = "Error name"
callback(err, returnError2);
}
if (valueBucket.salary != 2024.20) {
err = "Error salary"
callback(err, returnError2);
}
err = "Error update"
let rdbPredicates = dataAbility.createRdbPredicates(TABLE_NAME, predicates)
rdbStore.update(valueBucket, rdbPredicates, function (err, resultSet) {
console.log(TAG + "insert callback resultSet:" + resultSet
+ " ,json=" + JSON.stringify(resultSet) + ' ,err' + err)
callback(err, defaultReturn);
})
},
delete(uri, predicates, callback) {
console.debug(TAG + 'delete start')
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
let rdbPredicates = dataAbility.createRdbPredicates(TABLE_NAME, predicates)
rdbStore.delete(rdbPredicates, function (err, resultSet) {
console.log(TAG + "insert callback resultSet:" + resultSet
+ " ,json=" + JSON.stringify(resultSet) + ' ,err' + err)
callback(err, defaultReturn);
})
},
call(uri, method, arg, extras, callback) {
console.debug(TAG + 'call start')
console.debug(TAG + 'uri---->' + uri)
console.debug(TAG + 'method---->' + uri)
},
batchInsert(uri, values, callback) {
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
for (var j = 0; j < values.length; j++) {
rdbStore.insert("EMPLOYEE", values[j], function (err, ret) {
console.log(TAG + "batchInsert callback ret:" + JSON.stringify(ret))
})
}
console.log(TAG + "batchInsert values.length:" + values.length + ' ,json=' + JSON.stringify(values.length))
callback(err, values.length);
},
getType(uri, callback) {
console.info(TAG + '==================== DataAbility test interface by getType ================');
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
callback("success", uri);
},
getFileTypes(uri, mimeTypeFilter, callback) {
console.info(TAG + '==================== DataAbility test interface by GetFileTypes ================');
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
let type1 = " ";
let type2 = " ";
let type3 = " ";
let types;
if (mimeTypeFilter == "*/*") {
type1 = ("hap");
type2 = ("jpg");
type3 = ("image/png");
types = [type1, type2, type3];
} else if (mimeTypeFilter == "image/*") {
type1 = ("image/png");
types = [type1];
} else if (mimeTypeFilter == "*/jpg") {
type1 = ("jpg");
types = [type1];
}
console.log(TAG + "GetFileTypes callback ret:" + JSON.stringify(types))
callback("success", types);
},
openFile(uri, mode, callback) {
console.info(TAG + '==================== DataAbility test interface by openFile ================');
let defaultReturn = 1;
let returnError1 = -1;
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
if (!(mode == ("r") || mode == ("w") || mode == ("wt") || mode == ("wa") ||
mode == ("rw") || mode == ("rwt"))) {
if (mode == ("A1@k#4%$,.<>)(oioiu*((*&(&*giIGT^%&^Ug;sdfk;losd*7873iug8%&^$&%]ERFUy&^%&&R7")) {
defaultReturn = returnError2;
} else
defaultReturn = returnError3;
}
console.info(TAG + " path = /data/test ");
let path = "/data/test"
fileio.stat(path).then(function (stat) {
console.info(TAG + "openFile getFileInfo successfully callback ret:" + JSON.stringify(stat));
}).catch(function (err) {
console.info(TAG + "openFile getFileInfo failed with error callback ret:" + err);
defaultReturn = returnError1;
});
console.info(TAG + " path ==>" + path);
callback("success", defaultReturn);
},
normalizeUri(uri, callback) {
console.info(TAG + '==================== DataAbility test interface by normalizeUri ================');
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, "");
}
callback("success", uri);
},
denormalizeUri(uri, callback) {
console.info(TAG + '==================== DataAbility test interface by denormalizeUri ================');
console.info(TAG + "denormalizeUri uri:" + JSON.stringify(uri));
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, "");
}
callback("success", uri);
}
};
\ No newline at end of file
/*
* Copyright (C) 2022 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import dataAbility from '@ohos.data.dataAbility'
import featureAbility from '@ohos.ability.featureAbility'
import fileio from '@ohos.fileio'
import dataRdb from '@ohos.data.rdb'
const TABLE_NAME = 'book'
const STORE_CONFIG = {name: 'book.db'}
const SQL_CREATE_TABLE = 'CREATE TABLE IF NOT EXISTS book' +
'(id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, age INTEGER, introduction TEXT NOT NULL)'
let rdbStore: any = undefined
const TAG = 'ACTS_ DataAbility.data'
const context = featureAbility.getContext()
let defaultReturn = 1;
let returnError = 0;
let returnError1 = -1;
let returnError2 = -2;
let returnError3 = -3;
let dataAbilityUri = ("dataability:///com.example.myapplication.DataAbility2");
export default {
onInitialized(abilityInfo) {
console.debug('ACTS_ DataAbility onInitialized,abilityInfo=' + abilityInfo.bundleName)
dataRdb.getRdbStore(context, STORE_CONFIG, 1, (err, store) => {
console.debug('ACTS_ [data]getRdbStoreThen')
store.executeSql(SQL_CREATE_TABLE, [])
rdbStore = store
});
},
insert(uri, valueBucket, callback) {
console.debug(TAG + ' insert start 1121')
console.debug(TAG + ' valueBucket json=>' + JSON.stringify(valueBucket))
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
console.debug(TAG + ' valueBucket.age =>' + valueBucket.age)
console.debug(TAG + ' valueBucket.name =>' + valueBucket.name)
console.debug(TAG + ' valueBucket.salary =>' + valueBucket.salary)
if (valueBucket.age != 24) {
err = "Error age"
callback(err, returnError2);
}
if (valueBucket.name != "ActsDataAbilityHelperTest") {
err = "Error name"
callback(err, returnError2);
}
if (valueBucket.salary != 2024.20) {
err = "Error salary"
callback(err, returnError2);
}
err = "Error insert"
console.debug(TAG + ' rdbStore.insert ')
rdbStore.insert(TABLE_NAME, valueBucket, function (err, resultSet) {
console.log(TAG + "insert callback resultSet:" + resultSet
+ " ,json=" + JSON.stringify(resultSet) + ' ,err' + err)
callback(err, defaultReturn);
})
},
query(uri, columns, predicates, callback) {
console.debug(TAG + ' query start')
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
let rdbPredicates = dataAbility.createRdbPredicates(TABLE_NAME, predicates)
rdbStore.query(rdbPredicates, columns, callback)
},
update(uri, valueBucket, predicates, callback) {
console.debug(TAG + 'update start')
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
console.debug(TAG + ' valueBucket.age =>' + valueBucket.age)
console.debug(TAG + ' valueBucket.name =>' + valueBucket.name)
console.debug(TAG + ' valueBucket.salary =>' + valueBucket.salary)
if (valueBucket.age != 24) {
err = "Error age"
callback(err, returnError2);
}
if (valueBucket.name != "ActsDataAbilityHelperTest") {
err = "Error name"
callback(err, returnError2);
}
if (valueBucket.salary != 2024.20) {
err = "Error salary"
callback(err, returnError2);
}
err = "Error update"
let rdbPredicates = dataAbility.createRdbPredicates(TABLE_NAME, predicates)
rdbStore.update(valueBucket, rdbPredicates, function (err, resultSet) {
console.log(TAG + "insert callback resultSet:" + resultSet
+ " ,json=" + JSON.stringify(resultSet) + ' ,err' + err)
callback(err, defaultReturn);
})
},
delete(uri, predicates, callback) {
console.debug(TAG + 'delete start')
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
let rdbPredicates = dataAbility.createRdbPredicates(TABLE_NAME, predicates)
rdbStore.delete(rdbPredicates, function (err, resultSet) {
console.log(TAG + "insert callback resultSet:" + resultSet
+ " ,json=" + JSON.stringify(resultSet) + ' ,err' + err)
callback(err, defaultReturn);
})
},
call(uri, method, arg, extras, callback) {
console.debug(TAG + 'call start')
console.debug(TAG + 'uri---->' + uri)
console.debug(TAG + 'method---->' + uri)
},
batchInsert(uri, values, callback) {
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
for (var j = 0; j < values.length; j++) {
rdbStore.insert("EMPLOYEE", values[j], function (err, ret) {
console.log(TAG + "batchInsert callback ret:" + JSON.stringify(ret))
})
}
console.log(TAG + "batchInsert values.length:" + values.length + ' ,json=' + JSON.stringify(values.length))
callback(err, values.length);
},
getType(uri, callback) {
console.info(TAG + '==================== DataAbility test interface by getType ================');
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
callback("success", uri);
},
getFileTypes(uri, mimeTypeFilter, callback) {
console.info(TAG + '==================== DataAbility test interface by GetFileTypes ================');
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
let type1 = " ";
let type2 = " ";
let type3 = " ";
let types;
if (mimeTypeFilter == "*/*") {
type1 = ("hap");
type2 = ("jpg");
type3 = ("image/png");
types = [type1, type2, type3];
} else if (mimeTypeFilter == "image/*") {
type1 = ("image/png");
types = [type1];
} else if (mimeTypeFilter == "*/jpg") {
type1 = ("jpg");
types = [type1];
}
console.log(TAG + "GetFileTypes callback ret:" + JSON.stringify(types))
callback("success", types);
},
openFile(uri, mode, callback) {
console.info(TAG + '==================== DataAbility test interface by openFile ================');
let defaultReturn = 1;
let returnError1 = -1;
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
if (!(mode == ("r") || mode == ("w") || mode == ("wt") || mode == ("wa") ||
mode == ("rw") || mode == ("rwt"))) {
if (mode == ("A1@k#4%$,.<>)(oioiu*((*&(&*giIGT^%&^Ug;sdfk;losd*7873iug8%&^$&%]ERFUy&^%&&R7")) {
defaultReturn = returnError2;
} else
defaultReturn = returnError3;
}
console.info(TAG + " path = /data/test ");
let path = "/data/test"
fileio.stat(path).then(function (stat) {
console.info(TAG + "openFile getFileInfo successfully callback ret:" + JSON.stringify(stat));
}).catch(function (err) {
console.info(TAG + "openFile getFileInfo failed with error callback ret:" + err);
defaultReturn = returnError1;
});
console.info(TAG + " path ==>" + path);
callback("success", defaultReturn);
},
normalizeUri(uri, callback) {
console.info(TAG + '==================== DataAbility test interface by normalizeUri ================');
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, "");
}
callback("success", uri);
},
denormalizeUri(uri, callback) {
console.info(TAG + '==================== DataAbility test interface by denormalizeUri ================');
console.info(TAG + "denormalizeUri uri:" + JSON.stringify(uri));
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, "");
}
callback("success", uri);
}
/*
* 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 dataAbility from '@ohos.data.dataAbility'
import featureAbility from '@ohos.ability.featureAbility'
import fileio from '@ohos.fileio'
import dataRdb from '@ohos.data.rdb'
const TABLE_NAME = 'book'
const STORE_CONFIG = {name: 'book.db'}
const SQL_CREATE_TABLE = 'CREATE TABLE IF NOT EXISTS book' +
'(id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, age INTEGER, introduction TEXT NOT NULL)'
let rdbStore: any = undefined
const TAG = 'ACTS_ DataAbility.data'
const context = featureAbility.getContext()
let defaultReturn = 1;
let returnError = 0;
let returnError1 = -1;
let returnError2 = -2;
let returnError3 = -3;
let dataAbilityUri = ("dataability:///com.example.myapplication.DataAbility2");
export default {
onInitialized(abilityInfo) {
console.debug('ACTS_ DataAbility onInitialized,abilityInfo=' + abilityInfo.bundleName)
dataRdb.getRdbStore(context, STORE_CONFIG, 1, (err, store) => {
console.debug('ACTS_ [data]getRdbStoreThen')
store.executeSql(SQL_CREATE_TABLE, [])
rdbStore = store
});
},
insert(uri, valueBucket, callback) {
console.debug(TAG + ' insert start 1121')
console.debug(TAG + ' valueBucket json=>' + JSON.stringify(valueBucket))
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
console.debug(TAG + ' valueBucket.age =>' + valueBucket.age)
console.debug(TAG + ' valueBucket.name =>' + valueBucket.name)
console.debug(TAG + ' valueBucket.salary =>' + valueBucket.salary)
if (valueBucket.age != 24) {
err = "Error age"
callback(err, returnError2);
}
if (valueBucket.name != "ActsDataAbilityHelperTest") {
err = "Error name"
callback(err, returnError2);
}
if (valueBucket.salary != 2024.20) {
err = "Error salary"
callback(err, returnError2);
}
err = "Error insert"
console.debug(TAG + ' rdbStore.insert ')
rdbStore.insert(TABLE_NAME, valueBucket, function (err, resultSet) {
console.log(TAG + "insert callback resultSet:" + resultSet
+ " ,json=" + JSON.stringify(resultSet) + ' ,err' + err)
callback(err, defaultReturn);
})
},
query(uri, columns, predicates, callback) {
console.debug(TAG + ' query start')
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
let rdbPredicates = dataAbility.createRdbPredicates(TABLE_NAME, predicates)
rdbStore.query(rdbPredicates, columns, callback)
},
update(uri, valueBucket, predicates, callback) {
console.debug(TAG + 'update start')
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
console.debug(TAG + ' valueBucket.age =>' + valueBucket.age)
console.debug(TAG + ' valueBucket.name =>' + valueBucket.name)
console.debug(TAG + ' valueBucket.salary =>' + valueBucket.salary)
if (valueBucket.age != 24) {
err = "Error age"
callback(err, returnError2);
}
if (valueBucket.name != "ActsDataAbilityHelperTest") {
err = "Error name"
callback(err, returnError2);
}
if (valueBucket.salary != 2024.20) {
err = "Error salary"
callback(err, returnError2);
}
err = "Error update"
let rdbPredicates = dataAbility.createRdbPredicates(TABLE_NAME, predicates)
rdbStore.update(valueBucket, rdbPredicates, function (err, resultSet) {
console.log(TAG + "insert callback resultSet:" + resultSet
+ " ,json=" + JSON.stringify(resultSet) + ' ,err' + err)
callback(err, defaultReturn);
})
},
delete(uri, predicates, callback) {
console.debug(TAG + 'delete start')
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
let rdbPredicates = dataAbility.createRdbPredicates(TABLE_NAME, predicates)
rdbStore.delete(rdbPredicates, function (err, resultSet) {
console.log(TAG + "insert callback resultSet:" + resultSet
+ " ,json=" + JSON.stringify(resultSet) + ' ,err' + err)
callback(err, defaultReturn);
})
},
call(uri, method, arg, extras, callback) {
console.debug(TAG + 'call start')
console.debug(TAG + 'uri---->' + uri)
console.debug(TAG + 'method---->' + uri)
},
batchInsert(uri, values, callback) {
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
for (var j = 0; j < values.length; j++) {
rdbStore.insert("EMPLOYEE", values[j], function (err, ret) {
console.log(TAG + "batchInsert callback ret:" + JSON.stringify(ret))
})
}
console.log(TAG + "batchInsert values.length:" + values.length + ' ,json=' + JSON.stringify(values.length))
callback(err, values.length);
},
getType(uri, callback) {
console.info(TAG + '==================== DataAbility test interface by getType ================');
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
callback("success", uri);
},
getFileTypes(uri, mimeTypeFilter, callback) {
console.info(TAG + '==================== DataAbility test interface by GetFileTypes ================');
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
let type1 = " ";
let type2 = " ";
let type3 = " ";
let types;
if (mimeTypeFilter == "*/*") {
type1 = ("hap");
type2 = ("jpg");
type3 = ("image/png");
types = [type1, type2, type3];
} else if (mimeTypeFilter == "image/*") {
type1 = ("image/png");
types = [type1];
} else if (mimeTypeFilter == "*/jpg") {
type1 = ("jpg");
types = [type1];
}
console.log(TAG + "GetFileTypes callback ret:" + JSON.stringify(types))
callback("success", types);
},
openFile(uri, mode, callback) {
console.info(TAG + '==================== DataAbility test interface by openFile ================');
let defaultReturn = 1;
let returnError1 = -1;
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, returnError1);
}
if (!(mode == ("r") || mode == ("w") || mode == ("wt") || mode == ("wa") ||
mode == ("rw") || mode == ("rwt"))) {
if (mode == ("A1@k#4%$,.<>)(oioiu*((*&(&*giIGT^%&^Ug;sdfk;losd*7873iug8%&^$&%]ERFUy&^%&&R7")) {
defaultReturn = returnError2;
} else
defaultReturn = returnError3;
}
console.info(TAG + " path = /data/test ");
let path = "/data/test"
fileio.stat(path).then(function (stat) {
console.info(TAG + "openFile getFileInfo successfully callback ret:" + JSON.stringify(stat));
}).catch(function (err) {
console.info(TAG + "openFile getFileInfo failed with error callback ret:" + err);
defaultReturn = returnError1;
});
console.info(TAG + " path ==>" + path);
callback("success", defaultReturn);
},
normalizeUri(uri, callback) {
console.info(TAG + '==================== DataAbility test interface by normalizeUri ================');
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, "");
}
callback("success", uri);
},
denormalizeUri(uri, callback) {
console.info(TAG + '==================== DataAbility test interface by denormalizeUri ================');
console.info(TAG + "denormalizeUri uri:" + JSON.stringify(uri));
let err = "Error Uri"
if (uri != dataAbilityUri) {
console.debug(TAG + ' uri != dataAbilityUri')
callback(err, "");
}
callback("success", uri);
}
};
\ No newline at end of file
{
"string": [
{
"name": "entry_MainAbility",
"value": "ServiceExtAbility"
},
{
"name": "description_mainability",
"value": "eTS_Empty Ability"
},
{
"name": "description_serviceextability",
"value": "hap sample empty service"
},
{
"name": "description_dataability",
"value": "hap sample empty provider"
},
{
"name": "description_mainability2",
"value": "eTS_Empty Ability"
},
{
"name": "entry_MainAbility2",
"value": "entry_MainAbility2"
},
{
"name": "description_testdataability",
"value": "hap sample empty provider"
},
{
"name": "permreason_dataability",
"value": "request dataability premission"
}
]
{
"string": [
{
"name": "entry_MainAbility",
"value": "ServiceExtAbility"
},
{
"name": "description_mainability",
"value": "eTS_Empty Ability"
},
{
"name": "description_serviceextability",
"value": "hap sample empty service"
},
{
"name": "description_dataability",
"value": "hap sample empty provider"
},
{
"name": "description_mainability2",
"value": "eTS_Empty Ability"
},
{
"name": "entry_MainAbility2",
"value": "entry_MainAbility2"
},
{
"name": "description_testdataability",
"value": "hap sample empty provider"
},
{
"name": "permreason_dataability",
"value": "request dataability premission"
}
]
}
\ No newline at end of file
......@@ -9,13 +9,13 @@
# 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.
# limitations under the License.
import("//test/xts/tools/build/suite.gni")
ohos_js_hap_suite("ActsFWKDataAccessorTest") {
hap_profile = "./src/main/config.json"
hap_name = "ActsFWKDataAccessorTest"
hap_profile = "./entry/src/main/config.json"
deps = [
":hjs_demo_js_assets",
":hjs_demo_resources",
......@@ -23,9 +23,11 @@ ohos_js_hap_suite("ActsFWKDataAccessorTest") {
certificate_profile = "./signature/openharmony_sx.p7b"
}
ohos_js_assets("hjs_demo_js_assets") {
source_dir = "./entry/src/main/js/default"
js2abc = true
hap_profile = "./src/main/config.json"
source_dir = "./src/main/js"
}
ohos_resources("hjs_demo_resources") {
sources = [ "./entry/src/main/js/resources" ]
hap_profile = "./entry/src/main/config.json"
sources = [ "./src/main/resources" ]
hap_profile = "./src/main/config.json"
}
{
"description": "Configuration for hjunit demo Tests",
"driver": {
"type": "JSUnitTest",
"test-timeout": "180000",
"package": "com.amsst.fwkdataaccessor",
"shell-timeout": "60000"
},
"kits": [
{
"test-file-name": [
"ActsFWKDataAccessorTest.hap",
"ActsDataAbilityRelyHap.hap"
],
"type": "AppInstallKit",
"cleanup-apps": true
}
]
}
{
"description": "Configuration for hjunit demo Tests",
"driver": {
"type": "OHJSUnitTest",
"test-timeout": "180000",
"shell-timeout": "180000",
"bundle-name": "com.amsst.fwkdataaccessor",
"package-name": "com.amsst.fwkdataaccessor"
},
"kits": [
{
"test-file-name": [
"ActsFWKDataAccessorTest.hap",
"ActsDataAbilityRelyHap.hap"
],
"type": "AppInstallKit",
"cleanup-apps": true
}
]
}
\ No newline at end of file
{
"app": {
"bundleName": "com.amsst.fwkdataaccessor",
"vendor": "amsst",
"version": {
"code": 1,
"name": "1.0"
},
"apiVersion": {
"compatible": 4,
"target": 5,
"releaseType": "Beta1"
}
},
"deviceConfig": {},
"module": {
"package": "com.amsst.fwkdataaccessor",
"name": ".MyApplication",
"deviceType": [
"phone"
],
"distro": {
"deliveryWithInstall": true,
"moduleName": "entry",
"moduleType": "entry"
},
"abilities": [
{
"skills": [
{
"entities": [
"entity.system.home",
"flag.home.intent.from.system"
],
"actions": [
"action.system.home"
]
}
],
"name": "com.amsst.fwkdataaccessor.MainAbility",
"icon": "$media:icon",
"description": "$string:mainability_description",
"label": "$string:app_name",
"type": "page",
"launchType": "standard",
"visible": true
}
],
"js": [
{
"pages": [
"pages/index/index"
],
"name": "default",
"window": {
"designWidth": 720,
"autoDesignWidth": false
}
}
]
}
}
\ No newline at end of file
{
"app": {
"bundleName": "com.amsst.fwkdataaccessor",
"vendor": "amsst",
"version": {
"code": 1,
"name": "1.0"
},
"apiVersion": {
"compatible": 4,
"target": 5,
"releaseType": "Beta1"
}
},
"deviceConfig": {},
"module": {
"package": "com.amsst.fwkdataaccessor",
"name": ".entry",
"deviceType": [
"phone"
],
"distro": {
"deliveryWithInstall": true,
"moduleName": "entry",
"moduleType": "entry"
},
"abilities": [
{
"skills": [
{
"entities": [
"entity.system.home"
],
"actions": [
"action.system.home"
]
}
],
"orientation": "unspecified",
"formsEnabled": false,
"name": ".MainAbility",
"srcLanguage": "js",
"srcPath": "MainAbility",
"icon": "$media:icon",
"description": "$string:MainAbility_desc",
"label": "$string:MainAbility_label",
"type": "page",
"visible": true,
"launchType": "standard"
},
{
"orientation": "unspecified",
"formsEnabled": false,
"name": ".TestAbility",
"srcLanguage": "js",
"srcPath": "TestAbility",
"icon": "$media:icon",
"description": "$string:TestAbility_desc",
"label": "$string:TestAbility_label",
"type": "page",
"visible": true,
"launchType": "standard"
}
],
"js": [
{
"pages": [
"pages/index/index"
],
"name": "default",
"window": {
"designWidth": 720,
"autoDesignWidth": false
}
},
{
"pages": [
"pages/index/index"
],
"name": ".TestAbility",
"window": {
"designWidth": 720,
"autoDesignWidth": false
}
}
],
"testRunner": {
"name": "OpenHarmonyTestRunner",
"srcPath": "TestRunner"
},
"mainAbility": ".MainAbility",
"srcPath": ""
}
}
\ No newline at end of file
/*
* Copyright (C) 2021 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
export default {
onCreate() {
console.info('AceApplication onCreate');
},
onDestroy() {
console.info('AceApplication onDestroy');
}
};
/*
* Copyright (C) 2021 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
export default {
onCreate() {
console.info('AceApplication onCreate');
},
onDestroy() {
console.info('AceApplication onDestroy');
}
};
.container {
flex-direction: column;
justify-content: center;
align-items: center;
}
.title {
font-size: 100px;
}
.titleST {
font-size: 32px;
.container {
flex-direction: column;
justify-content: center;
align-items: center;
}
.title {
font-size: 100px;
}
.titleST {
font-size: 32px;
}
\ No newline at end of file
<div class="container">
<text class="title">
{{ $t('strings.hello') }} {{ title }}
</text>
<text class="titleST">
STDataAbility
</text>
</div>
<div class="container">
<text class="title">
{{ $t('strings.hello') }} {{ title }}
</text>
<text class="titleST">
STDataAbility
</text>
</div>
/*
* Copyright (C) 2021 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import file from '@system.file'
import app from '@system.app'
import {Core, ExpectExtend, ReportExtend} from 'deccjsunit/index'
export default {
data: {
title: ""
},
onInit() {
this.title = this.$t('strings.world');
},
onShow() {
console.info('====onShow finish====<')
const core = Core.getInstance()
const expectExtend = new ExpectExtend({
'id': 'extend'
})
const reportExtend = new ReportExtend(file)
core.addService('expect', expectExtend)
core.addService('report', reportExtend)
core.init()
const configService = core.getDefaultService('config')
configService.setConfig(this)
require('../../../test/List.test')
core.execute()
},
onReady() {
},
/*
* Copyright (C) 2021 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import file from '@system.file'
import app from '@system.app'
export default {
data: {
title: ""
},
onInit() {
this.title = this.$t('strings.world');
},
onShow() {
console.info('====onShow finish====<')
},
onReady() {
},
}
\ No newline at end of file
/*
* Copyright (c) 2022 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import AbilityDelegatorRegistry from '@ohos.application.abilityDelegatorRegistry'
import { Hypium } from '@ohos/hypium'
import testsuite from '../test/List.test'
export default {
onCreate() {
console.info('TestApplication onCreate')
var abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator()
var abilityDelegatorArguments = AbilityDelegatorRegistry.getArguments()
console.info('start run testcase!!!')
Hypium.hypiumTest(abilityDelegator, abilityDelegatorArguments, testsuite)
},
onDestroy() {
console.info("TestApplication onDestroy");
}
};
{
"strings": {
"hello": "Hello",
"world": "World"
},
"Files": {
}
}
\ No newline at end of file
{
"strings": {
"hello": "您好",
"world": "世界"
},
"Files": {
}
}
\ No newline at end of file
.container {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
left: 0px;
top: 0px;
width: 100%;
height: 100%;
}
.title {
font-size: 60px;
text-align: center;
width: 100%;
height: 40%;
margin: 10px;
}
@media screen and (device-type: phone) and (orientation: landscape) {
.title {
font-size: 60px;
}
}
@media screen and (device-type: tablet) and (orientation: landscape) {
.title {
font-size: 100px;
}
}
\ No newline at end of file
<div class="container">
<text class="title">
{{ $t('strings.hello') }} {{ title }}
</text>
</div>
/*
* 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.
*/
export default {
data: {
title: ""
},
onInit() {
this.title = this.$t('strings.world');
}
}
/*
* 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 AbilityDelegatorRegistry from '@ohos.application.abilityDelegatorRegistry'
function translateParamsToString(parameters) {
const keySet = new Set([
'-s class', '-s notClass', '-s suite', '-s itName',
'-s level', '-s testType', '-s size', '-s timeout',
'-s package', '-s dryRun'
])
let targetParams = '';
for (const key in parameters) {
if (keySet.has(key)) {
targetParams += ' ' + key + ' ' + parameters[key]
}
}
return targetParams.trim()
}
export default {
onPrepare() {
console.info('OpenHarmonyTestRunner OnPrepare')
},
onRun() {
console.log('OpenHarmonyTestRunner onRun run')
var abilityDelegatorArguments = AbilityDelegatorRegistry.getArguments()
var abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator()
var testAbilityName = abilityDelegatorArguments.parameters['-p'] + '.TestAbility'
var cmd = 'aa start -d 0 -a ' + testAbilityName + ' -b ' + abilityDelegatorArguments.bundleName
cmd += ' ' + translateParamsToString(abilityDelegatorArguments.parameters)
var debug = abilityDelegatorArguments.parameters["-D"]
console.info('debug value : '+debug)
if (debug == 'true')
{
cmd += ' -D'
}
console.info('cmd : '+cmd)
abilityDelegator.executeShellCommand(cmd, (err, data) => {
console.info('executeShellCommand : err : ' + JSON.stringify(err));
console.info('executeShellCommand : data : ' + data.stdResult);
console.info('executeShellCommand : data : ' + data.exitCode);
})
}
};
/*
* Copyright (C) 2021 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
require('./DataAbilityHelperJsSt.test.js')
\ No newline at end of file
/*
* Copyright (C) 2021 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import ActsDataAbilityHelperTest from './DataAbilityHelperJsSt.test.js'
export default function testsuite() {
ActsDataAbilityHelperTest()
}
{
"string": [
{
"name": "app_name",
"value": "STDataAbility"
},
{
"name": "mainability_description",
"value": "JS_Phone_Empty Feature Ability"
}
]
{
"string": [
{
"name": "app_name",
"value": "STDataAbility"
},
{
"name": "mainability_description",
"value": "JS_Phone_Empty Feature Ability"
},
{
"name": "MainAbility_desc",
"value": "description"
},
{
"name": "MainAbility_label",
"value": "label"
},
{
"name": "TestAbility_desc",
"value": "description"
},
{
"name": "TestAbility_label",
"value": "label"
}
]
}
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册