- Introduced buildinfo.json5 to enable impeller feature. - Added Chinese localization strings in string.json for module description and entry ability. - Created Ability.test.ets for unit testing of ability functionalities. - Implemented List.test.ets to run the ability tests. - Developed TestAbility.ets to manage test execution and lifecycle events. - Created Index.ets as a testability page with UI components. - Added OpenHarmonyTestRunner.ts for managing test execution in OpenHarmony. - Defined module.json5 for entry_test module configuration. - Established color.json and string.json for base resources. - Included icon.png for the test module. - Created test_pages.json to define testability page sources. - Configured hvigor and oh-package.json5 for project setup. - Updated pubspec.yaml and related files to downgrade Dart SDK to 3.11.0 and adjust dependencies. - Added PowerShell script to enable OpenHarmony Flutter toolchain. - Updated multiple package pubspec.yaml files to align with Dart SDK version 3.11.0 and adjust dependencies accordingly.
50 lines
2.1 KiB
TypeScript
50 lines
2.1 KiB
TypeScript
|
|
import hilog from '@ohos.hilog';
|
|
import TestRunner from '@ohos.application.testRunner';
|
|
import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry';
|
|
|
|
var abilityDelegator = undefined
|
|
var abilityDelegatorArguments = undefined
|
|
|
|
async function onAbilityCreateCallback() {
|
|
hilog.info(0x0000, 'testTag', '%{public}s', 'onAbilityCreateCallback');
|
|
}
|
|
|
|
async function addAbilityMonitorCallback(err: any) {
|
|
hilog.info(0x0000, 'testTag', 'addAbilityMonitorCallback : %{public}s', JSON.stringify(err) ?? '');
|
|
}
|
|
|
|
export default class OpenHarmonyTestRunner implements TestRunner {
|
|
constructor() {
|
|
}
|
|
|
|
onPrepare() {
|
|
hilog.info(0x0000, 'testTag', '%{public}s', 'OpenHarmonyTestRunner OnPrepare ');
|
|
}
|
|
|
|
async onRun() {
|
|
hilog.info(0x0000, 'testTag', '%{public}s', '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
|
|
var debug = abilityDelegatorArguments.parameters['-D']
|
|
if (debug == 'true')
|
|
{
|
|
cmd += ' -D'
|
|
}
|
|
hilog.info(0x0000, 'testTag', 'cmd : %{public}s', cmd);
|
|
abilityDelegator.executeShellCommand(cmd,
|
|
(err: any, d: any) => {
|
|
hilog.info(0x0000, 'testTag', 'executeShellCommand : err : %{public}s', JSON.stringify(err) ?? '');
|
|
hilog.info(0x0000, 'testTag', 'executeShellCommand : data : %{public}s', d.stdResult ?? '');
|
|
hilog.info(0x0000, 'testTag', 'executeShellCommand : data : %{public}s', d.exitCode ?? '');
|
|
})
|
|
hilog.info(0x0000, 'testTag', '%{public}s', 'OpenHarmonyTestRunner onRun end');
|
|
}
|
|
} |