diff --git a/storage/storagesecuritylabeljstest/src/main/js/test/Common.js b/storage/storagesecuritylabeljstest/src/main/js/test/Common.js index ff4d298fe066bce143ae70f11a06b89ea689831f..769f0e4a2631176a9650cf709a48d95bff308658 100644 --- a/storage/storagesecuritylabeljstest/src/main/js/test/Common.js +++ b/storage/storagesecuritylabeljstest/src/main/js/test/Common.js @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 Huawei Device Co., Ltd. + * Copyright (C) 2021-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 @@ -13,8 +13,9 @@ * limitations under the License. */ -import securityLabel from '@ohos.securityLabel'; +import securityLabel from '@ohos.file.securityLabel'; import fileio from '@ohos.fileio'; +import fileIO from '@ohos.file.fs'; import featureAbility from '@ohos.ability.featureAbility'; import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from '@ohos/hypium' @@ -35,5 +36,6 @@ export { it, expect, securityLabel, - fileio + fileio, + fileIO }; \ No newline at end of file diff --git a/storage/storagesecuritylabeljstest/src/main/js/test/List.test.js b/storage/storagesecuritylabeljstest/src/main/js/test/List.test.js index 12704969bc505914a60b85eef49b6e167134d2f7..074dfa6b698fbbfa691fe63c3cb9ecd2fb5e0547 100644 --- a/storage/storagesecuritylabeljstest/src/main/js/test/List.test.js +++ b/storage/storagesecuritylabeljstest/src/main/js/test/List.test.js @@ -13,7 +13,7 @@ * limitations under the License. */ -import securitylabel from './securitylabel.test.js' +import security_label from './securitylabel.test.js' export default function testsuite() { -securitylabel() + security_label() } diff --git a/storage/storagesecuritylabeljstest/src/main/js/test/securitylabel.test.js b/storage/storagesecuritylabeljstest/src/main/js/test/securitylabel.test.js index 1b51107d0815e1bd0c09f3d58f721c3293ea1a7a..034e270e89aa3c5b860e9af4b01f0363b2271ab7 100644 --- a/storage/storagesecuritylabeljstest/src/main/js/test/securitylabel.test.js +++ b/storage/storagesecuritylabeljstest/src/main/js/test/securitylabel.test.js @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 Huawei Device Co., Ltd. + * Copyright (C) 2021-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 @@ -14,555 +14,637 @@ */ import { - describe, it, expect, securityLabel, nextFileName, fileio + describe, it, expect, securityLabel, nextFileName, fileio, fileIO } from './Common'; -export default function securitylabel() { -describe('securitylabel', function () { - - /** - * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_SYNC_0000 - * @tc.name securitylabel_test_set_security_label_sync_000 - * @tc.desc Test the setSecurityLabelSync() interface,and the getSecurityLabelSync() interface to get the data label. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_set_security_label_sync_000', 0, async function () { - try { - let dataLevel = ["s0","s1","s2","s3","s4"]; - for(let i=0;i { + if (err) { + console.log('securitylabel_test_set_security_label_async_000 error package1: ' + JSON.stringify(err)); + expect(false).assertTrue(); } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_SYNC_0010 - * @tc.name securitylabel_test_set_security_label_sync_001 - * @tc.desc Test the setSecurityLabelSync() interface, When the dataLevel is wrong. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_set_security_label_sync_001', 0, async function () { - let fpath = await nextFileName("test.txt"); - fileio.openSync(fpath, 0o102, 0o666); - try { - securityLabel.setSecurityLabelSync(fpath, "abc"); - } catch (err) { - console.log('securitylabel_test_set_security_label_sync_001 has failed for ' + err); - expect(err.message == "Invalid Argument of dataLevelEnum").assertTrue(); - fileio.unlinkSync(fpath); + securityLabel.getSecurityLabel(fpath, (err, dataLevel) => { + if (err) { + console.log('securitylabel_test_set_security_label_async_000 error package2: ' + JSON.stringify(err)); + expect(false).assertTrue(); + } + expect(dataLevel == 's0').assertTrue(); + fileio.unlinkSync(fpath); + done(); + }) + }) + } catch (e) { + console.log('securitylabel_test_set_security_label_async_000 has failed for ' + e.message + ', code: ' + e.code); + expect(false).assertTrue(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0100 + * @tc.name securitylabel_test_set_security_label_async_001 + * @tc.desc Test that the setSecurityLabel() interface callback to set the data label. + * Test the getSecurityLabel() interface promises to get the data label. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_set_security_label_async_001', 0, async function (done) { + let fpath = await nextFileName('test1.txt'); + fileIO.openSync(fpath, fileIO.OpenMode.CREATE | fileIO.OpenMode.READ_WRITE); + + try { + securityLabel.setSecurityLabel(fpath, 's1', (err) => { + if (err) { + console.log('securitylabel_test_set_security_label_async_001 error package1: ' + JSON.stringify(err)); + expect(false).assertTrue(); } - }); - - - /** - * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_SYNC_0020 - * @tc.name securitylabel_test_set_security_label_sync_002 - * @tc.desc Test the setSecurityLabelSync() interface,When the path does not exist. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_set_security_label_sync_002', 0, async function () { - try { - let result = securityLabel.setSecurityLabelSync("/data/aaa.txt", "s0"); - expect(result.message == "No such file or directory").assertTrue(); - } catch (err) { - console.log('securitylabel_test_set_security_label_sync_002 has failed for ' + err); + securityLabel.getSecurityLabel(fpath, (err, dataLevel) => { + if (err) { + console.log('securitylabel_test_set_security_label_async_001 error package2: ' + JSON.stringify(err)); + expect(false).assertTrue(); + } + expect(dataLevel == 's1').assertTrue(); + fileio.unlinkSync(fpath); + done(); + }); + }) + } catch (e) { + console.log('securitylabel_test_set_security_label_async_001 has failed for ' + e.message + ', code: ' + e.code); + expect(false).assertTrue(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0200 + * @tc.name securitylabel_test_set_security_label_async_002 + * @tc.desc Test that the setSecurityLabel() interface promises to set the data label. + * Test the getSecurityLabel() interface callback to get the data label. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_set_security_label_async_002', 0, async function (done) { + let fpath = await nextFileName('test2.txt'); + fileIO.openSync(fpath, fileIO.OpenMode.CREATE | fileIO.OpenMode.READ_WRITE); + + try { + await securityLabel.setSecurityLabel(fpath, 's2'); + securityLabel.getSecurityLabel(fpath, (err, dataLevel) => { + if(err) { + console.log('securitylabel_test_set_security_label_async_002 error package: ' + JSON.stringify(err)); + expect(false).assertTrue(); } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_SYNC_0030 - * @tc.name securitylabel_test_set_security_label_sync_003 - * @tc.desc Test the setSecurityLabelSync() interface,When the dataLevel type is wrong. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_set_security_label_sync_003', 0, async function () { - let fpath = await nextFileName("test.txt"); - fileio.openSync(fpath, 0o102, 0o666); - try { - securityLabel.setSecurityLabelSync(fpath, 1); - } catch (err) { - console.log('securitylabel_test_set_security_label_sync_003 has failed for ' + err); - expect(err.message == "Invalid dataLevel").assertTrue(); - fileio.unlinkSync(fpath); + expect(dataLevel == 's2').assertTrue(); + fileio.unlinkSync(fpath); + done(); + }) + } catch (e) { + console.log('securitylabel_test_set_security_label_async_002 has failed for ' + e.message + ', code: ' + e.code); + expect(false).assertTrue(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0300 + * @tc.name securitylabel_test_set_security_label_async_003 + * @tc.desc Test that the setSecurityLabel() interface promises to set the data label. + * Test the getSecurityLabel() interface promises to get the data label. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_set_security_label_async_003', 0, async function (done) { + let fpath = await nextFileName('test3.txt'); + fileIO.openSync(fpath, fileIO.OpenMode.CREATE | fileIO.OpenMode.READ_WRITE); + + try { + await securityLabel.setSecurityLabel(fpath, 's3'); + let dataLevel = await securityLabel.getSecurityLabel(fpath); + expect(dataLevel == 's3').assertTrue(); + fileio.unlinkSync(fpath); + done(); + } catch (e) { + console.log('securitylabel_test_set_security_label_async_003 has failed for ' + e.message + ', code: ' + e.code); + expect(false).assertTrue(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0400 + * @tc.name securitylabel_test_set_security_label_async_004 + * @tc.desc Test that the setSecurityLabel() interface promises to set the data label. + * Test the getSecurityLabel() interface promises to get the data label. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_set_security_label_async_004', 0, async function (done) { + let fpath = await nextFileName('test4.txt'); + fileIO.openSync(fpath, fileIO.OpenMode.CREATE | fileIO.OpenMode.READ_WRITE); + + try { + await securityLabel.setSecurityLabel(fpath, 's4'); + let dataLevel = await securityLabel.getSecurityLabel(fpath); + expect(dataLevel == 's4').assertTrue(); + fileio.unlinkSync(fpath); + done(); + } catch (e) { + console.log('securitylabel_test_set_security_label_async_004 has failed for ' + e.message + ', code: ' + e.code); + expect(false).assertTrue(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0500 + * @tc.name securitylabel_test_set_security_label_async_005 + * @tc.desc Test setSecurityLabel() interfaces, when the path type is wrong. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_set_security_label_async_005', 0, async function (done) { + + try { + await securityLabel.setSecurityLabel(123, 's0'); + expect(false).assertTrue(); + } catch (e) { + console.log('securitylabel_test_set_security_label_async_005 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900020 && e.message == "Invalid argument").assertTrue(); + done(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0600 + * @tc.name securitylabel_test_set_security_label_async_006 + * @tc.desc Test setSecurityLabel() interfaces, return false when the path is invalid. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_set_security_label_async_006', 0, async function (done) { + + try { + await securityLabel.setSecurityLabel('/data/test.txt', 's0'); + expect(false).assertTrue(); + } catch (e) { + console.log('securitylabel_test_set_security_label_async_006 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900002 && e.message == 'No such file or directory').assertTrue(); + done(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0700 + * @tc.name securitylabel_test_set_security_label_async_007 + * @tc.desc Test setSecurityLabel() interfaces. Throw exception when path is empty. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_set_security_label_async_007', 0, async function (done) { + + try { + await securityLabel.setSecurityLabel('s0'); + expect(false).assertTrue(); + } catch (e) { + console.log('securitylabel_test_set_security_label_async_007 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900020 && e.message == "Invalid argument").assertTrue(); + done(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0800 + * @tc.name securitylabel_test_set_security_label_async_008 + * @tc.desc Test setSecurityLabel() interfaces, when the dataLevel type is wrong. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_set_security_label_async_008', 0, async function (done) { + let fpath = await nextFileName('test5.txt'); + fileIO.openSync(fpath, fileIO.OpenMode.CREATE | fileIO.OpenMode.READ_WRITE); + + try { + await securityLabel.setSecurityLabel(fpath, 1); + expect(false).assertTrue(); + } catch (e) { + fileio.unlinkSync(fpath); + console.log('securitylabel_test_set_security_label_async_008 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900020 && e.message == "Invalid argument").assertTrue(); + done(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0900 + * @tc.name securitylabel_test_set_security_label_async_009 + * @tc.desc Test setSecurityLabel() interfaces, return false when the dataLevel is invalid. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_set_security_label_async_009', 0, async function (done) { + let fpath = await nextFileName('test6.txt'); + fileIO.openSync(fpath, fileIO.OpenMode.CREATE | fileIO.OpenMode.READ_WRITE); + + try { + await securityLabel.setSecurityLabel(fpath, 'ss'); + expect(false).assertTrue(); + } catch (e) { + fileio.unlinkSync(fpath); + console.log('securitylabel_test_set_security_label_async_009 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900020 && e.message == "Invalid argument").assertTrue(); + done(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_1000 + * @tc.name securitylabel_test_set_security_label_async_010 + * @tc.desc Test setSecurityLabel() interfaces. Throw exception when dataLevel is empty. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_set_security_label_async_010', 0, async function (done) { + let fpath = await nextFileName('test7.txt'); + fileIO.openSync(fpath, fileIO.OpenMode.CREATE | fileIO.OpenMode.READ_WRITE); + + try { + await securityLabel.setSecurityLabel(fpath); + expect(false).assertTrue(); + } catch (e) { + fileio.unlinkSync(fpath); + console.log('securitylabel_test_set_security_label_async_010 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900020 && e.message == "Invalid argument").assertTrue(); + done(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_1100 + * @tc.name securitylabel_test_set_security_label_async_011 + * @tc.desc Test setSecurityLabel() interfaces. Throws an exception when passing multiple parameters. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_set_security_label_async_011', 0, async function (done) { + let fpath = await nextFileName('test8.txt'); + fileIO.openSync(fpath, fileIO.OpenMode.CREATE | fileIO.OpenMode.READ_WRITE); + + try { + securityLabel.setSecurityLabel(fpath, 's0', '', () => { + expect(false).assertTrue(); + }) + } catch (e) { + fileio.unlinkSync(fpath); + console.log('securitylabel_test_set_security_label_async_011 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900020 && e.message == "Invalid argument").assertTrue(); + done(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_1200 + * @tc.name securitylabel_test_set_security_label_async_012 + * @tc.desc Test setSecurityLabel() interfaces, return false when the path is invalid. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_set_security_label_async_012', 0, async function (done) { + + try { + securityLabel.setSecurityLabel('/data/test.txt', 's0', (err) => { + if (err) { + console.log( + 'securitylabel_test_set_security_label_async_012 error package: {' + + err.message + ', code: ' + err.code + '}'); + expect(err.code == 13900002 && err.message == 'No such file or directory').assertTrue(); + done(); } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_SYNC_0040 - * @tc.name securitylabel_test_set_security_label_sync_004 - * @tc.desc Test the setSecurityLabelSync() interface,When there is no datalevel parameter. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_set_security_label_sync_004', 0, async function () { - let fpath = await nextFileName("test.txt"); - fileio.openSync(fpath, 0o102, 0o666); - try { - securityLabel.setSecurityLabelSync(fpath); - } catch (err) { - console.log('securitylabel_test_set_security_label_sync_004 has failed for ' + err); - expect(err.message == "Number of arguments unmatched").assertTrue(); - fileio.unlinkSync(fpath); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0000 - * @tc.name securitylabel_test_set_security_label_async_000 - * @tc.desc Test that the setSecurityLabel() interface callback to set the data label. Test the getSecurityLabel() interface callback to get the data label. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_set_security_label_async_000', 0, async function (done) { - let fpath = await nextFileName('test.txt'); - fileio.openSync(fpath, 0o102, 0o666); - - try { - securityLabel.setSecurityLabel(fpath, 's0', function (err) { - securityLabel.getSecurityLabel(fpath, function (err, dataLevel) { - expect(dataLevel == 's0').assertTrue(); - fileio.unlinkSync(fpath); - done(); - }) - }) - } catch (e) { - console.log('securitylabel_test_set_security_label_async_000 has failed for ' + e); - expect(null).assertFail(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0010 - * @tc.name securitylabel_test_set_security_label_async_001 - * @tc.desc Test that the setSecurityLabel() interface callback to set the data label. Test the getSecurityLabel() interface promises to get the data label. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_set_security_label_async_001', 0, async function (done) { - let fpath = await nextFileName('test1.txt'); - fileio.openSync(fpath, 0o102, 0o666); - - try { - securityLabel.setSecurityLabel(fpath, 's1', async function (err) { - let dataLevel = await securityLabel.getSecurityLabel(fpath); - expect(dataLevel == 's1').assertTrue(); - fileio.unlinkSync(fpath); - done(); - }) - } catch (e) { - console.log('securitylabel_test_set_security_label_async_001 has failed for ' + e); - expect(null).assertFail(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0020 - * @tc.name securitylabel_test_set_security_label_async_002 - * @tc.desc Test that the setSecurityLabel() interface promises to set the data label. Test the getSecurityLabel() interface callback to get the data label. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_set_security_label_async_002', 0, async function (done) { - let fpath = await nextFileName('test2.txt'); - fileio.openSync(fpath, 0o102, 0o666); - - try { - await securityLabel.setSecurityLabel(fpath, 's2'); - securityLabel.getSecurityLabel(fpath, function (err, dataLevel) { - expect(dataLevel == 's2').assertTrue(); - fileio.unlinkSync(fpath); - done(); - }) - } catch (e) { - console.log('securitylabel_test_set_security_label_async_002 has failed for ' + e); - expect(null).assertFail(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0030 - * @tc.name securitylabel_test_set_security_label_async_003 - * @tc.desc Test that the setSecurityLabel() interface promises to set the data label. Test the getSecurityLabel() interface promises to get the data label. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_set_security_label_async_003', 0, async function (done) { - let fpath = await nextFileName('test3.txt'); - fileio.openSync(fpath, 0o102, 0o666); - - try { - await securityLabel.setSecurityLabel(fpath, 's3'); - let dataLevel = await securityLabel.getSecurityLabel(fpath); - expect(dataLevel == 's3').assertTrue(); - fileio.unlinkSync(fpath); - done(); - } catch (e) { - console.log('securitylabel_test_set_security_label_async_003 has failed for ' + e); - expect(null).assertFail(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0040 - * @tc.name securitylabel_test_set_security_label_async_004 - * @tc.desc Test that the setSecurityLabel() interface promises to set the data label. Test the getSecurityLabel() interface promises to get the data label. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_set_security_label_async_004', 0, async function (done) { - let fpath = await nextFileName('test4.txt'); - fileio.openSync(fpath, 0o102, 0o666); - - try { - await securityLabel.setSecurityLabel(fpath, 's4'); - let dataLevel = await securityLabel.getSecurityLabel(fpath); - expect(dataLevel == 's4').assertTrue(); - fileio.unlinkSync(fpath); - done(); - } catch (e) { - console.log('securitylabel_test_set_security_label_async_004 has failed for ' + e); - expect(null).assertFail(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0050 - * @tc.name securitylabel_test_set_security_label_async_005 - * @tc.desc Test setSecurityLabel() interfaces,When the path type is wrong. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_set_security_label_async_005', 0, async function (done) { - try { - await securityLabel.setSecurityLabel(123, 's0'); - } catch (err) { - console.log('securitylabel_test_set_security_label_async_005 has failed for ' + err); - expect(err.message == "Invalid path").assertTrue(); - done(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0060 - * @tc.name securitylabel_test_set_security_label_async_006 - * @tc.desc Test setSecurityLabel() interfaces,return false when the path is invalid. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_set_security_label_async_006', 0, async function (done) { - try { - await securityLabel.setSecurityLabel('/data/test.txt', 's0'); - } catch (err) { - console.log('securitylabel_test_set_security_label_async_006 has failed for ' + err); - expect(err.message == "No such file or directory").assertTrue(); - done(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0070 - * @tc.name securitylabel_test_set_security_label_async_007 - * @tc.desc Test setSecurityLabel() interfaces,Throw exception when path is empty. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_set_security_label_async_007', 0, async function (done) { - try { - await securityLabel.setSecurityLabel('s0'); - } catch (err) { - console.log('securitylabel_test_set_security_label_async_007 has failed for ' + err); - expect(err.message == "Number of arguments unmatched").assertTrue(); - done(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0080 - * @tc.name securitylabel_test_set_security_label_async_008 - * @tc.desc Test setSecurityLabel() interfaces,When the dataLevel type is wrong. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_set_security_label_async_008', 0, async function (done) { - let fpath = await nextFileName('test5.txt'); - fileio.openSync(fpath, 0o102, 0o666); - - try { - await securityLabel.setSecurityLabel(fpath, 1) - } catch (err) { - console.log('securitylabel_test_set_security_label_async_008 has failed for ' + err); - expect(err.message == "Invalid dataLevel").assertTrue(); - done(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0090 - * @tc.name securitylabel_test_set_security_label_async_009 - * @tc.desc Test setSecurityLabel() interfaces,return false when the dataLevel is invalid. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_set_security_label_async_009', 0, async function (done) { - let fpath = await nextFileName('test6.txt'); - fileio.openSync(fpath, 0o102, 0o666); - - try { - await securityLabel.setSecurityLabel(fpath, 'ss'); - } catch (err) { - console.log('securitylabel_test_set_security_label_async_009 has failed for ' + err); - expect(err.message == "Invalid Argument of dataLevelEnum").assertTrue(); - done(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0100 - * @tc.name securitylabel_test_set_security_label_async_010 - * @tc.desc Test setSecurityLabel() interfaces,Throw exception when dataLevel is empty. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_set_security_label_async_010', 0, async function (done) { - let fpath = await nextFileName('test7.txt'); - fileio.openSync(fpath, 0o102, 0o666); - - try { - await securityLabel.setSecurityLabel(fpath); - } catch (err) { - console.log('securitylabel_test_set_security_label_async_010 has failed for ' + err); - fileio.unlinkSync(fpath); - expect(err.message == "Number of arguments unmatched").assertTrue(); - done(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_SET_SECURITY_LABEL_0110 - * @tc.name securitylabel_test_set_security_label_async_011 - * @tc.desc Test setSecurityLabel() interfaces,Throws an exception when passing multiple parameters. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_set_security_label_async_011', 0, async function (done) { - let fpath = await nextFileName('test8.txt'); - fileio.openSync(fpath, 0o102, 0o666); - - try { - securityLabel.setSecurityLabel(fpath, 's0', '', function (err) { - done(); - }) - } catch (err) { - console.log('securitylabel_test_set_security_label_async_011 has failed for ' + err); - fileio.unlinkSync(fpath); - expect(err.message == "Number of arguments unmatched").assertTrue(); - done(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_GET_SECURITY_LABEL_SYNC_0000 - * @tc.name securitylabel_test_get_security_label_sync_000 - * @tc.desc Test getSecurityLabelSync() interfaces,return empty when path is empty string. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_get_security_label_sync_000', 0, function () { - try { - let dataLevel = securityLabel.getSecurityLabelSync(''); - expect(dataLevel == '').assertTrue(); - } catch (e) { - console.log('securitylabel_test_get_security_label_sync_000 has failed for ' + e); - expect(null).assertFail(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_GET_SECURITY_LABEL_SYNC_0010 - * @tc.name securitylabel_test_get_security_label_sync_001 - * @tc.desc Test getSecurityLabelSync() interfaces,return empty when the path is invalid. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_get_security_label_sync_001', 0, function () { - try { - let dataLevel = securityLabel.getSecurityLabelSync('/data/test.txt'); - expect(dataLevel == '').assertTrue(); - } catch (e) { - console.log('securitylabel_test_get_security_label_sync_001 has failed for ' + e); - expect(null).assertFail(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_GET_SECURITY_LABEL_SYNC_0020 - * @tc.name securitylabel_test_get_security_label_sync_002 - * @tc.desc Test getSecurityLabelSync() interfaces,When there are no parameters. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_get_security_label_sync_002', 0, function () { - try { - securityLabel.getSecurityLabelSync(); - } catch (err) { - console.log('securitylabel_test_get_security_label_sync_002 has failed for ' + err); - expect(err.message == "Number of arguments unmatched").assertTrue(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_GET_SECURITY_LABEL_SYNC_0030 - * @tc.name securitylabel_test_get_security_label_sync_003 - * @tc.desc Test getSecurityLabelSync() interfaces,When the path type is wrong. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_get_security_label_sync_003', 0, function () { - try { - securityLabel.getSecurityLabelSync(123); - } catch (err) { - console.log('securitylabel_test_get_security_label_sync_003 has failed for ' + err); - expect(err.message == "Invalid path").assertTrue(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_GET_SECURITY_LABEL_0000 - * @tc.name securitylabel_test_get_security_label_async_000 - * @tc.desc Test getSecurityLabel() interfaces,When the path type is wrong. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_get_security_label_async_000', 0, async function (done) { - try { - await securityLabel.getSecurityLabel(123); - } catch (err) { - console.log('securitylabel_test_get_security_label_async_000 has failed for ' + err); - expect(err.message == "Invalid path").assertTrue(); - done(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_GET_SECURITY_LABEL_0010 - * @tc.name securitylabel_test_get_security_label_async_001 - * @tc.desc Test getSecurityLabel() interfaces,return empty when the path is invalid. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_get_security_label_async_001', 0, async function (done) { - try { - let dataLevel = await securityLabel.getSecurityLabel('/data/test.txt'); - expect(dataLevel == '').assertTrue(); - done(); - } catch (e) { - console.log('securitylabel_test_get_security_label_async_001 has failed for ' + e); - expect(null).assertFail(); - done(); - } - }); + }); + } catch (e) { + console.log('securitylabel_test_set_security_label_async_006 has failed for ' + e.message + ', code: ' + e.code); + expect(false).assertTrue(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_GET_SECURITY_LABEL_SYNC_0000 + * @tc.name securitylabel_test_get_security_label_sync_000 + * @tc.desc Test getSecurityLabelSync() interfaces, return empty when path is empty string. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_get_security_label_sync_000', 0, function () { + + try { + let dataLevel = securityLabel.getSecurityLabelSync(''); + expect(dataLevel == '').assertTrue(); + } catch (e) { + console.log('securitylabel_test_get_security_label_sync_000 has failed for ' + e.message + ', code: ' + e.code); + expect(false).assertTrue(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_GET_SECURITY_LABEL_SYNC_0100 + * @tc.name securitylabel_test_get_security_label_sync_001 + * @tc.desc Test getSecurityLabelSync() interfaces, return empty when the path is invalid. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_get_security_label_sync_001', 0, function () { + + try { + let dataLevel = securityLabel.getSecurityLabelSync('/data/test.txt'); + expect(dataLevel == '').assertTrue(); + } catch (e) { + console.log('securitylabel_test_get_security_label_sync_001 has failed for ' + e.message + ', code: ' + e.code); + expect(false).assertTrue(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_GET_SECURITY_LABEL_SYNC_0200 + * @tc.name securitylabel_test_get_security_label_sync_002 + * @tc.desc Test getSecurityLabelSync() interfaces, when there are no parameters. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_get_security_label_sync_002', 0, function () { + + try { + securityLabel.getSecurityLabelSync(); + expect(false).assertTrue(); + } catch (e) { + console.log('securitylabel_test_get_security_label_sync_002 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900020 && e.message == "Invalid argument").assertTrue(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_GET_SECURITY_LABEL_SYNC_0300 + * @tc.name securitylabel_test_get_security_label_sync_003 + * @tc.desc Test getSecurityLabelSync() interfaces, when the path type is wrong. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_get_security_label_sync_003', 0, function () { + + try { + securityLabel.getSecurityLabelSync(123); + expect(false).assertTrue(); + } catch (e) { + console.log('securitylabel_test_get_security_label_sync_003 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900020 && e.message == "Invalid argument").assertTrue(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_GET_SECURITY_LABEL_0000 + * @tc.name securitylabel_test_get_security_label_async_000 + * @tc.desc Test getSecurityLabel() interfaces, when the path type is wrong. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_get_security_label_async_000', 0, async function (done) { + + try { + await securityLabel.getSecurityLabel(123); + expect(false).assertTrue(); + } catch (e) { + console.log('securitylabel_test_get_security_label_async_000 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900020 && e.message == "Invalid argument").assertTrue(); + done(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_GET_SECURITY_LABEL_0100 + * @tc.name securitylabel_test_get_security_label_async_001 + * @tc.desc Test getSecurityLabel() interfaces, return empty when the path is invalid. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_get_security_label_async_001', 0, async function (done) { + + try { + let dataLevel = await securityLabel.getSecurityLabel('/data/test.txt'); + expect(dataLevel == '').assertTrue(); + done(); + } catch (e) { + console.log('securitylabel_test_get_security_label_async_001 has failed for ' + e.message + ', code: ' + e.code); + expect(false).assertTrue(); + } + }); - /** - * @tc.number SUB_DF_SECURITYLABEL_GET_SECURITY_LABEL_0020 - * @tc.name securitylabel_test_get_security_label_async_002 - * @tc.desc Test getSecurityLabel() interfaces,Throw exception when path is empty. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_get_security_label_async_002', 0, async function (done) { - try { - await securityLabel.getSecurityLabel(); - } catch (err) { - console.log('securitylabel_test_get_security_label_async_002 has failed for ' + err); - expect(err.message == "Number of arguments unmatched").assertTrue(); - done(); - } - }); - - /** - * @tc.number SUB_DF_SECURITYLABEL_GET_SECURITY_LABEL_0030 - * @tc.name securitylabel_test_get_security_label_async_003 - * @tc.desc Test getSecurityLabel() interfaces,Throws an exception when passing multiple parameters. - * @tc.size MEDIUM - * @tc.type Function - * @tc.level Level 0 - * @tc.require - */ - it('securitylabel_test_get_security_label_async_003', 0, async function (done) { - let fpath = await nextFileName('test9.txt'); - fileio.openSync(fpath, 0o102, 0o666); - try { - securityLabel.getSecurityLabel(fpath, '', function(err, dataLevel) { - done(); - }); - } catch (err) { - console.log('securitylabel_test_get_security_label_async_003 has failed for ' + err); - fileio.unlinkSync(fpath); - expect(err.message == "Number of arguments unmatched").assertTrue(); - done(); - } - }); + /** + * @tc.number SUB_DF_SECURITYLABEL_GET_SECURITY_LABEL_0200 + * @tc.name securitylabel_test_get_security_label_async_002 + * @tc.desc Test getSecurityLabel() interfaces. Throw exception when path is empty. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_get_security_label_async_002', 0, async function (done) { + + try { + await securityLabel.getSecurityLabel(); + expect(false).assertTrue(); + } catch (e) { + console.log('securitylabel_test_get_security_label_async_002 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900020 && e.message == "Invalid argument").assertTrue(); + done(); + } + }); + + /** + * @tc.number SUB_DF_SECURITYLABEL_GET_SECURITY_LABEL_0300 + * @tc.name securitylabel_test_get_security_label_async_003 + * @tc.desc Test getSecurityLabel() interfaces. Throws an exception when passing multiple parameters. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('securitylabel_test_get_security_label_async_003', 0, async function (done) { + let fpath = await nextFileName('test9.txt'); + fileIO.openSync(fpath, fileIO.OpenMode.CREATE | fileIO.OpenMode.READ_WRITE); + + try { + securityLabel.getSecurityLabel(fpath, '', () => { + expect(false).assertTrue(); + }); + } catch (e) { + fileio.unlinkSync(fpath); + console.log('securitylabel_test_get_security_label_async_003 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900020 && e.message == "Invalid argument").assertTrue(); + done(); + } + }); }); } diff --git a/storage/storagestatfsjstest/src/main/js/test/Common.js b/storage/storagestatfsjstest/src/main/js/test/Common.js index bc92fb897a86dac1274acd4c50a4963e938307b4..20c2c416169da3e351d6553ee154a915dc233a1f 100644 --- a/storage/storagestatfsjstest/src/main/js/test/Common.js +++ b/storage/storagestatfsjstest/src/main/js/test/Common.js @@ -14,6 +14,7 @@ */ import statfs from '@ohos.statfs'; +import statvfs from '@ohos.file.statvfs' export const FILE_CONTENT = 'hello world'; @@ -32,5 +33,6 @@ export { afterAll, it, expect, - statfs + statfs, + statvfs }; \ No newline at end of file diff --git a/storage/storagestatfsjstest/src/main/js/test/List.test.js b/storage/storagestatfsjstest/src/main/js/test/List.test.js index ce098c74e6dceb96abaa5af0de9a530d3d7bb649..52a7c87529423b5e4103ed61ef6333338b1dbb8e 100644 --- a/storage/storagestatfsjstest/src/main/js/test/List.test.js +++ b/storage/storagestatfsjstest/src/main/js/test/List.test.js @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 Huawei Device Co., Ltd. + * Copyright (C) 2021-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 @@ -14,6 +14,8 @@ */ import statfs_test from './statfs.test.js' +import statvfs_test from './statvfs.test.js' export default function testsuite() { statfs_test() + statvfs_test() } diff --git a/storage/storagestatfsjstest/src/main/js/test/statvfs.test.js b/storage/storagestatfsjstest/src/main/js/test/statvfs.test.js new file mode 100644 index 0000000000000000000000000000000000000000..0332956b3331184016bf14990d782559c158ad96 --- /dev/null +++ b/storage/storagestatfsjstest/src/main/js/test/statvfs.test.js @@ -0,0 +1,296 @@ +/* + * Copyright (C) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the 'License'); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an 'AS IS' BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import {describe, it, expect, isIntNum, statvfs} from './Common'; +import featureAbility from '@ohos.ability.featureAbility'; + +export default function statvfs_test() { +describe('statvfs_test', function () { + + /** + * @tc.number SUB_DF_STATFS_GET_FREE_SIZE_0000 + * @tc.name statvfs_test_get_free_size_async_000 + * @tc.desc Test getFreeSize() interfaces, when the path is a sandbox path, promise way back. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('statvfs_test_get_free_size_async_000', 0, async function (done) { + try { + let context = featureAbility.getContext(); + let data = await context.getFilesDir(); + let number = await statvfs.getFreeSize(data); + console.log("getFreeSize getFilesDir===>" + (number / 1024)); + expect(isIntNum(number)).assertTrue(); + done(); + } catch (e) { + console.log('statvfs_test_get_free_size_async_000 has failed for ' + e.message + ', code: ' + e.code); + expect(false).assertTrue(); + } + }); + + /** + * @tc.number SUB_DF_STATFS_GET_FREE_SIZE_0100 + * @tc.name statvfs_test_get_free_size_async_001 + * @tc.desc Test getFreeSize() interfaces, when the path is dev, callback way back. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('statvfs_test_get_free_size_async_001', 0, async function (done) { + try { + statvfs.getFreeSize("/dev", (err, number) => { + if (err) { + console.log('statvfs_test_get_free_size_async_001 error package: ' + JSON.stringify(err)); + expect(false).assertTrue(); + } + console.log("getFreeSizeNumber dev===>:" + (number / 1024)); + expect(isIntNum(number)).assertTrue(); + done(); + }); + } catch (e) { + console.log('statvfs_test_get_free_size_async_001 has failed for ' + e.message + ', code: ' + e.code); + expect(false).assertTrue(); + } + }); + + /** + * @tc.number SUB_DF_STATFS_GET_FREE_SIZE_0200 + * @tc.name statvfs_test_get_free_size_async_002 + * @tc.desc Test getFreeSize() interfaces, when the parameter type is wrong. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('statvfs_test_get_free_size_async_002', 0, async function (done) { + try { + await statvfs.getFreeSize(1); + expect(false).assertTrue(); + } catch (e) { + console.log('statvfs_test_get_free_size_async_002 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900020 && e.message == "Invalid argument").assertTrue(); + done(); + } + }); + + /** + * @tc.number SUB_DF_STATFS_GET_FREE_SIZE_0300 + * @tc.name statvfs_test_get_free_size_async_003 + * @tc.desc Test getFreeSize() interfaces, when there are no parameters. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('statvfs_test_get_free_size_async_003', 0, async function (done) { + try { + await statvfs.getFreeSize(); + expect(false).assertTrue(); + } catch (e) { + console.log('statvfs_test_get_free_size_async_003 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900020 && e.message == "Invalid argument").assertTrue(); + done(); + } + }); + + /** + * @tc.number SUB_DF_STATFS_GET_FREE_SIZE_0400 + * @tc.name statvfs_test_get_free_size_async_004 + * @tc.desc Test getFreeSize() interfaces, when the path is empty. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('statvfs_test_get_free_size_async_004', 0, async function (done) { + try { + await statvfs.getFreeSize(""); + expect(false).assertTrue(); + } catch (e) { + console.log('statvfs_test_get_free_size_async_004 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900002 && e.message == 'No such file or directory').assertTrue(); + done(); + } + }); + + /** + * @tc.number SUB_DF_STATFS_GET_FREE_SIZE_0500 + * @tc.name statvfs_test_get_free_size_async_005 + * @tc.desc Test getFreeSize() interfaces, when the path is empty. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('statvfs_test_get_free_size_async_005', 0, async function (done) { + try { + statvfs.getFreeSize("", (err) => { + if (err) { + console.log( + 'statvfs_test_get_free_size_async_005 error package: {' + err.message + ', code: ' + err.code + '}'); + expect(err.code == 13900002 && err.message == 'No such file or directory').assertTrue(); + done(); + } + }); + } catch (e) { + console.log('statvfs_test_get_free_size_async_005 has failed for ' + e.message + ', code: ' + e.code); + expect(false).assertTrue(); + } + }); + + /** + * @tc.number SUB_DF_STATFS_GET_TOTAL_SIZE_0000 + * @tc.name statvfs_test_get_total_size_async_000 + * @tc.desc Test getTotalSize() interfaces, when the path is a sandbox path, promise way back. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('statvfs_test_get_total_size_async_000', 0, async function (done) { + + try { + let context = featureAbility.getContext(); + let data = await context.getFilesDir(); + let number = await statvfs.getTotalSize(data); + console.log("getTotalSizeNumber GetFilesDir====>:" + (number / 1024)); + expect(isIntNum(number)).assertTrue(); + done(); + } catch (e) { + console.log('statvfs_test_get_total_size_async_000 has failed for ' + e.message + ', code: ' + e.code); + expect(false).assertTrue(); + } + }); + + /** + * @tc.number SUB_DF_STATFS_GET_TOTAL_SIZE_0100 + * @tc.name statvfs_test_get_total_size_async_001 + * @tc.desc Test getTotalSize() interfaces, when the path is dev, callback way back. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('statvfs_test_get_total_size_async_001', 0, async function (done) { + + try { + statvfs.getTotalSize("/dev", (err, number) => { + if (err) { + console.log('statvfs_test_get_total_size_async_001 error package: ' + JSON.stringify(err)); + expect(false).assertTrue(); + } + console.log("getTotalSizeNumber dev===>:" + (number / 1024)); + expect(isIntNum(number)).assertTrue(); + done(); + }); + } catch (e) { + console.log('statvfs_test_get_total_size_async_001 has failed for ' + e.message + ', code: ' + e.code); + expect(false).assertTrue(); + } + }); + + /** + * @tc.number SUB_DF_STATFS_GET_TOTAL_SIZE_0200 + * @tc.name statvfs_test_get_total_size_async_002 + * @tc.desc Test getTotalSize() interfaces, when the parameter type is wrong. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('statvfs_test_get_total_size_async_002', 0, async function (done) { + + try { + await statvfs.getTotalSize(1); + expect(false).assertTrue(); + } catch (e) { + console.log('statvfs_test_get_total_size_async_002 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900020 && e.message == "Invalid argument").assertTrue(); + done(); + } + }); + + /** + * @tc.number SUB_DF_STATFS_GET_TOTAL_SIZE_0300 + * @tc.name statvfs_test_get_total_size_async_003 + * @tc.desc Test getTotalSize() interfaces, when there are no parameters. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('statvfs_test_get_total_size_async_003', 0, async function (done) { + + try { + await statvfs.getTotalSize(); + expect(false).assertTrue(); + } catch (e) { + console.log('statvfs_test_get_total_size_async_003 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900020 && e.message == "Invalid argument").assertTrue(); + done(); + } + }); + + /** + * @tc.number SUB_DF_STATFS_GET_TOTAL_SIZE_0400 + * @tc.name statvfs_test_get_total_size_async_004 + * @tc.desc Test getTotalSize() interfaces, when the path is empty. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('statvfs_test_get_total_size_async_004', 0, async function (done) { + + try { + await statvfs.getTotalSize(""); + expect(false).assertTrue(); + } catch (e) { + console.log('statvfs_test_get_total_size_async_004 has failed for ' + e.message + ', code: ' + e.code); + expect(e.code == 13900002 && e.message == 'No such file or directory').assertTrue(); + done(); + } + }); + + /** + * @tc.number SUB_DF_STATFS_GET_TOTAL_SIZE_0500 + * @tc.name statvfs_test_get_total_size_async_005 + * @tc.desc Test getTotalSize() interfaces, when the path is empty. + * @tc.size MEDIUM + * @tc.type Function + * @tc.level Level 0 + * @tc.require + */ + it('statvfs_test_get_total_size_async_005', 0, async function (done) { + + try { + statvfs.getTotalSize("", (err) => { + if (err) { + console.log( + 'statvfs_test_get_total_size_async_005 error package: {' + err.message + ', code: ' + err.code + '}'); + expect(err.code == 13900002 && err.message == 'No such file or directory').assertTrue(); + done(); + } + }); + } catch (e) { + console.log('statvfs_test_get_total_size_async_004 has failed for ' + e.message + ', code: ' + e.code); + expect(false).assertTrue(); + } + }); +}); +}