diff --git a/usb/usb_standard/src/main/js/test/UsbCoreJsunit.test.js b/usb/usb_standard/src/main/js/test/UsbCoreJsunit.test.js index 090b58f7a373f494bf117ba8cf7abadd24c63495..3afd6d855d21d86a3eb3169fe09fba52cbd6dd62 100644 --- a/usb/usb_standard/src/main/js/test/UsbCoreJsunit.test.js +++ b/usb/usb_standard/src/main/js/test/UsbCoreJsunit.test.js @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Copyright (c) 2021-2023 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 diff --git a/usb/usb_standard/src/main/js/test/UsbDevicePipeJsunit.test.js b/usb/usb_standard/src/main/js/test/UsbDevicePipeJsunit.test.js index 2808b63d8e8aad5f8f73954f4b0c69a6247dbf4d..2e15662a88085fd9267d2221b11db841aac13bc9 100644 --- a/usb/usb_standard/src/main/js/test/UsbDevicePipeJsunit.test.js +++ b/usb/usb_standard/src/main/js/test/UsbDevicePipeJsunit.test.js @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Copyright (c) 2021-2023 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 @@ -783,5 +783,34 @@ describe('UsbDevicePipeJsFunctionsTest', function () { console.info('usb SUB_USB_JS_1560 : PASS'); } }) + + /** + * @tc.number: SUB_USB_JS_1570 + * @tc.name: controlTransfer + * @tc.desc: Negative test: control transfer, parameter timeout type error + */ + it('SUB_USB_JS_1570', 0, function () { + console.info('usb SUB_USB_JS_1570 begin'); + if (portCurrentMode == 1) { + console.info('usb 1570 case get_device port is device') + expect(false).assertFalse(); + return + } + var testParam = getTransferTestParam() + if (testParam.inEndpoint == null || testParam.interface == null || testParam.outEndpoint == null) { + expect(false).assertTrue(); + return + } + var timeout = "invalid"; + var controlParam = getTransferParam(255, usb.USB_REQUEST_TARGET_OTHER, (usb.USB_REQUEST_DIR_TO_DEVICE) + | (usb.USB_REQUEST_TYPE_CLASS << 5) | (usb.USB_REQUEST_TARGET_OTHER & 0x1f), 0, 0); + try { + callControlTransferEx(testParam.pip, controlParam, timeout, 'SUB_USB_JS_1570 ClearFeature'); + } catch (err) { + console.info('usb 1570 catch err code: ' + err.code + ' message: ' + err.message); + expect(err.code).assertEqual(401); + console.info('usb SUB_USB_JS_1570 : PASS'); + } + }) }) } diff --git a/usb/usb_standard/src/main/js/test/UsbDevicePipeJsunitEx.test.js b/usb/usb_standard/src/main/js/test/UsbDevicePipeJsunitEx.test.js index c3ce499cd7159b3c2d41f4dcbbbb4348b919eadd..f00ff2508603b50a574d2c28269e12a80f52825c 100644 --- a/usb/usb_standard/src/main/js/test/UsbDevicePipeJsunitEx.test.js +++ b/usb/usb_standard/src/main/js/test/UsbDevicePipeJsunitEx.test.js @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Copyright (c) 2021-2023 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 @@ -448,6 +448,89 @@ describe('UsbDevicePipeJsFunctionsTestEx', function () { } }) + /** + * @tc.number: SUB_USB_JS_1500 + * @tc.name: bulkTransfer + * @tc.desc: Negative test: bulk transfer, parameter Uint8Array type error + */ + it('SUB_USB_JS_1500', 0, function () { + console.info('usb SUB_USB_JS_1500 begin'); + if (portCurrentMode == 1) { + console.info('usb case get_device port is device'); + expect(false).assertFalse(); + return + } + var testParam = getTransferTestParam() + if (testParam.interface == null || testParam.inEndpoint == null) { + console.info('usb case testParam_interface and testParam_inEndpoint is null'); + expect(false).assertTrue(); + return + } + + testParam.isClaimed = usb.claimInterface(testParam.pip, testParam.interface, true); + expect(testParam.isClaimed).assertEqual(0); + + console.info('usb case readData begin'); + var tmpUint8Array = "invalid"; + try { + usb.bulkTransfer(testParam.pip, testParam.inEndpoint, tmpUint8Array, 5000).then(data => { + console.info('usb case SUB_USB_JS_1500 ret: ' + data); + expect(false).assertTrue(); + console.info('usb case SUB_USB_JS_1500 : FAILED'); + }).catch(error => { + console.info('usb 1500 write error : ' + JSON.stringify(error)); + expect(false).assertTrue(); + console.info('usb case SUB_USB_JS_1500 : FAILED'); + }); + } catch (err) { + console.info('usb 1500 catch err code: ' + err.code + ' message: ' + err.message); + expect(err.code).assertEqual(401); + console.info('usb SUB_USB_JS_1500 : PASS'); + } + }) + + /** + * @tc.number: SUB_USB_JS_1530 + * @tc.name: bulkTransfer + * @tc.desc: Negative test: bulk transfer, parameter timeout type error + */ + it('SUB_USB_JS_1530', 0, function () { + console.info('usb SUB_USB_JS_1530 begin'); + if (portCurrentMode == 1) { + console.info('usb case get_device port is device'); + expect(false).assertFalse(); + return + } + var testParam = getTransferTestParam() + if (testParam.interface == null || testParam.inEndpoint == null) { + console.info('usb case testParam_interface and testParam_inEndpoint is null'); + expect(false).assertTrue(); + return + } + + testParam.isClaimed = usb.claimInterface(testParam.pip, testParam.interface, true); + expect(testParam.isClaimed).assertEqual(0); + + console.info('usb case readData begin'); + var tmpTimeOut = "invalid"; + var tmpUint8Array = new Uint8Array(testParam.maxInSize); + try { + usb.bulkTransfer(testParam.pip, testParam.inEndpoint, tmpUint8Array, tmpTimeOut).then(data => { + console.info('usb case SUB_USB_JS_1530 ret: ' + data); + expect(false).assertTrue(); + console.info('usb case SUB_USB_JS_1530 : FAILED'); + }).catch(error => { + console.info('usb 1530 write error : ' + JSON.stringify(error)); + expect(false).assertTrue(); + console.info('usb case SUB_USB_JS_1530 : FAILED'); + }); + } catch (err) { + console.info('usb 1530 catch err code: ' + err.code + ' message: ' + err.message); + expect(err.code).assertEqual(401); + console.info('usb SUB_USB_JS_1530 : PASS'); + } + }) + /** * @tc.number: SUB_USB_JS_0430 * @tc.name: claimInterface diff --git a/usb/usb_standard/src/main/js/test/UsbFunctionsJsunit.test.js b/usb/usb_standard/src/main/js/test/UsbFunctionsJsunit.test.js index 725e9b3284c8597cc7c085c8632a9e6d6d6c4a93..b80b35b8fa01c3dcc029d9de60a111429b1894cb 100644 --- a/usb/usb_standard/src/main/js/test/UsbFunctionsJsunit.test.js +++ b/usb/usb_standard/src/main/js/test/UsbFunctionsJsunit.test.js @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Copyright (c) 2021-2023 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 diff --git a/usb/usb_standard/src/main/js/test/UsbPortJsunitEx.test.js b/usb/usb_standard/src/main/js/test/UsbPortJsunitEx.test.js index d434b7b67533d5c58980c47408958b43217f5877..f28e2ec57d5a7ac11bad45c8468662c4b67b2b4c 100644 --- a/usb/usb_standard/src/main/js/test/UsbPortJsunitEx.test.js +++ b/usb/usb_standard/src/main/js/test/UsbPortJsunitEx.test.js @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Copyright (c) 2021-2023 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