diff --git a/compileruntime/BUILD.gn b/compileruntime/BUILD.gn index 265545f58fbac1d92849278911851fa178f3c993..3aaf52b7c9eff5a4c1c5df3f587e2bee446a0074 100644 --- a/compileruntime/BUILD.gn +++ b/compileruntime/BUILD.gn @@ -20,6 +20,7 @@ group("compileruntime") { "containerLine_lib_standard:containerLine_js_test", "containerRelation_lib_standard:containerRelation_js_test", "convertxml_lib_standard:convertxml_js_test", + "process_lib_standard:process_js_test", "uri_lib_standard:uri_js_test", "url_lib_standard:url_js_test", "util_lib_standard:util_js_test", diff --git a/compileruntime/process_lib_standard/BUILD.gn b/compileruntime/process_lib_standard/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..c9f80a094811ecf9c4b27aceb96154462d2c5e4a --- /dev/null +++ b/compileruntime/process_lib_standard/BUILD.gn @@ -0,0 +1,40 @@ +# Copyright (C) 2021 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import("//test/xts/tools/build/suite.gni") +ohos_js_hap_suite("process_js_test") { + hap_profile = "./src/main/config.json" + js2abc = true + deps = [ + ":process_js_assets", + ":process_resources", + ] + + # shared_libraries = [ + # "//third_party/giflib:libgif", + # "//third_party/libpng:libpng", + # ] + certificate_profile = "./signature/openharmony_sx.p7b" + hap_name = "ActsProcessJSApiTest" + + # part_name = "prebuilt_hap" + # subsystem_name = "xts" +} + +ohos_js_assets("process_js_assets") { + source_dir = "./src/main/js/default" +} +ohos_resources("process_resources") { + sources = [ "./src/main/resources" ] + hap_profile = "./src/main/config.json" +} diff --git a/compileruntime/process_lib_standard/Test.json b/compileruntime/process_lib_standard/Test.json new file mode 100644 index 0000000000000000000000000000000000000000..923725e788e462088212975f754695176e78e4e9 --- /dev/null +++ b/compileruntime/process_lib_standard/Test.json @@ -0,0 +1,18 @@ +{ + "description": "Configuration for startup process js api Tests", + "driver": { + "type": "JSUnitTest", + "test-timeout": "800000", + "package": "com.example.childprocess", + "shell-timeout": "90000" + }, + "kits": [ + { + "test-file-name": [ + "ActsProcessJSApiTest.hap" + ], + "type": "AppInstallKit", + "cleanup-apps": true + } + ] +} \ No newline at end of file diff --git a/compileruntime/process_lib_standard/signature/openharmony_sx.p7b b/compileruntime/process_lib_standard/signature/openharmony_sx.p7b new file mode 100644 index 0000000000000000000000000000000000000000..9be1e98fa4c0c28ca997ed660112fa16b194f0f5 Binary files /dev/null and b/compileruntime/process_lib_standard/signature/openharmony_sx.p7b differ diff --git a/compileruntime/process_lib_standard/src/main/config.json b/compileruntime/process_lib_standard/src/main/config.json new file mode 100644 index 0000000000000000000000000000000000000000..3fe710165dbcad9f7255d3c98fed9730ec0e14c1 --- /dev/null +++ b/compileruntime/process_lib_standard/src/main/config.json @@ -0,0 +1,62 @@ +{ + "app": { + "bundleName": "com.example.childprocess", + "vendor": "example", + "version": { + "code": 1000000, + "name": "1.0.0" + }, + "apiVersion": { + "compatible": 4, + "target": 5 + } + }, + "deviceConfig": {}, + "module": { + "package": "com.example.childprocess", + "name": ".MyApplication", + "mainAbility": "com.example.childprocess.MainAbility", + "deviceType": [ + "phone" + ], + "distro": { + "deliveryWithInstall": true, + "moduleName": "entry", + "moduleType": "entry", + "installationFree": false + }, + "abilities": [ + { + "skills": [ + { + "entities": [ + "entity.system.home" + ], + "actions": [ + "action.system.home" + ] + } + ], + "visible": true, + "name": "com.example.childprocess.MainAbility", + "icon": "$media:icon", + "description": "$string:mainability_description", + "label": "$string:entry_MainAbility", + "type": "page", + "launchType": "standard" + } + ], + "js": [ + { + "pages": [ + "pages/index/index" + ], + "name": "default", + "window": { + "designWidth": 720, + "autoDesignWidth": true + } + } + ] + } +} \ No newline at end of file diff --git a/compileruntime/process_lib_standard/src/main/js/default/app.js b/compileruntime/process_lib_standard/src/main/js/default/app.js new file mode 100644 index 0000000000000000000000000000000000000000..ef92b6e96e9db7d997b0be7c2068d560b1cab26d --- /dev/null +++ b/compileruntime/process_lib_standard/src/main/js/default/app.js @@ -0,0 +1,22 @@ +/* + * 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'); + } +}; diff --git a/compileruntime/process_lib_standard/src/main/js/default/i18n/en-US.json b/compileruntime/process_lib_standard/src/main/js/default/i18n/en-US.json new file mode 100644 index 0000000000000000000000000000000000000000..e63c70d978a3a53be988388c87182f81785e170c --- /dev/null +++ b/compileruntime/process_lib_standard/src/main/js/default/i18n/en-US.json @@ -0,0 +1,6 @@ +{ + "strings": { + "hello": "Hello", + "world": "World" + } +} \ No newline at end of file diff --git a/compileruntime/process_lib_standard/src/main/js/default/i18n/zh-CN.json b/compileruntime/process_lib_standard/src/main/js/default/i18n/zh-CN.json new file mode 100644 index 0000000000000000000000000000000000000000..de6ee5748322f44942c1b003319d8e66c837675f --- /dev/null +++ b/compileruntime/process_lib_standard/src/main/js/default/i18n/zh-CN.json @@ -0,0 +1,6 @@ +{ + "strings": { + "hello": "您好", + "world": "世界" + } +} \ No newline at end of file diff --git a/compileruntime/process_lib_standard/src/main/js/default/pages/index/index.css b/compileruntime/process_lib_standard/src/main/js/default/pages/index/index.css new file mode 100644 index 0000000000000000000000000000000000000000..2b1965821483f4f8c8b97c86ef07fe87ea767d01 --- /dev/null +++ b/compileruntime/process_lib_standard/src/main/js/default/pages/index/index.css @@ -0,0 +1,44 @@ +.container { + flex-direction: column; + justify-content: center; + align-items: center; +} + +.title { + font-size: 40px; + color: #000000; + opacity: 0.9; +} + +@media screen and (device-type: tablet) and (orientation: landscape) { + .title { + font-size: 100px; + } +} + +@media screen and (device-type: wearable) { + .title { + font-size: 28px; + color: #FFFFFF; + } +} + +@media screen and (device-type: tv) { + .container { + background-image: url("../../common/images/Wallpaper.png"); + background-size: cover; + background-repeat: no-repeat; + background-position: center; + } + + .title { + font-size: 100px; + color: #FFFFFF; + } +} + +@media screen and (device-type: phone) and (orientation: landscape) { + .title { + font-size: 60px; + } +} diff --git a/compileruntime/process_lib_standard/src/main/js/default/pages/index/index.hml b/compileruntime/process_lib_standard/src/main/js/default/pages/index/index.hml new file mode 100644 index 0000000000000000000000000000000000000000..20a4e40d9a4ee698bf8e485840457dd43233a376 --- /dev/null +++ b/compileruntime/process_lib_standard/src/main/js/default/pages/index/index.hml @@ -0,0 +1,5 @@ +
+ + {{ $t('strings.hello') }} {{title}} + +
\ No newline at end of file diff --git a/compileruntime/process_lib_standard/src/main/js/default/pages/index/index.js b/compileruntime/process_lib_standard/src/main/js/default/pages/index/index.js new file mode 100644 index 0000000000000000000000000000000000000000..0e33931bedcdb1c1f9ea423220b49c3efad2bd76 --- /dev/null +++ b/compileruntime/process_lib_standard/src/main/js/default/pages/index/index.js @@ -0,0 +1,38 @@ +/* + * 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 device from '@system.device' +import router from '@system.router' +import {Core} from 'deccjsunit/index' + +export default { + data: { + title: "" + }, + onInit() { + this.title = this.$t('strings.world'); + }, + onShow() { + console.info('onShow finish') + const core = Core.getInstance() + core.init() + require('../../../test/List.test') + core.execute() + }, + onReady() { + }, +} \ No newline at end of file diff --git a/compileruntime/process_lib_standard/src/main/js/test/List.test.js b/compileruntime/process_lib_standard/src/main/js/test/List.test.js new file mode 100644 index 0000000000000000000000000000000000000000..8999be239e22f86496965016a9715bc9b599319f --- /dev/null +++ b/compileruntime/process_lib_standard/src/main/js/test/List.test.js @@ -0,0 +1,16 @@ +/* + * 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('./Process.test.js') \ No newline at end of file diff --git a/compileruntime/process_lib_standard/src/main/js/test/Process.test.js b/compileruntime/process_lib_standard/src/main/js/test/Process.test.js new file mode 100644 index 0000000000000000000000000000000000000000..bec88ea5193113dfcba4be886111140feca6134f --- /dev/null +++ b/compileruntime/process_lib_standard/src/main/js/test/Process.test.js @@ -0,0 +1,2375 @@ +/* + * 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 {describe, beforeAll, beforeEach, afterEach, afterAll, it, expect} from 'deccjsunit/index' +import process from '@ohos.process' +describe('ChildProcessTest', function () { + + /** + * @tc.name: testRunCmd001 + * @tc.desc: Return a child process object and spawns a new ChildProcess to run the command. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testRunCmd001', 0, async function (done) { + var child = process.runCmd('echo abc') + child.wait() + var array = new Uint8Array([97, 98, 99, 10, 0]) + await child.getOutput().then(val=>{ + for (var i = 0; i < array.length; i++) { + expect(val[i]).assertEqual(array[i]) + } + }); + done(); + }) + + /** + * @tc.name: testRunCmd002 + * @tc.desc: Return a child process object and spawns a new ChildProcess to run the command. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testRunCmd002', 0, async function (done) { + var child = process.runCmd('echo abc;', { maxBuffer : 2 }) + child.wait() + var array = new Uint8Array([97, 98, 0]) + await child.getOutput().then(val=>{ + for (var i = 0; i < array.length; i++) { + expect(val[i]).assertEqual(array[i]) + } + }); + done(); + }) + + /** + * @tc.name: testRunCmd003 + * @tc.desc: Return a child process object and spawns a new ChildProcess to run the command. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testRunCmd003', 0, async function (done) { + var child = process.runCmd('sleep 5; echo abc;', { timeout : 1, killSignal : 9 }) + child.wait() + var array = new Uint8Array([0]) + await child.getOutput().then(val=>{ + for (var i = 0; i < array.length; i++) { + expect(val[i]).assertEqual(array[i]) + } + }); + expect(child.exitCode).assertEqual(9) + done(); + }) + + /** + * @tc.name: testRunCmd004 + * @tc.desc: Return a child process object and spawns a new ChildProcess to run the command. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testRunCmd004', 0, async function (done) { + var child = process.runCmd('sleep 2; echo abc;', { timeout : 9000, killSignal : 9 }) + child.wait() + var array = new Uint8Array([97, 98, 99, 10, 0]) + await child.getOutput().then(val=>{ + for (var i = 0; i < array.length; i++) { + expect(val[i]).assertEqual(array[i]) + } + }); + expect(child.exitCode).assertEqual(0) + done(); + }) + + /** + * @tc.name: testRunCmd005 + * @tc.desc: Return a child process object and spawns a new ChildProcess to run the command. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testRunCmd005', 0, async function (done) { + var child = process.runCmd('echo abc', { maxBuffer : 1000 }) + child.wait() + var array = new Uint8Array([97, 98, 99, 10, 0]) + await child.getOutput().then(val=>{ + for (var i = 0; i < array.length; i++) { + expect(val[i]).assertEqual(array[i]) + } + }); + done(); + }) + + /** + * @tc.name: testGetOutput001 + * @tc.desc: return it as 'Uint8Array' of the stdout until EOF. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetOutput001', 0, async function (done) { + var child = process.runCmd('echo bcd;') + var array = new Uint8Array([98, 99, 100, 10, 0]) + child.wait(); + await child.getOutput().then(val=>{ + for (var i = 0; i < array.length; i++) { + expect(val[i]).assertEqual(array[i]) + } + }); + done(); + }) + + /** + * @tc.name: testGetOutput002 + * @tc.desc: return it as 'Uint8Array' of the stdout until EOF. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetOutput002', 0, async function (done) { + var child = process.runCmd('echo 123;'); + var array = new Uint8Array([49, 50, 51, 10, 0]); + child.wait(); + await child.getOutput().then(val=>{ + for (var i = 0; i < array.length; i++) { + expect(val[i]).assertEqual(array[i]); + } + }); + done(); + }) + + /** + * @tc.name: testGetOutput003 + * @tc.desc: return it as 'Uint8Array' of the stdout until EOF. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetOutput003', 0, async function (done) { + var child = process.runCmd('echo helloWorld;'); + var array = new Uint8Array([104, 101, 108, 108, 111, 87, 111, 114, 108, 100, 10, 0]); + child.wait(); + await child.getOutput().then(val=>{ + for (var i = 0; i < array.length; i++) { + expect(val[i]).assertEqual(array[i]); + } + }); + done(); + }) + + /** + * @tc.name: testGetOutput004 + * @tc.desc: return it as 'Uint8Array' of the stdout until EOF. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetOutput004', 0, async function (done) { + var child = process.runCmd('echo 浣犲�?'); + var array = new Uint8Array([230, 181, 163, 231, 138, 178, 239, 191, 189, 63, 10, 0]); + child.wait(); + await child.getOutput().then(val=>{ + for (var i = 0; i < array.length; i++) { + expect(val[i]).assertEqual(array[i]); + } + }); + done(); + }) + + /** + * @tc.name: testGetOutput005 + * @tc.desc: return it as 'Uint8Array' of the stdout until EOF. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetOutput005', 0, async function (done) { + var child = process.runCmd('echo ~_~;'); + var array = new Uint8Array([126, 95, 126, 10, 0]); + child.wait(); + await child.getOutput().then(val=>{ + for (var i = 0; i < array.length; i++) { + expect(val[i]).assertEqual(array[i]); + } + }); + done(); + }) + + /** + * @tc.name: testGetErrorOutput001 + * @tc.desc: return it as 'Uint8Array of the stderr until EOF. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetErrorOutput001', 0, async function (done) { + var child = process.runCmd('makdir 1.txt') + child.wait() + var array = new Uint8Array([115, 104, 58, 32, 109, 97, 107, 100, 105, 114, 58, 32, 105, 110, 97, 99, 99, + 101, 115, 115, 105, 98, 108, 101, 32, 111, 114, 32, 110, 111, 116, 32, 102, 111, 117, 110, 100, 10, 0]) + await child.getErrorOutput().then(val=>{ + for (var i = 0; i < array.length; i++) { + expect(val[i]).assertEqual(array[i]) + } + }); + done(); + }) + + /** + * @tc.name: testGetErrorOutput002 + * @tc.desc: return it as 'Uint8Array of the stderr until EOF. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetErrorOutput002', 0, async function (done) { + var child = process.runCmd('echo "error" 1>&2') + child.wait() + var array = new Uint8Array([101, 114, 114, 111, 114, 10, 0]) + await child.getErrorOutput().then(val=>{ + for (var i = 0; i < array.length; i++) { + expect(val[i]).assertEqual(array[i]) + } + }); + done(); + }) + + /** + * @tc.name: testGetErrorOutput003 + * @tc.desc: return it as 'Uint8Array of the stderr until EOF. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetErrorOutput003', 0, async function (done) { + var child = process.runCmd('1') + child.wait() + var array = new Uint8Array([115, 104, 58, 32, 49, 58, 32, 105, 110, 97, 99, 99, 101, 115, 115, 105, 98, + 108, 101, 32, 111, 114, 32, 110, 111, 116, 32, 102, 111, 117, 110, 100, 10, 0]) + await child.getErrorOutput().then(val=>{ + for (var i = 0; i < array.length; i++) { + expect(val[i]).assertEqual(array[i]) + } + }); + done(); + }) + + /** + * @tc.name: testGetErrorOutput004 + * @tc.desc: return it as 'Uint8Array of the stderr until EOF. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetErrorOutput004', 0, async function (done) { + var child = process.runCmd('chmod 777 123') + var array = new Uint8Array([99, 104, 109, 111, 100, 58, 32, 49, 50, 51, 58, 32, 78, 111, 32, 115, 117, 99, + 104, 32, 102, 105, 108, 101, 32, 111, 114, 32, 100, 105, 114, 101, 99, 116, 111, 114, 121, 10, 0]); + child.wait(); + await child.getErrorOutput().then(val=>{ + for (var i = 0; i < array.length; i++) { + expect(val[i]).assertEqual(array[i]) + } + }); + done(); + }) + + /** + * @tc.name: testGetErrorOutput005 + * @tc.desc: return it as 'Uint8Array of the stderr until EOF. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetErrorOutput005', 0, async function (done) { + var child = process.runCmd('cp ./1 ./2') + var array = new Uint8Array([99, 112, 58, 32, 98, 97, 100, 32, 39, 46, 47, 49, 39, 58, 32, 78, 111, 32, 115, + 117, 99, 104, 32, 102, 105, 108, 101, 32, 111, 114, 32, 100, 105, 114, 101, 99, 116, 111, 114, 121, 10, 0]) + child.wait(); + await child.getErrorOutput().then(val=>{ + for (var i = 0; i < array.length; i++) { + expect(val[i]).assertEqual(array[i]) + } + }); + done(); + }) + + /** + * @tc.name: testWait001 + * @tc.desc: return 'number' is the targer process exit code. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testWait001', 0, async function (done) { + var child = process.runCmd('ls') + await child.wait().then(val=>{ + expect(val).assertEqual(0) + }); + done(); + }) + + /** + * @tc.name: testWait002 + * @tc.desc: return 'number' is the targer process exit code. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testWait002', 0, async function (done) { + var child = process.runCmd('ls; sleep 5;') + child.kill(9); + await child.wait().then(val=>{ + expect(val).assertEqual(9) + }); + done(); + }) + + /** + * @tc.name: testWait003 + * @tc.desc: return 'number' is the targer process exit code. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testWait003', 0, async function (done) { + var child = process.runCmd('echo helloWorld'); + await child.wait().then(val=>{ + expect(val).assertEqual(0); + }); + done(); + }) + + /** + * @tc.name: testWait004 + * @tc.desc: return 'number' is the targer process exit code. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testWait004', 0, async function (done) { + var child = process.runCmd('mkdir 123'); + await child.wait().then(val=>{ + expect(val).assertEqual(0); + }); + done(); + }) + + /** + * @tc.name: testWait005 + * @tc.desc: return 'number' is the targer process exit code. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testWait005', 0, async function (done) { + var child = process.runCmd('sleep 5; echo abc;', { timeout : 1, killSignal : 9 }); + await child.wait().then(val=>{ + expect(val).assertEqual(9); + }); + done(); + }) + + /** + * @tc.name: testchildPid001 + * @tc.desc: return pid is the pid of the current process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testchildPid001', 0, function () { + var child = process.runCmd('ls; sleep 5;') + child.wait() + var pid_ = child.pid + expect(pid_ > 0).assertEqual(true) + }) + + /** + * @tc.name: testPid002 + * @tc.desc: return pid is the pid of the current process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPid002', 0, function () { + var child = process.runCmd('mkdir test.cpp') + child.wait() + var pid_ = child.pid + expect(pid_ > 0).assertEqual(true) + }) + + /** + * @tc.name: testPid003 + * @tc.desc: return pid is the pid of the current process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPid003', 0, function () { + var child = process.runCmd('each abc') + child.wait() + var pid_ = child.pid + expect(pid_ > 0).assertEqual(true) + }) + + /** + * @tc.name: testPid004 + * @tc.desc: return pid is the pid of the current process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPid004', 0, function () { + var child = process.runCmd('cd ..') + child.wait() + var pid_ = child.pid + expect(pid_ > 0).assertEqual(true) + }) + + /** + * @tc.name: testPid005 + * @tc.desc: return pid is the pid of the current process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPid005', 0, function () { + var child = process.runCmd('adc') + child.wait() + var pid_ = child.pid + expect(pid_ > 0).assertEqual(true) + }) + + /** + * @tc.name: testPpid001 + * @tc.desc: return ppid is the pid of the current child process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPpid001', 0, function () { + var child = process.runCmd('ls; sleep 5;') + var status = child.wait() + var ppid_ = child.ppid + expect(ppid_ > 0).assertEqual(true) + }) + + /** + * @tc.name: testPpid002 + * @tc.desc: return ppid is the pid of the current child process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPpid002', 0, function () { + var child = process.runCmd('mkdir test.cpp') + child.wait() + var ppid_ = child.ppid + expect(ppid_ > 0).assertEqual(true) + }) + + /** + * @tc.name: testPpid003 + * @tc.desc: return ppid is the pid of the current child process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPpid003', 0, function () { + var child = process.runCmd('each abc') + child.wait() + var ppid_ = child.ppid + expect(ppid_ > 0).assertEqual(true) + }) + + /** + * @tc.name: testPpid004 + * @tc.desc: return ppid is the pid of the current child process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPpid004', 0, function () { + var child = process.runCmd('cd ..') + child.wait() + var ppid_ = child.ppid + expect(ppid_ > 0).assertEqual(true) + }) + + /** + * @tc.name: testPpid005 + * @tc.desc: return ppid is the pid of the current child process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPpid005', 0, function () { + var child = process.runCmd('adc') + child.wait() + var ppid_ = child.ppid + expect(ppid_ > 0).assertEqual(true) + }) + + /** + * @tc.name: testKill001 + * @tc.desc: return boolean is whether the current process signal is sent successfully. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testKill001', 0, function () { + var child = process.runCmd('ls; sleep 5s;') + var result = child.kill(13) + var temp = child.killed + expect(temp).assertEqual(true) + }) + + /** + * @tc.name: testKill002 + * @tc.desc: return boolean is whether the current process signal is sent successfully. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testKill002', 0, function () { + var child = process.runCmd('ls; sleep 5s;') + var result = child.kill(1) + var temp = child.killed + expect(temp).assertEqual(true) + }) + + /** + * @tc.name: testKill003 + * @tc.desc: return boolean is whether the current process signal is sent successfully. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testKill003', 0, function () { + var child = process.runCmd('ls; sleep 5s;') + var result = child.kill('SIGHUP') + var temp = child.killed + expect(temp).assertEqual(true) + }) + + /** + * @tc.name: testKill004 + * @tc.desc: return boolean is whether the current process signal is sent successfully. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testKill004', 0, function () { + var child = process.runCmd('ls; sleep 5s;') + var result = child.kill('ABC') + var temp = child.killed + expect(temp).assertEqual(true) + }) + + /** + * @tc.name: testKill005 + * @tc.desc: return boolean is whether the current process signal is sent successfully. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testKill005', 0, function () { + var child = process.runCmd('ls') + child.wait() + var result = child.kill(9) + var temp = child.killed + expect(temp).assertEqual(false) + }) + + /** + * @tc.name: testClose001 + * @tc.desc: close the target process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testClose001', 0, function () { + var child = process.runCmd('ls; sleep 5s;') + var result = child.close() + expect(child.exitCode).assertEqual(9) + }) + + /** + * @tc.name: testClose002 + * @tc.desc: close the target process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testClose002', 0, function () { + var child = process.runCmd('ls') + function sleep(ms, callback) { + setTimeout(callback, ms) + } + sleep(1000, () => {} ) + var result = child.close() + expect(child.exitCode === 0).assertEqual(false) + }) + + /** + * @tc.name: testClose003 + * @tc.desc: close the target process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testClose003', 0, function () { + var child = process.runCmd('ls;') + var status = child.wait() + var result = child.close() + expect(child.exitCode).assertEqual(0) + }) + + /** + * @tc.name: testClose004 + * @tc.desc: close the target process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testClose004', 0, function () { + var child = process.runCmd('ls') + var result = child.close() + expect(child.exitCode).assertEqual(9) + }) + + /** + * @tc.name: testClose005 + * @tc.desc: close the target process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testClose005', 0, function () { + var child = process.runCmd('sleep 5; echo A') + var result = child.close() + var status = child.wait() + expect(child.exitCode).assertEqual(9) + }) + + /** + * @tc.name: testKilled001 + * @tc.desc: return boolean is whether the current process signal is sent successfully. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testKilled001', 0, function () { + var child = process.runCmd('ls; sleep 1s;') + var result = child.kill(3) + var temp = child.killed + expect(temp).assertEqual(true) + }) + + /** + * @tc.name: testKilled002 + * @tc.desc: return boolean is whether the current process signal is sent successfully. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testKilled002', 0, function () { + var child = process.runCmd('ls; sleep 1s;') + var result = child.close() + var temp = child.killed + expect(temp).assertEqual(false) + }) + + /** + * @tc.name: testKilled003 + * @tc.desc: return boolean is whether the current process signal is sent successfully. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testKilled003', 0, function () { + var child = process.runCmd('ls; sleep 1s;') + var status = child.wait() + var result = child.kill(9) + var temp = child.killed + expect(temp).assertEqual(false) + }) + + /** + * @tc.name: testKilled004 + * @tc.desc: return boolean is whether the current process signal is sent successfully. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testKilled004', 0, function () { + var child = process.runCmd('ls; sleep 5s;') + var result = child.kill('SIGHUP') + var temp = child.killed + expect(temp).assertEqual(true) + }) + + /** + * @tc.name: testKilled005 + * @tc.desc: return boolean is whether the current process signal is sent successfully. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testKilled005', 0, function () { + var child = process.runCmd('ls; sleep 5s;') + var result = child.kill('1') + var temp = child.killed + expect(temp).assertEqual(true) + }) + + /** + * @tc.name: testExitCode001 + * @tc.desc: return exitCode is the exit code of the current child process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testExitCode001', 0, function () { + var child = process.runCmd('ls; sleep 5s;') + var temp = child.kill(9) + child.wait() + var result = child.exitCode + expect(result).assertEqual(9) + }) + + /** + * @tc.name: testExitCode002 + * @tc.desc: return exitCode is the exit code of the current child process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testExitCode002', 0, function () { + var child = process.runCmd('ls;') + child.wait() + var result = child.exitCode + expect(result).assertEqual(0) + }) + + /** + * @tc.name: testExitCode003 + * @tc.desc: return exitCode is the exit code of the current child process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testExitCode003', 0, function () { + var child = process.runCmd('ls; sleep 5s;') + child.close() + child.wait() + var result = child.exitCode + expect(result).assertEqual(9) + }) + + /** + * @tc.name: testExitCode004 + * @tc.desc: return exitCode is the exit code of the current child process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testExitCode004', 0, function () { + var child = process.runCmd('ls') + var temp = child.kill('ABCD') + child.close() + var result = child.exitCode + expect(result).assertEqual(0) + }) + + /** + * @tc.name: testExitCode005 + * @tc.desc: return exitCode is the exit code of the current child process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testExitCode005', 0, function () { + var child = process.runCmd('echo A') + var result= child.wait() + var status = child.close() + expect(child.exitCode).assertEqual(0) + }) + + /** + * @tc.name: testGetUid001 + * @tc.desc: returns the digital user id of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetUid001', 0, function () { + var result = process.uid + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + }) + + /** + * @tc.name: testGetUid002 + * @tc.desc: returns the digital user id of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetUid002', 0, function () { + for(var i = 0; i < 3; i++){ + var result = process.uid + if(result != null) { + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetUid003 + * @tc.desc: returns the digital user id of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetUid003', 0, function () { + for(var i = 0; i < 6; i++){ + var result = process.uid + if(result != null) { + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetUid004 + * @tc.desc: returns the digital user id of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetUid004', 0, function () { + for(var i = 0; i < 8; i++){ + var result = process.uid + if(result != null) { + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetUid005 + * @tc.desc: returns the digital user id of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetUid005', 0, function () { + for(var i = 0; i < 5; i++){ + var result = process.uid + if(result != null) { + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetGid001 + * @tc.desc: returns the numeric group id of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetGid001', 0, function () { + var result = process.gid + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + }) + + /** + * @tc.name: testGetGid002 + * @tc.desc: returns the numeric group id of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetGid002', 0, function () { + for(var i = 0; i < 3; i++){ + var result = process.gid + if(result != null) { + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetGid003 + * @tc.desc: returns the numeric group id of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetGid003', 0, function () { + for(var i = 0; i < 5; i++){ + var result = process.gid + if(result != null) { + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetGid004 + * @tc.desc: returns the numeric group id of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetGid004', 0, function () { + for(var i = 0; i < 6; i++){ + var result = process.gid + if(result != null) { + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetGid005 + * @tc.desc: returns the numeric group id of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetGid005', 0, function () { + for(var i = 0; i < 8; i++){ + var result = process.gid + if(result != null) { + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetEuid001 + * @tc.desc: return the numeric valid user identity of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetEuid001', 0, function () { + var result = process.euid + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + }) + + /** + * @tc.name: testGetEuid002 + * @tc.desc: return the numeric valid user identity of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetEuid002', 0, function () { + for(var i = 0; i < 3; i++){ + var result = process.euid + if(result != null) { + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetEuid003 + * @tc.desc: return the numeric valid user identity of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetEuid003', 0, function () { + for(var i = 0; i < 5; i++){ + var result = process.euid + if(result != null) { + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetEuid004 + * @tc.desc: return the numeric valid user identity of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetEuid004', 0, function () { + for(var i = 0; i < 6; i++){ + var result = process.euid + if(result != null) { + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetEuid005 + * @tc.desc: return the numeric valid user identity of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetEuid005', 0, function () { + for(var i = 0; i < 8; i++){ + var result = process.euid + if(result != null) { + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetEgid001 + * @tc.desc: returns the numeric valid group ID of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetEgid001', 0, function () { + var result = process.egid + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + }) + + /** + * @tc.name: testGetEgid002 + * @tc.desc: returns the numeric valid group ID of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetEgid002', 0, function () { + for(var i = 0; i < 3; i++){ + var result = process.egid + if(result != null) { + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetEgid003 + * @tc.desc: returns the numeric valid group ID of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetEgid003', 0, function () { + for(var i = 0; i < 5; i++){ + var result = process.egid + if(result != null) { + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetEgid004 + * @tc.desc: returns the numeric valid group ID of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetEgid004', 0, function () { + for(var i = 0; i < 6; i++){ + var result = process.egid + if(result != null) { + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetEgid005 + * @tc.desc: returns the numeric valid group ID of the process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetEgid005', 0, function () { + for(var i = 0; i < 8; i++){ + var result = process.egid + if(result != null) { + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetGroups001 + * @tc.desc: return an array with supplementary group id. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetGroups001', 0, function () { + var result = process.groups + var len = result.length + if(len > 0) { + var flag = true + } + expect(flag).assertEqual(true) + }) + + /** + * @tc.name: testGetGroups002 + * @tc.desc: return an array with supplementary group id. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetGroups002', 0, function () { + for(var i = 0; i < 3; i++){ + var result = process.groups + if(result != null) { + var len = result.length + if(len > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetGroups003 + * @tc.desc: return an array with supplementary group id. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetGroups003', 0, function () { + for(var i = 0; i < 5; i++){ + var result = process.groups + if(result != null) { + var len = result.length + if(len > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetGroups004 + * @tc.desc: return an array with supplementary group id. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetGroups004', 0, function () { + for(var i = 0; i < 6; i++){ + var result = process.groups + if(result != null) { + var len = result.length + if(len > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetGroups005 + * @tc.desc: return an array with supplementary group id. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testGetGroups005', 0, function () { + for(var i = 0; i < 8; i++){ + var result = process.groups + if(result != null) { + var len = result.length + if(len > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + } + }) + + /** + * @tc.name: testChdir001 + * @tc.desc: Change current directory. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testChdir001', 0, function () { + var result = process.chdir('/system') + var result1 = process.cwd() + expect(result1).assertEqual('/system') + }) + + /** + * @tc.name: testChdir002 + * @tc.desc: Change current directory. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testChdir002', 0, function () { + var result = process.chdir('/system/lib') + var result1 = process.cwd() + expect(result1).assertEqual('/system/lib') + }) + + /** + * @tc.name: testChdir003 + * @tc.desc: Change current directory. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testChdir003', 0, function () { + var result = process.chdir('/..') + var result1 = process.cwd() + expect(result1).assertEqual('/') + }) + + /** + * @tc.name: testChdir004 + * @tc.desc: Change current directory. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testChdir004', 0, function () { + var result = process.chdir('/system/app') + var result1 = process.cwd() + expect(result1).assertEqual('/system/app') + }) + + /** + * @tc.name: testChdir005 + * @tc.desc: Change current directory. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testChdir005', 0, function () { + var result = process.chdir('/data') + var result1 = process.cwd() + expect(result1).assertEqual('/data') + }) + + /** + * @tc.name: testKill001 + * @tc.desc: Return whether the signal was sent successfully. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testKill001', 0, function () { + var result = process.kill(3, 123) + expect(result).assertEqual(false) + }) + + /** + * @tc.name: testKill002 + * @tc.desc: Return whether the signal was sent successfully. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testKill002', 0, function () { + var pres = process.pid + var result = process.kill(23, pres) + expect(result).assertEqual(true) + }) + + /** + * @tc.name: testKill003 + * @tc.desc: Return whether the signal was sent successfully. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testKill003', 0, function () { + var pres = process.pid + var result = process.kill(28, pres) + expect(result).assertEqual(true) + }) + + /** + * @tc.name: testKill004 + * @tc.desc: Return whether the signal was sent successfully. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testKill004', 0, function () { + var pres = process.pid + var result = process.kill(17, pres) + expect(result).assertEqual(true) + }) + + /** + * @tc.name: testKill005 + * @tc.desc: Return whether the signal was sent successfully. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testKill005', 0, function () { + var result = process.kill(3, 113) + expect(result).assertEqual(false) + }) + + /** + * @tc.name: testUptime001 + * @tc.desc: Returns the running time of the system. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testUptime001', 0, function () { + var result1 = process.uptime() + function sleep(d){ + while(process.uptime() - result1 <= d); + } + sleep(5); + var result2 = process.uptime() - 6 + expect(result1).assertEqual(result2) + }) + + /** + * @tc.name: testUptime002 + * @tc.desc: Returns the running time of the system. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testUptime002', 0, function () { + var result1 = process.uptime() + function sleep(d){ + while(process.uptime() - result1 <= d); + } + sleep(8); + var result2 = process.uptime() - 9 + expect(result1).assertEqual(result2) + }) + + /** + * @tc.name: testUptime003 + * @tc.desc: Returns the running time of the system. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testUptime003', 0, function () { + var result1 = process.uptime() + function sleep(d){ + while(process.uptime() - result1 <= d); + } + sleep(10); + var result2 = process.uptime() - 11 + expect(result1).assertEqual(result2) + }) + + /** + * @tc.name: testUptime004 + * @tc.desc: Returns the running time of the system. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testUptime004', 0, function () { + var result1 = process.uptime() + function sleep(d){ + while(process.uptime() - result1 <= d); + } + sleep(7); + var result2 = process.uptime() - 8 + expect(result1).assertEqual(result2) + }) + + /** + * @tc.name: testUptime005 + * @tc.desc: Returns the running time of the system. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testUptime005', 0, function () { + var result1 = process.uptime() + function sleep(d){ + while(process.uptime() - result1 <= d); + } + sleep(11); + var result2 = process.uptime() - 12 + expect(result1).assertEqual(result2) + }) + + /** + * @tc.name: testPid001 + * @tc.desc: Return pid is the pid of the current process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPid001', 0, function () { + var result = process.pid + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + }) + + /** + * @tc.name: testPid002 + * @tc.desc: Return pid is the pid of the current process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPid002', 0, function () { + for(var i = 0; i < 3; i++) + { + var result = process.pid + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + }) + + /** + * @tc.name: testPid003 + * @tc.desc: Return pid is the pid of the current process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPid003', 0, function () { + for(var i = 0; i < 5; i++) + { + var result = process.pid + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + }) + + /** + * @tc.name: testPid004 + * @tc.desc: Return pid is the pid of the current process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPid004', 0, function () { + for(var i = 0; i < 6; i++) + { + var result = process.pid + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + }) + + /** + * @tc.name: testPid005 + * @tc.desc: Return pid is the pid of the current process. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPid005', 0, function () { + for(var i = 0; i < 8; i++) + { + var result = process.pid + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + }) + + /** + * @tc.name: testPpid001 + * @tc.desc: Return ppid is the pid of the current child process + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPpid001', 0, function () { + var result = process.ppid + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + }) + + /** + * @tc.name: testPpid002 + * @tc.desc: Return ppid is the pid of the current child process + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPpid002', 0, function () { + for(var i = 0; i < 3; i++) + { + var result = process.ppid + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + }) + + /** + * @tc.name: testPpid003 + * @tc.desc: Return ppid is the pid of the current child process + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPpid003', 0, function () { + for(var i = 0; i < 5; i++) + { + var result = process.ppid + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + }) + + /** + * @tc.name: testPpid004 + * @tc.desc: Return ppid is the pid of the current child process + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPpid004', 0, function () { + for(var i = 0; i < 6; i++) + { + var result = process.ppid + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + }) + + /** + * @tc.name: testPpid005 + * @tc.desc: Return ppid is the pid of the current child process + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testPpid005', 0, function () { + for(var i = 0; i < 8; i++) + { + var result = process.ppid + if(result > 0) { + var flag = true + } + expect(flag).assertEqual(true) + } + }) + + /** + * @tc.name: testCwd001 + * @tc.desc: Return the current work directory. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testCwd001', 0, function () { + var cwdir = process.cwd() + if(cwdir){ + var flag = true + } + expect(flag).assertEqual(true) + }) + + /** + * @tc.name: testCwd002 + * @tc.desc: Return the current work directory. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testCwd002', 0, function () { + for(var i = 0; i < 3; i++) + { + var cwdir = process.cwd() + if(cwdir){ + var flag = true + } + expect(flag).assertEqual(true) + } + }) + + /** + * @tc.name: testCwd003 + * @tc.desc: Return the current work directory. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testCwd003', 0, function () { + for(var i = 0; i < 5; i++) + { + var cwdir = process.cwd() + if(cwdir){ + var flag = true + } + expect(flag).assertEqual(true) + } + }) + + /** + * @tc.name: testCwd004 + * @tc.desc: Return the current work directory. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testCwd004', 0, function () { + for(var i = 0; i < 6; i++) + { + var cwdir = process.cwd() + if(cwdir){ + var flag = true + } + expect(flag).assertEqual(true) + } + }) + + /** + * @tc.name: testCwd005 + * @tc.desc: Return the current work directory. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testCwd005', 0, function () { + for(var i = 0; i < 8; i++) + { + var cwdir = process.cwd() + if(cwdir){ + var flag = true + } + expect(flag).assertEqual(true) + } + }) + + /** + * @tc.name: testOn001 + * @tc.desc: Register for an event. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testOn001', 0, function () { + function add(){ + var value = 3 + 2 + } + var ontest = process.on(1, add) + expect(ontest).assertEqual(false) + }) + + /** + * @tc.name: testOn002 + * @tc.desc: Register for an event. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testOn002', 0, function () { + function add1(num){ + var value = num + 3 + } + var on = process.on("add123", add1) + }) + + /** + * @tc.name: testOn003 + * @tc.desc: Register for an event. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testOn003', 0, function () { + function add2(num0, num1){ + var value = num0 + num1 + } + var ontest = process.on(879, add2) + expect(ontest).assertEqual(false) + }) + + /** + * @tc.name: testOn004 + * @tc.desc: Register for an event. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testOn004', 0, function () { + function add3(num0, num1){ + var value = num0 + num1 + } + var ontest = process.on(12345, add3) + expect(ontest).assertEqual(false) + }) + + /** + * @tc.name: testOn005 + * @tc.desc: Register for an event. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testOn005', 0, function () { + function add4(num0, num1){ + var value = num0 + num1 + } + var ontest = process.on(1000, add4) + expect(ontest).assertEqual(false) + }) + + /** + * @tc.name: testOff001 + * @tc.desc: Remove registered event. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testOff001', 0, function () { + function add1(num){ + var value = num + 3 + } + var on = process.on("UnHandleRejection", add1) + var offtest = process.off("UnHandleRejection") + expect(offtest).assertEqual(true) + }) + + /** + * @tc.name: testOff002 + * @tc.desc: Remove registered event. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testOff002', 0, function () { + var offtest = process.off("123") + expect(offtest).assertEqual(false) + }) + + /** + * @tc.name: testOff003 + * @tc.desc: Remove registered event. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testOff003', 0, function () { + var offtest = process.off("456") + expect(offtest).assertEqual(false) + }) + + /** + * @tc.name: testOff004 + * @tc.desc: Remove registered event. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testOff004', 0, function () { + function add1(num){ + var value = num + 3 + } + var on = process.on("UnHandleRejection", add1) + var offtest = process.off("UnHandleRejection") + expect(offtest).assertEqual(true) + }) + + /** + * @tc.name: testOff005 + * @tc.desc: Remove registered event. + * @tc.require: AR000GFB2S + * @tc.author: wangben + */ + it('testOff005', 0, function () { + function add1(num){ + var value = num + 3 + } + var on = process.on("UnHandleRejection", add1) + var offtest = process.off("UnHandleRejection") + expect(offtest).assertEqual(true) + }) + + /** + * @tc.name: testTid001 + * @tc.desc: Returns the tid of the current thread. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testTid001', 0, function () { + var pres = process.tid + if(pres > 0) + { + var flag = new Boolean(true) + } + expect(Boolean(flag)).assertEqual(true) + }) + + /** + * @tc.name: testTid002 + * @tc.desc: Returns the tid of the current thread. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testTid002', 0, function () { + for(var i=0; i < 5; i++) + { + var pres = process.tid + if(pres > 0) + { + var flag = new Boolean(true) + } + expect(Boolean(flag)).assertEqual(true) + } + }) + + /** + * @tc.name: testTid003 + * @tc.desc: Returns the tid of the current thread. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testTid003', 0, function () { + for(var i=0; i < 3; i++) + { + var pres = process.tid + if(pres > 0) + { + var flag = new Boolean(true) + } + expect(Boolean(flag)).assertEqual(true) + } + }) + + + /** + * @tc.name: testIsisolatedProcess001 + * @tc.desc: Returns a boolean whether the process is isolated. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testIsisolatedProcess001', 0, function () { + var pres = process.isIsolatedProcess() + expect(pres).assertEqual(true) + }) + + /** + * @tc.name: testIsisolatedProcess002 + * @tc.desc: Returns a boolean whether the process is isolated. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testIsisolatedProcess002', 0, function () { + for(var i=0; i < 3; i++) + { + var pres =process.isIsolatedProcess() + expect(pres).assertEqual(true) + } + }) + + /** + * @tc.name: testIsisolatedProcess003 + * @tc.desc: Returns a boolean whether the process is isolated. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testIsisolatedProcess003', 0, function () { + for(var i=0; i < 5; i++) + { + var pres =process.isIsolatedProcess() + expect(pres).assertEqual(true) + } + }) + + + /** + * @tc.name: testIsappuid001 + * @tc.desc: Returns a boolean whether the specified uid belongs to a particular application. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testIsappuid001', 0, function () { + var isorno = process.isAppUid(167) + expect(isorno).assertEqual(false) + }) + + /** + * @tc.name: testIsappuid002 + * @tc.desc: Returns a boolean whether the specified uid belongs to a particular application. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testIsappuid002', 0, function () { + var isorno = process.isAppUid(123) + expect(isorno).assertEqual(false) + }) + + /** + * @tc.name: testIsappuid003 + * @tc.desc: Returns a boolean whether the specified uid belongs to a particular application. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testIsappuid003', 0, function () { + var isorno = process.isAppUid(80000) + expect(isorno).assertEqual(false) + }) + + /** + * @tc.name: testIsappuid004 + * @tc.desc: Returns a boolean whether the specified uid belongs to a particular application. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testIsappuid004', 0, function () { + var isorno = process.isAppUid(789) + expect(isorno).assertEqual(false) + }) + + /** + * @tc.name: testIsappuid005 + * @tc.desc: Returns a boolean whether the specified uid belongs to a particular application. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testIsappuid005', 0, function () { + var isorno = process.isAppUid(8569) + expect(isorno).assertEqual(false) + }) + + /** + * @tc.name: testIs64Bit001 + * @tc.desc: Returns a boolean whether the process is running in a 64-bit environment. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testIs64Bit001', 0, function () { + var isorno = process.is64Bit() + expect(isorno).assertEqual(false) + }) + + /** + * @tc.name: testIs64Bit002 + * @tc.desc: Returns a boolean whether the process is running in a 64-bit environment. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testIs64Bit002', 0, function () { + for(var i=0; i<3; i++) + { + var isorno = process.is64Bit() + expect(isorno).assertEqual(false) + } + }) + + /** + * @tc.name: testIs64Bit003 + * @tc.desc: Returns a boolean whether the process is running in a 64-bit environment. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testIs64Bit003', 0, function () { + for(var i=0; i<5; i++) + { + var isorno = process.is64Bit() + expect(isorno).assertEqual(false) + } + }) + + + /** + * @tc.name: testGetuidforname001 + * @tc.desc: Returns the uid based on the specified user name. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetuidforname001',0, function () { + var pres = process.getUidForName("root") + if(pres != -1) + { + var flag = new Boolean(true) + expect(Boolean(flag)).assertEqual(true) + } + }) + + /** + * @tc.name: testGetuidforname002 + * @tc.desc: Returns the uid based on the specified user name. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetuidforname002', 0, function () { + for(var i=0; i<3; i++) + { + var pres = process.getUidForName("12356") + expect(pres).assertEqual(-1) + } + }) + + /** + * @tc.name: testGetuidforname003 + * @tc.desc: Returns the uid based on the specified user name. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetuidforname003', 0, function () { + for(var i=0; i<5; i++) + { + var pres = process.getUidForName("12356") + expect(pres).assertEqual(-1) + } + }) + + + /** + * @tc.name: testGetthreadpriority001 + * @tc.desc: Returns the thread priority based on the specified tid. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetthreadpriority001', 0, function () { + var pres = process.tid + var pri = process.getThreadPriority(pres) + if(pri) + { + var flag = new Boolean(true) + expect(Boolean(flag)).assertEqual(true) + } + }) + + /** + * @tc.name: testGetthreadpriority002 + * @tc.desc: Returns the thread priority based on the specified tid. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetthreadpriority002', 0, function () { + var pres = process.tid + for(var i=0; i<3; i++) + { + var pri = process.getThreadPriority(pres) + if(pri > 0) + { + var flag = new Boolean(true) + expect(Boolean(flag)).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetthreadpriority003 + * @tc.desc: Returns the thread priority based on the specified tid. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetthreadpriority003', 0, function () { + var pres = process.tid + for(var i=0; i<5; i++) + { + var pri = process.getThreadPriority(pres) + if(pri > 0) + { + var flag = new Boolean(true) + expect(Boolean(flag)).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetstartrealtime001 + * @tc.desc: Returns the elapsed real time (in milliseconds) taken from the start of + the system to the start of the process. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetstartrealtime001', 0, function () { + for(var i=0; i<3; i++) + { + var pri = process.getStartRealtime() + if(pri !== null) + { + var flag = new Boolean(true) + } + expect(Boolean(flag)).assertEqual(true) + } + }) + + /** + * @tc.name: testGetstartrealtime002 + * @tc.desc: Returns the elapsed real time (in milliseconds) taken from the start of + the system to the start of the process. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetstartrealtime002', 0, function () { + var pri = process.getStartRealtime() + if(pri !== null) + { + var flag = new Boolean(true) + } + expect(Boolean(flag)).assertEqual(true) + }) + + /** + * @tc.name: testGetstartrealtime003 + * @tc.desc: Returns the elapsed real time (in milliseconds) taken from the start of + the system to the start of the process. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetstartrealtime003', 0, function () { + for(var i=0; i<5; i++) + { + var pri = process.getStartRealtime() + if(pri !== null) + { + var flag = new Boolean(true) + } + expect(Boolean(flag)).assertEqual(true) + } + }) + + /** + * @tc.name: testGetstartrealtime004 + * @tc.desc: Returns the elapsed real time (in milliseconds) taken from the start of + the system to the start of the process. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetstartrealtime004', 0, function () { + for(var i=0; i<6; i++) + { + var pri = process.getStartRealtime() + if(pri > 0) + { + var flag = new Boolean(true) + } + expect(Boolean(flag)).assertEqual(true) + } + }) + + /** + * @tc.name: testGetpastCpuTime001 + * @tc.desc: Returns the cpu time (in milliseconds) from the time when the process starts to the current time. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetpastCpuTime001', 0, function () { + for(var i=0; i<3; i++) + { + var pri = process.getPastCpuTime() + if(pri > 0) + { + var flag = new Boolean(true) + } + expect(Boolean(flag)).assertEqual(true) + } + }) + + /** + * @tc.name: testGetpastCpuTime002 + * @tc.desc: Returns the cpu time (in milliseconds) from the time when the process starts to the current time. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetpastCpuTime002', 0, function () { + var pri = process.getPastCpuTime() + if(pri > 0) + { + var flag = new Boolean(true) + } + expect(Boolean(flag)).assertEqual(true) + }) + + /** + * @tc.name: testGetpastCpuTime003 + * @tc.desc: Returns the cpu time (in milliseconds) from the time when the process starts to the current time. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetpastCpuTime003', 0, function () { + for(var i=0; i<5; i++) + { + var pri = process.getPastCpuTime() + if(pri > 0) + { + var flag = new Boolean(true) + } + expect(Boolean(flag)).assertEqual(true) + } + }) + + /** + * @tc.name: testGetpastCpuTime004 + * @tc.desc: Returns the cpu time (in milliseconds) from the time when the process starts to the current time. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetpastCpuTime004', 0, function () { + for(var i=0; i<8; i++) + { + var pri = process.getPastCpuTime() + if(pri > 0) + { + var flag = new Boolean(true) + } + expect(Boolean(flag)).assertEqual(true) + } + }) + + /** + * @tc.name: testGetSystemConfig001 + * @tc.desc: Returns the system configuration at runtime. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetSystemConfig001', 0, function () { + var _SC_ARG_MAX = 0 + var pri = process.getSystemConfig(_SC_ARG_MAX) + if(pri > 0) + { + var flag = new Boolean(true) + } + expect(Boolean(flag)).assertEqual(true) + }) + + /** + * @tc.name: testGetSystemConfig002 + * @tc.desc: Returns the system configuration at runtime. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetSystemConfig002', 0, function () { + var _SC_ARG_MAX = 0 + for(var i=0; i<3; i++) + { + var pri = process.getSystemConfig(_SC_ARG_MAX) + if(pri > 0) + { + var flag = new Boolean(true) + } + expect(Boolean(flag)).assertEqual(true) + } + }) + + /** + * @tc.name: testGetSystemConfig003 + * @tc.desc: Returns the system configuration at runtime. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetSystemConfig003', 0, function () { + var _SC_ARG_MAX = 0 + for(var i=0; i<5; i++) + { + var pri = process.getSystemConfig(_SC_ARG_MAX) + if(pri > 0) + { + var flag = new Boolean(true) + } + expect(Boolean(flag)).assertEqual(true) + } + }) + + /** + * @tc.name: testGetSystemConfig004 + * @tc.desc: Returns the system configuration at runtime. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetSystemConfig004', 0, function () { + var _SC_OPEN_MAX = 4 + var pri = process.getSystemConfig(_SC_OPEN_MAX) + if(pri > 0) + { + var flag = new Boolean(true) + } + expect(Boolean(flag)).assertEqual(true) + }) + + /** + * @tc.name: testGetSystemConfig005 + * @tc.desc: Returns the system configuration at runtime. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetSystemConfig005', 0, function () { + var _SC_PAGESIZE = 8 + var pri = process.getSystemConfig(_SC_PAGESIZE) + if(pri > 0) + { + var flag = new Boolean(true) + } + expect(Boolean(flag)).assertEqual(true) + }) + + /** + * @tc.name: testGetEnvironmentVar001 + * @tc.desc: Returns the system value for environment variables. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetEnvironmentVar001', 0, function () { + var pri = process.getEnvironmentVar("USER") + if(pri != null) { + var flag = new Boolean(true) + expect(Boolean(flag)).assertEqual(true) + } + }) + + /** + * @tc.name: testGetEnvironmentVar002 + * @tc.desc: Returns the system value for environment variables. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetEnvironmentVar002', 0, function () { + for(var i=0; i<3; i++) + { + var pri = process.getEnvironmentVar("PATH") + if(pri != null) + { + var flag = new Boolean(true) + expect(Boolean(flag)).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetEnvironmentVar003 + * @tc.desc: Returns the system value for environment variables. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetEnvironmentVar003', 0, function () { + for(var i=0; i<5; i++) + { + var pri = process.getEnvironmentVar("PATH") + if(pri != null) + { + var flag = new Boolean(true) + expect(Boolean(flag)).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetEnvironmentVar004 + * @tc.desc: Returns the system value for environment variables. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetEnvironmentVar004', 0, function () { + for(var i=0; i<6; i++) + { + var pri = process.getEnvironmentVar("USER") + if(pri != null) + { + var flag = new Boolean(true) + expect(Boolean(flag)).assertEqual(true) + } + } + }) + + /** + * @tc.name: testGetEnvironmentVar005 + * @tc.desc: Returns the system value for environment variables. + * @tc.require: AR000GFB04 + * @tc.author: liwenqiang + */ + it('testGetEnvironmentVar005', 0, function () { + for(var i=0; i<8; i++) + { + var pri = process.getEnvironmentVar("USER") + if(pri != null) + { + var flag = new Boolean(true) + expect(Boolean(flag)).assertEqual(true) + } + } + }) +}) \ No newline at end of file diff --git a/compileruntime/process_lib_standard/src/main/resources/base/element/string.json b/compileruntime/process_lib_standard/src/main/resources/base/element/string.json new file mode 100644 index 0000000000000000000000000000000000000000..0bae6bd40f7360d5d818998221b199d3ec0f69c0 --- /dev/null +++ b/compileruntime/process_lib_standard/src/main/resources/base/element/string.json @@ -0,0 +1,12 @@ +{ + "string": [ + { + "name": "entry_MainAbility", + "value": "entry_MainAbility" + }, + { + "name": "mainability_description", + "value": "JS_Empty Ability" + } + ] +} \ No newline at end of file diff --git a/compileruntime/process_lib_standard/src/main/resources/base/media/icon.png b/compileruntime/process_lib_standard/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c Binary files /dev/null and b/compileruntime/process_lib_standard/src/main/resources/base/media/icon.png differ