1 /*
2 * Copyright (c) 2021-2023 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16 #include "usbd_transfer_test.h"
17
18 #include <iostream>
19 #include <vector>
20
21 #include "UsbSubscriberTest.h"
22 #include "hdf_log.h"
23 #include "usb_ddk.h"
24 #include "usb_ddk_interface.h"
25 #include "securec.h"
26 #include "usbd_type.h"
27 #include "v1_0/iusb_interface.h"
28 #include "v1_0/usb_types.h"
29
30 const int SLEEP_TIME = 3;
31 const uint8_t BUS_NUM_INVALID = 255;
32 const uint8_t DEV_ADDR_INVALID = 255;
33 const uint32_t MAX_BUFFER_LENGTH = 255;
34 const uint8_t INTERFACEID_OK = 1;
35 const uint8_t PIPE_ENDPOINTID_INVALID = 244;
36 const uint8_t PIPE_INTERFACEID_INVALID = 244;
37 // data interface have 2 point : 1->bulk_out 2->bulk_in
38 static const uint8_t POINTID_BULK_IN = USB_ENDPOINT_DIR_IN | 2;
39 static const uint8_t POINTID_BULK_OUT = USB_ENDPOINT_DIR_OUT | 1;
40 const int32_t ASHMEM_MAX_SIZE = 1024;
41 const uint8_t SAMPLE_DATA_1 = 1;
42 static const uint8_t SAMPLE_DATA_2 = 2;
43 static const uint8_t SAMPLE_DATA_3 = 3;
44 const int32_t TRANSFER_TIME_OUT = 1000;
45 const int32_t CTL_VALUE = 0x100;
46
47 using namespace testing::ext;
48 using namespace OHOS;
49 using namespace OHOS::USB;
50 using namespace std;
51 using namespace OHOS::HDI::Usb::V1_0;
52
53 UsbDev UsbdTransferTest::dev_ = {0, 0};
54 sptr<UsbSubscriberTest> UsbdTransferTest::subscriber_ = nullptr;
55 namespace {
56 sptr<IUsbInterface> g_usbInterface = nullptr;
57
InitAshmemOne(sptr<Ashmem> & asmptr,int32_t asmSize,uint8_t rflg)58 int32_t InitAshmemOne(sptr<Ashmem> &asmptr, int32_t asmSize, uint8_t rflg)
59 {
60 asmptr = Ashmem::CreateAshmem("ttashmem000", asmSize);
61 if (asmptr == nullptr) {
62 HDF_LOGE("InitAshmemOne CreateAshmem failed\n");
63 return HDF_FAILURE;
64 }
65
66 asmptr->MapReadAndWriteAshmem();
67
68 if (rflg == 0) {
69 uint8_t tdata[ASHMEM_MAX_SIZE];
70 int32_t offset = 0;
71 int32_t tlen = 0;
72
73 int32_t retSafe = memset_s(tdata, sizeof(tdata), 'Y', ASHMEM_MAX_SIZE);
74 if (retSafe != EOK) {
75 HDF_LOGE("InitAshmemOne memset_s failed\n");
76 return HDF_FAILURE;
77 }
78 while (offset < asmSize) {
79 tlen = (asmSize - offset) < ASHMEM_MAX_SIZE ? (asmSize - offset) : ASHMEM_MAX_SIZE;
80 asmptr->WriteToAshmem(tdata, tlen, offset);
81 offset += tlen;
82 }
83 }
84 return HDF_SUCCESS;
85 }
86
SetUpTestCase(void)87 void UsbdTransferTest::SetUpTestCase(void)
88 {
89 g_usbInterface = IUsbInterface::Get();
90 if (g_usbInterface == nullptr) {
91 HDF_LOGE("%{public}s:IUsbInterface::Get() failed.", __func__);
92 exit(0);
93 }
94 const int32_t DEFAULT_PORT_ID = 1;
95 const int32_t DEFAULT_ROLE_HOST = 1;
96 auto ret = g_usbInterface->SetPortRole(DEFAULT_PORT_ID, DEFAULT_ROLE_HOST, DEFAULT_ROLE_HOST);
97 sleep(SLEEP_TIME);
98 HDF_LOGI("UsbdTransferTest::[Device] %{public}d SetPortRole=%{public}d", __LINE__, ret);
99 ASSERT_EQ(0, ret);
100 if (ret != 0) {
101 exit(0);
102 }
103
104 subscriber_ = new UsbSubscriberTest();
105 if (subscriber_ == nullptr) {
106 HDF_LOGE("%{public}s:UsbSubscriberTest new failed.", __func__);
107 exit(0);
108 }
109 if (g_usbInterface->BindUsbdSubscriber(subscriber_) != HDF_SUCCESS) {
110 HDF_LOGE("%{public}s: bind usbd subscriber_ failed\n", __func__);
111 exit(0);
112 }
113
114 std::cout << "please connect device, press enter to continue" << std::endl;
115 int c;
116 while ((c = getchar()) != '\n' && c != EOF) {}
117
118 dev_ = {subscriber_->busNum_, subscriber_->devAddr_};
119 ret = g_usbInterface->OpenDevice(dev_);
120 HDF_LOGI("UsbdTransferTest:: %{public}d OpenDevice=%{public}d", __LINE__, ret);
121 ASSERT_EQ(0, ret);
122 }
123
TearDownTestCase(void)124 void UsbdTransferTest::TearDownTestCase(void)
125 {
126 g_usbInterface->UnbindUsbdSubscriber(subscriber_);
127 dev_ = {subscriber_->busNum_, subscriber_->devAddr_};
128 auto ret = g_usbInterface->CloseDevice(dev_);
129 HDF_LOGI("UsbdTransferTest:: %{public}d Close=%{public}d", __LINE__, ret);
130 ASSERT_EQ(0, ret);
131 }
132
SetUp(void)133 void UsbdTransferTest::SetUp(void) {}
134
TearDown(void)135 void UsbdTransferTest::TearDown(void) {}
136
137 /**
138 * @tc.name: UsbdControlTransferRead001
139 * @tc.desc: Test functions to ControlTransferRead
140 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
141 * @tc.desc: Positive test: parameters correctly, standard request: get configuration
142 * @tc.type: FUNC
143 */
144 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead001, TestSize.Level1)
145 {
146 struct UsbDev dev = dev_;
147 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
148 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN, USB_DDK_REQ_GET_CONFIGURATION, 0, 0, TRANSFER_TIME_OUT};
149 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
150 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead001 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
151 ASSERT_EQ(0, ret);
152 }
153
154 /**
155 * @tc.name: UsbdControlTransferRead002
156 * @tc.desc: Test functions to ControlTransferRead
157 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
158 * @tc.desc: Negative test: parameters exception, busNum error, standard request: get configuration
159 * @tc.type: FUNC
160 */
161 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead002, TestSize.Level1)
162 {
163 struct UsbDev dev = {BUS_NUM_INVALID, dev_.devAddr};
164 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
165 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN, USB_DDK_REQ_GET_CONFIGURATION, 0, 0, TRANSFER_TIME_OUT};
166 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
167 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead002 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
168 ASSERT_NE(ret, 0);
169 }
170
171 /**
172 * @tc.name: UsbdControlTransferRead003
173 * @tc.desc: Test functions to ControlTransferRead
174 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
175 * @tc.desc: Negative test: parameters exception, devAddr error, standard request: get configuration
176 * @tc.type: FUNC
177 */
178 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead003, TestSize.Level1)
179 {
180 struct UsbDev dev = {dev_.busNum, DEV_ADDR_INVALID};
181 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
182 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN, USB_DDK_REQ_GET_CONFIGURATION, 0, 0, TRANSFER_TIME_OUT};
183 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
184 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead003 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
185 ASSERT_NE(ret, 0);
186 }
187
188 /**
189 * @tc.name: UsbdControlTransferRead004
190 * @tc.desc: Test functions to ControlTransferRead
191 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
192 * @tc.desc: Positive test: parameters correctly, standard request: get descriptor(device)
193 * @tc.type: FUNC
194 */
195 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead004, TestSize.Level1)
196 {
197 struct UsbDev dev = dev_;
198 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
199 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN, USB_DDK_REQ_GET_DESCRIPTOR, CTL_VALUE, 0,
200 TRANSFER_TIME_OUT};
201 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
202 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead004 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
203 ASSERT_EQ(0, ret);
204 }
205
206 /**
207 * @tc.name: UsbdControlTransferRead005
208 * @tc.desc: Test functions to ControlTransferRead
209 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
210 * @tc.desc: Negative test: parameters exception, busNum error, standard request: get descriptor(device)
211 * @tc.type: FUNC
212 */
213 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead005, TestSize.Level1)
214 {
215 struct UsbDev dev = {BUS_NUM_INVALID, dev_.devAddr};
216 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
217 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN, USB_DDK_REQ_GET_DESCRIPTOR, CTL_VALUE, 0,
218 TRANSFER_TIME_OUT};
219 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
220 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead005 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
221 ASSERT_NE(ret, 0);
222 }
223
224 /**
225 * @tc.name: UsbdControlTransferRead006
226 * @tc.desc: Test functions to ControlTransferRead
227 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
228 * @tc.desc: Negative test: parameters exception, devAddr error, standard request: get descriptor(device)
229 * @tc.type: FUNC
230 */
231 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead006, TestSize.Level1)
232 {
233 struct UsbDev dev = {dev_.busNum, DEV_ADDR_INVALID};
234 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
235 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN, USB_DDK_REQ_GET_DESCRIPTOR, CTL_VALUE, 0,
236 TRANSFER_TIME_OUT};
237 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
238 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead006 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
239 ASSERT_NE(ret, 0);
240 }
241
242 /**
243 * @tc.name: UsbdControlTransferRead007
244 * @tc.desc: Test functions to ControlTransferRead
245 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
246 * @tc.desc: Positive test: parameters correctly, standard request: get interface
247 * @tc.type: FUNC
248 */
249 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead007, TestSize.Level1)
250 {
251 struct UsbDev dev = dev_;
252 int32_t intercafeidex = 0;
253 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
254 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN | USB_REQUEST_TARGET_INTERFACE,
255 USB_DDK_REQ_GET_INTERFACE, 0, intercafeidex, TRANSFER_TIME_OUT};
256 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
257 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead007 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
258 ASSERT_EQ(0, ret);
259 }
260
261 /**
262 * @tc.name: UsbdControlTransferRead008
263 * @tc.desc: Test functions to ControlTransferRead
264 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
265 * @tc.desc: Negative test: parameters exception, busNum error, standard request: get interface
266 * @tc.type: FUNC
267 */
268 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead008, TestSize.Level1)
269 {
270 struct UsbDev dev = {BUS_NUM_INVALID, dev_.devAddr};
271 int32_t intercafeidex = 0;
272 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
273 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN | USB_REQUEST_TARGET_INTERFACE,
274 USB_DDK_REQ_GET_INTERFACE, 0, intercafeidex, TRANSFER_TIME_OUT};
275 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
276 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead008 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
277 ASSERT_NE(ret, 0);
278 }
279
280 /**
281 * @tc.name: UsbdControlTransferRead009
282 * @tc.desc: Test functions to ControlTransferRead
283 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
284 * @tc.desc: Negative test: parameters exception, devAddr error, standard request: get interface
285 * @tc.type: FUNC
286 */
287 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead009, TestSize.Level1)
288 {
289 struct UsbDev dev = {dev_.busNum, DEV_ADDR_INVALID};
290 int32_t intercafeidex = 0;
291 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
292 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN | USB_REQUEST_TARGET_INTERFACE,
293 USB_DDK_REQ_GET_INTERFACE, 0, intercafeidex, TRANSFER_TIME_OUT};
294 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
295 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead009 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
296 ASSERT_NE(ret, 0);
297 }
298
299 /**
300 * @tc.name: UsbdControlTransferRead010
301 * @tc.desc: Test functions to ControlTransferRead
302 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
303 * @tc.desc: Positive test: parameters correctly, standard request: get status(recipient device)
304 * @tc.type: FUNC
305 */
306 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead010, TestSize.Level1)
307 {
308 struct UsbDev dev = dev_;
309 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
310 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN, 0, 0, 0, TRANSFER_TIME_OUT};
311 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
312 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead010 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
313 ASSERT_EQ(0, ret);
314 }
315
316 /**
317 * @tc.name: UsbdControlTransferRead011
318 * @tc.desc: Test functions to ControlTransferRead
319 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
320 * @tc.desc: Negative test: parameters exception, busNum error, standard request: get status(device)
321 * @tc.type: FUNC
322 */
323 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead011, TestSize.Level1)
324 {
325 struct UsbDev dev = {BUS_NUM_INVALID, dev_.devAddr};
326 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
327 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN, 0, 0, 0, TRANSFER_TIME_OUT};
328 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
329 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead011 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
330 ASSERT_NE(ret, 0);
331 }
332
333 /**
334 * @tc.name: UsbdControlTransferRead012
335 * @tc.desc: Test functions to ControlTransferRead
336 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
337 * @tc.desc: Negative test: parameters exception, devAddr error, standard request: get status(device)
338 * @tc.type: FUNC
339 */
340 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead012, TestSize.Level1)
341 {
342 struct UsbDev dev = {dev_.busNum, DEV_ADDR_INVALID};
343 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
344 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN, 0, 0, 0, TRANSFER_TIME_OUT};
345 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
346 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead012 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
347 ASSERT_NE(ret, 0);
348 }
349
350 /**
351 * @tc.name: UsbdControlTransferRead013
352 * @tc.desc: Test functions to ControlTransferRead
353 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
354 * @tc.desc: Positive test: parameters correctly, standard request: get status(interface)
355 * @tc.type: FUNC
356 */
357 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead013, TestSize.Level1)
358 {
359 struct UsbDev dev = dev_;
360 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
361 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN | USB_REQUEST_TARGET_INTERFACE, 0, 0, 0,
362 TRANSFER_TIME_OUT};
363 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
364 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead013 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
365 ASSERT_EQ(0, ret);
366 }
367
368 /**
369 * @tc.name: UsbdControlTransferRead014
370 * @tc.desc: Test functions to ControlTransferRead
371 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
372 * @tc.desc: Negative test: parameters exception, busNum error, standard request: get status(interface)
373 * @tc.type: FUNC
374 */
375 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead014, TestSize.Level1)
376 {
377 struct UsbDev dev = {BUS_NUM_INVALID, dev_.devAddr};
378 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
379 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN | USB_REQUEST_TARGET_INTERFACE, 0, 0, 0,
380 TRANSFER_TIME_OUT};
381 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
382 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead014 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
383 ASSERT_NE(ret, 0);
384 }
385
386 /**
387 * @tc.name: UsbdControlTransferRead015
388 * @tc.desc: Test functions to ControlTransferRead
389 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
390 * @tc.desc: Negative test: parameters exception, devAddr error, standard request: get status(interface)
391 * @tc.type: FUNC
392 */
393 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead015, TestSize.Level1)
394 {
395 struct UsbDev dev = {dev_.busNum, DEV_ADDR_INVALID};
396 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
397 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN | USB_REQUEST_TARGET_INTERFACE, 0, 0, 0,
398 TRANSFER_TIME_OUT};
399 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
400 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead015 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
401 ASSERT_NE(ret, 0);
402 }
403
404 /**
405 * @tc.name: UsbdControlTransferRead016
406 * @tc.desc: Test functions to ControlTransferRead
407 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
408 * @tc.desc: Positive test: parameters correctly, standard request: get status(endpoint)
409 * @tc.type: FUNC
410 */
411 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead016, TestSize.Level1)
412 {
413 struct UsbDev dev = dev_;
414 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
415 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN | USB_REQUEST_TARGET_ENDPOINT, 0, 0, 0,
416 TRANSFER_TIME_OUT};
417 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
418 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead016 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
419 ASSERT_EQ(0, ret);
420 }
421
422 /**
423 * @tc.name: UsbdControlTransferRead017
424 * @tc.desc: Test functions to ControlTransferRead
425 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
426 * @tc.desc: Negative test: parameters exception, busNum error, standard request: get status(endpoint)
427 * @tc.type: FUNC
428 */
429 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead017, TestSize.Level1)
430 {
431 struct UsbDev dev = {BUS_NUM_INVALID, dev_.devAddr};
432 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
433 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN | USB_REQUEST_TARGET_ENDPOINT, 0, 0, 0,
434 TRANSFER_TIME_OUT};
435 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
436 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead017 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
437 ASSERT_NE(ret, 0);
438 }
439
440 /**
441 * @tc.name: UsbdControlTransferRead018
442 * @tc.desc: Test functions to ControlTransferRead
443 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
444 * @tc.desc: Negative test: parameters exception, devAddr error, standard request: get status(endpoint)
445 * @tc.type: FUNC
446 */
447 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead018, TestSize.Level1)
448 {
449 struct UsbDev dev = {dev_.busNum, DEV_ADDR_INVALID};
450 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
451 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN | USB_REQUEST_TARGET_ENDPOINT, 0, 0, 0,
452 TRANSFER_TIME_OUT};
453 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
454 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead018 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
455 ASSERT_NE(ret, 0);
456 }
457
458 /**
459 * @tc.name: UsbdControlTransferRead019
460 * @tc.desc: Test functions to ControlTransferRead
461 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
462 * @tc.desc: Positive test: parameters correctly, standard request: sync frame
463 * @tc.type: FUNC
464 */
465 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead019, TestSize.Level1)
466 {
467 struct UsbDev dev = dev_;
468 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
469 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN | USB_REQUEST_TARGET_ENDPOINT, USB_DDK_REQ_SYNCH_FRAME,
470 0, 0, TRANSFER_TIME_OUT};
471 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
472 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead019 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
473 ASSERT_EQ(0, ret);
474 }
475
476 /**
477 * @tc.name: UsbdControlTransferRead020
478 * @tc.desc: Test functions to ControlTransferRead
479 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
480 * @tc.desc: Negative test: parameters exception, busNum error, standard request: sync frame
481 * @tc.type: FUNC
482 */
483 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead020, TestSize.Level1)
484 {
485 struct UsbDev dev = {BUS_NUM_INVALID, dev_.devAddr};
486 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
487 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN | USB_REQUEST_TARGET_ENDPOINT, USB_DDK_REQ_SYNCH_FRAME,
488 0, 0, TRANSFER_TIME_OUT};
489 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
490 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead020 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
491 ASSERT_NE(ret, 0);
492 }
493
494 /**
495 * @tc.name: UsbdControlTransferRead021
496 * @tc.desc: Test functions to ControlTransferRead
497 * @tc.desc: int32_t ControlTransferRead(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
498 * @tc.desc: Negative test: parameters exception, devAddr error, standard request: sync frame
499 * @tc.type: FUNC
500 */
501 HWTEST_F(UsbdTransferTest, UsbdControlTransferRead021, TestSize.Level1)
502 {
503 struct UsbDev dev = {dev_.busNum, DEV_ADDR_INVALID};
504 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
505 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_IN | USB_REQUEST_TARGET_ENDPOINT, USB_DDK_REQ_SYNCH_FRAME,
506 0, 0, TRANSFER_TIME_OUT};
507 auto ret = g_usbInterface->ControlTransferRead(dev, ctrlparmas, bufferData);
508 HDF_LOGI("UsbdTransferTest::UsbdControlTransferRead021 %{public}d ControlTransfer=%{public}d", __LINE__, ret);
509 ASSERT_NE(ret, 0);
510 }
511
512 /**
513 * @tc.name: UsbdControlTransferWrite001
514 * @tc.desc: Test functions to ControlTransferWrite
515 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
516 * @tc.desc: Positive test: parameters correctly
517 * @tc.type: FUNC
518 */
519 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite001, TestSize.Level1)
520 {
521 struct UsbDev dev = dev_;
522 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
523 bufferData.push_back(SAMPLE_DATA_1);
524 bufferData.push_back(SAMPLE_DATA_2);
525 bufferData.push_back(SAMPLE_DATA_3);
526 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT,
527 USB_DDK_REQ_GET_CONFIGURATION, 0, 0, TRANSFER_TIME_OUT};
528 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
529 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite001 %{public}d ret=%{public}d", __LINE__, ret);
530 ASSERT_EQ(0, ret);
531 }
532
533 /**
534 * @tc.name: UsbdControlTransferWrite002
535 * @tc.desc: Test functions to ControlTransferWrite
536 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
537 * @tc.desc: Negative test: parameters exception, busNum error
538 * @tc.type: FUNC
539 */
540 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite002, TestSize.Level1)
541 {
542 struct UsbDev dev = {BUS_NUM_INVALID, dev_.devAddr};
543 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
544 bufferData.push_back(SAMPLE_DATA_1);
545 bufferData.push_back(SAMPLE_DATA_2);
546 bufferData.push_back(SAMPLE_DATA_3);
547 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT | USB_REQUEST_TARGET_INTERFACE,
548 USB_DDK_REQ_GET_CONFIGURATION, 0, 0, TRANSFER_TIME_OUT};
549 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
550 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite002 %{public}d ret=%{public}d", __LINE__, ret);
551 ASSERT_NE(ret, 0);
552 }
553
554 /**
555 * @tc.name: UsbdControlTransferWrite003
556 * @tc.desc: Test functions to ControlTransferWrite
557 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
558 * @tc.desc: Negative test: parameters exception, devAddr error
559 * @tc.type: FUNC
560 */
561 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite003, TestSize.Level1)
562 {
563 struct UsbDev dev = {dev_.busNum, DEV_ADDR_INVALID};
564 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
565 bufferData.push_back(SAMPLE_DATA_1);
566 bufferData.push_back(SAMPLE_DATA_2);
567 bufferData.push_back(SAMPLE_DATA_3);
568 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT | USB_REQUEST_TARGET_INTERFACE,
569 USB_DDK_REQ_GET_CONFIGURATION, 0, 0, TRANSFER_TIME_OUT};
570 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
571 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite003 %{public}d ret=%{public}d", __LINE__, ret);
572 ASSERT_NE(ret, 0);
573 }
574
575 /**
576 * @tc.name: UsbdControlTransferWrite004
577 * @tc.desc: Test functions to ControlTransferWrite
578 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
579 * @tc.desc: Positive test: parameters correctly
580 * @tc.type: FUNC
581 */
582 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite004, TestSize.Level1)
583 {
584 struct UsbDev dev = dev_;
585 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
586 bufferData.push_back(SAMPLE_DATA_1);
587 bufferData.push_back(SAMPLE_DATA_2);
588 bufferData.push_back(SAMPLE_DATA_3);
589 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT,
590 USB_DDK_REQ_GET_DESCRIPTOR, CTL_VALUE, 0, TRANSFER_TIME_OUT};
591 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
592 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite004 %{public}d ret=%{public}d", __LINE__, ret);
593 ASSERT_EQ(0, ret);
594 }
595
596 /**
597 * @tc.name: UsbdControlTransferWrite005
598 * @tc.desc: Test functions to ControlTransferWrite
599 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
600 * @tc.desc: Negative test: parameters exception, busNum error
601 * @tc.type: FUNC
602 */
603 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite005, TestSize.Level1)
604 {
605 struct UsbDev dev = {BUS_NUM_INVALID, dev_.devAddr};
606 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
607 bufferData.push_back(SAMPLE_DATA_1);
608 bufferData.push_back(SAMPLE_DATA_2);
609 bufferData.push_back(SAMPLE_DATA_3);
610 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT | USB_REQUEST_TARGET_INTERFACE,
611 USB_DDK_REQ_GET_DESCRIPTOR, CTL_VALUE, 0, TRANSFER_TIME_OUT};
612 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
613 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite005 %{public}d ret=%{public}d", __LINE__, ret);
614 ASSERT_NE(ret, 0);
615 }
616
617 /**
618 * @tc.name: UsbdControlTransferWrite006
619 * @tc.desc: Test functions to ControlTransferWrite
620 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
621 * @tc.desc: Negative test: parameters exception, devAddr error
622 * @tc.type: FUNC
623 */
624 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite006, TestSize.Level1)
625 {
626 struct UsbDev dev = {dev_.busNum, DEV_ADDR_INVALID};
627 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
628 bufferData.push_back(SAMPLE_DATA_1);
629 bufferData.push_back(SAMPLE_DATA_2);
630 bufferData.push_back(SAMPLE_DATA_3);
631 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT | USB_REQUEST_TARGET_INTERFACE,
632 USB_DDK_REQ_GET_DESCRIPTOR, CTL_VALUE, 0, TRANSFER_TIME_OUT};
633 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
634 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite006 %{public}d ret=%{public}d", __LINE__, ret);
635 ASSERT_NE(ret, 0);
636 }
637
638 /**
639 * @tc.name: UsbdControlTransferWrite007
640 * @tc.desc: Test functions to ControlTransferWrite
641 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
642 * @tc.desc: Positive test: parameters correctly
643 * @tc.type: FUNC
644 */
645 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite007, TestSize.Level1)
646 {
647 struct UsbDev dev = dev_;
648 int32_t intercafeidex = 0;
649 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
650 bufferData.push_back(SAMPLE_DATA_1);
651 bufferData.push_back(SAMPLE_DATA_2);
652 bufferData.push_back(SAMPLE_DATA_3);
653 struct UsbCtrlTransfer ctrlparmas = {0, USB_DDK_REQ_GET_INTERFACE, 0, intercafeidex, TRANSFER_TIME_OUT};
654 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
655 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite007 %{public}d ret=%{public}d", __LINE__, ret);
656 ASSERT_EQ(0, ret);
657 }
658
659 /**
660 * @tc.name: UsbdControlTransferWrite008
661 * @tc.desc: Test functions to ControlTransferWrite
662 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
663 * @tc.desc: Negative test: parameters exception, busNum error
664 * @tc.type: FUNC
665 */
666 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite008, TestSize.Level1)
667 {
668 struct UsbDev dev = {BUS_NUM_INVALID, dev_.devAddr};
669 int32_t intercafeidex = 0;
670 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
671 bufferData.push_back(SAMPLE_DATA_1);
672 bufferData.push_back(SAMPLE_DATA_2);
673 bufferData.push_back(SAMPLE_DATA_3);
674 struct UsbCtrlTransfer ctrlparmas = {0, USB_DDK_REQ_GET_INTERFACE, 0, intercafeidex, TRANSFER_TIME_OUT};
675 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
676 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite008 %{public}d ret=%{public}d", __LINE__, ret);
677 ASSERT_NE(ret, 0);
678 }
679
680 /**
681 * @tc.name: UsbdControlTransferWrite009
682 * @tc.desc: Test functions to ControlTransferWrite
683 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
684 * @tc.desc: Negative test: parameters exception, devAddr error
685 * @tc.type: FUNC
686 */
687 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite009, TestSize.Level1)
688 {
689 struct UsbDev dev = {dev_.busNum, DEV_ADDR_INVALID};
690 int32_t intercafeidex = 0;
691 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
692 bufferData.push_back(SAMPLE_DATA_1);
693 bufferData.push_back(SAMPLE_DATA_2);
694 bufferData.push_back(SAMPLE_DATA_3);
695 struct UsbCtrlTransfer ctrlparmas = {0, USB_DDK_REQ_GET_INTERFACE, 0, intercafeidex, TRANSFER_TIME_OUT};
696 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
697 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite009 %{public}d ret=%{public}d", __LINE__, ret);
698 ASSERT_NE(ret, 0);
699 }
700
701 /**
702 * @tc.name: UsbdControlTransferWrite010
703 * @tc.desc: Test functions to ControlTransferWrite
704 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
705 * @tc.desc: Positive test: parameters correctly
706 * @tc.type: FUNC
707 */
708 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite010, TestSize.Level1)
709 {
710 struct UsbDev dev = dev_;
711 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
712 bufferData.push_back(SAMPLE_DATA_1);
713 bufferData.push_back(SAMPLE_DATA_2);
714 bufferData.push_back(SAMPLE_DATA_3);
715 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT, USB_DDK_REQ_GET_DESCRIPTOR, 0, 0,
716 TRANSFER_TIME_OUT};
717 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
718 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite010 %{public}d ret=%{public}d", __LINE__, ret);
719 ASSERT_EQ(0, ret);
720 }
721
722 /**
723 * @tc.name: UsbdControlTransferWrite011
724 * @tc.desc: Test functions to ControlTransferWrite
725 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
726 * @tc.desc: Negative test: parameters exception, busNum error
727 * @tc.type: FUNC
728 */
729 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite011, TestSize.Level1)
730 {
731 struct UsbDev dev = {BUS_NUM_INVALID, dev_.devAddr};
732 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
733 bufferData.push_back(SAMPLE_DATA_1);
734 bufferData.push_back(SAMPLE_DATA_2);
735 bufferData.push_back(SAMPLE_DATA_3);
736 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT | USB_REQUEST_TARGET_INTERFACE, 0, 0, 0,
737 TRANSFER_TIME_OUT};
738 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
739 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite011 %{public}d ret=%{public}d", __LINE__, ret);
740 ASSERT_NE(ret, 0);
741 }
742
743 /**
744 * @tc.name: UsbdControlTransferWrite012
745 * @tc.desc: Test functions to ControlTransferWrite
746 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
747 * @tc.desc: Negative test: parameters exception, devAddr error
748 * @tc.type: FUNC
749 */
750 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite012, TestSize.Level1)
751 {
752 struct UsbDev dev = {dev_.busNum, DEV_ADDR_INVALID};
753 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
754 bufferData.push_back(SAMPLE_DATA_1);
755 bufferData.push_back(SAMPLE_DATA_2);
756 bufferData.push_back(SAMPLE_DATA_3);
757 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT | USB_REQUEST_TARGET_INTERFACE, 0, 0, 0,
758 TRANSFER_TIME_OUT};
759 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
760 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite012 %{public}d ret=%{public}d", __LINE__, ret);
761 ASSERT_NE(ret, 0);
762 }
763
764 /**
765 * @tc.name: UsbdControlTransferWrite013
766 * @tc.desc: Test functions to ControlTransferWrite
767 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
768 * @tc.desc: Positive test: parameters correctly
769 * @tc.type: FUNC
770 */
771 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite013, TestSize.Level1)
772 {
773 struct UsbDev dev = dev_;
774 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
775 bufferData.push_back(SAMPLE_DATA_1);
776 bufferData.push_back(SAMPLE_DATA_2);
777 bufferData.push_back(SAMPLE_DATA_3);
778 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT, USB_DDK_REQ_GET_INTERFACE, 0, 0, TRANSFER_TIME_OUT};
779 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
780 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite013 %{public}d ret=%{public}d", __LINE__, ret);
781 ASSERT_EQ(0, ret);
782 }
783
784 /**
785 * @tc.name: UsbdControlTransferWrite014
786 * @tc.desc: Test functions to ControlTransferWrite
787 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
788 * @tc.desc: Negative test: parameters exception, busNum error
789 * @tc.type: FUNC
790 */
791 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite014, TestSize.Level1)
792 {
793 struct UsbDev dev = {BUS_NUM_INVALID, dev_.devAddr};
794 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
795 bufferData.push_back(SAMPLE_DATA_1);
796 bufferData.push_back(SAMPLE_DATA_2);
797 bufferData.push_back(SAMPLE_DATA_3);
798 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT, 0, 0, 0, TRANSFER_TIME_OUT};
799 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
800 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite014 %{public}d ret=%{public}d", __LINE__, ret);
801 ASSERT_NE(ret, 0);
802 }
803
804 /**
805 * @tc.name: UsbdControlTransferWrite015
806 * @tc.desc: Test functions to ControlTransferWrite
807 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
808 * @tc.desc: Negative test: parameters exception, devAddr error
809 * @tc.type: FUNC
810 */
811 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite015, TestSize.Level1)
812 {
813 struct UsbDev dev = {dev_.busNum, DEV_ADDR_INVALID};
814 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
815 bufferData.push_back(SAMPLE_DATA_1);
816 bufferData.push_back(SAMPLE_DATA_2);
817 bufferData.push_back(SAMPLE_DATA_3);
818 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT, 0, 0, 0, TRANSFER_TIME_OUT};
819 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
820 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite015 %{public}d ret=%{public}d", __LINE__, ret);
821 ASSERT_NE(ret, 0);
822 }
823
824 /**
825 * @tc.name: UsbdControlTransferWrite016
826 * @tc.desc: Test functions to ControlTransferWrite
827 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
828 * @tc.desc: Positive test: parameters correctly
829 * @tc.type: FUNC
830 */
831 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite016, TestSize.Level1)
832 {
833 struct UsbDev dev = dev_;
834 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
835 bufferData.push_back(SAMPLE_DATA_1);
836 bufferData.push_back(SAMPLE_DATA_2);
837 bufferData.push_back(SAMPLE_DATA_3);
838 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT, USB_DDK_REQ_GET_CONFIGURATION, 0, 0,
839 TRANSFER_TIME_OUT};
840 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
841 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite016 %{public}d ret=%{public}d", __LINE__, ret);
842 ASSERT_EQ(0, ret);
843 }
844
845 /**
846 * @tc.name: UsbdControlTransferWrite017
847 * @tc.desc: Test functions to ControlTransferWrite
848 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
849 * @tc.desc: Negative test: parameters exception, busNum error
850 * @tc.type: FUNC
851 */
852 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite017, TestSize.Level1)
853 {
854 struct UsbDev dev = {BUS_NUM_INVALID, dev_.devAddr};
855 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
856 bufferData.push_back(SAMPLE_DATA_1);
857 bufferData.push_back(SAMPLE_DATA_2);
858 bufferData.push_back(SAMPLE_DATA_3);
859 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT | USB_REQUEST_TARGET_ENDPOINT, 0, 0, 0,
860 TRANSFER_TIME_OUT};
861 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
862 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite017 %{public}d ret=%{public}d", __LINE__, ret);
863 ASSERT_NE(ret, 0);
864 }
865
866 /**
867 * @tc.name: UsbdControlTransferWrite018
868 * @tc.desc: Test functions to ControlTransferWrite
869 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
870 * @tc.desc: Negative test: parameters exception, devAddr error
871 * @tc.type: FUNC
872 */
873 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite018, TestSize.Level1)
874 {
875 struct UsbDev dev = {dev_.busNum, DEV_ADDR_INVALID};
876 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
877 bufferData.push_back(SAMPLE_DATA_1);
878 bufferData.push_back(SAMPLE_DATA_2);
879 bufferData.push_back(SAMPLE_DATA_3);
880 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT | USB_REQUEST_TARGET_ENDPOINT, 0, 0, 0,
881 TRANSFER_TIME_OUT};
882 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
883 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite018 %{public}d ret=%{public}d", __LINE__, ret);
884 ASSERT_NE(ret, 0);
885 }
886
887 /**
888 * @tc.name: UsbdControlTransferWrite019
889 * @tc.desc: Test functions to ControlTransferWrite
890 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
891 * @tc.desc: Positive test: parameters correctly
892 * @tc.type: FUNC
893 */
894 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite019, TestSize.Level1)
895 {
896 struct UsbDev dev = dev_;
897 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
898 bufferData.push_back(SAMPLE_DATA_1);
899 bufferData.push_back(SAMPLE_DATA_2);
900 bufferData.push_back(SAMPLE_DATA_3);
901 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT | USB_REQUEST_TARGET_ENDPOINT, USB_DDK_REQ_SYNCH_FRAME,
902 0, 0, TRANSFER_TIME_OUT};
903 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
904 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite019 %{public}d ret=%{public}d", __LINE__, ret);
905 ASSERT_EQ(0, ret);
906 }
907
908 /**
909 * @tc.name: UsbdControlTransferWrite020
910 * @tc.desc: Test functions to ControlTransferWrite
911 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
912 * @tc.desc: Negative test: parameters exception, busNum error
913 * @tc.type: FUNC
914 */
915 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite020, TestSize.Level1)
916 {
917 struct UsbDev dev = {BUS_NUM_INVALID, dev_.devAddr};
918 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
919 bufferData.push_back(SAMPLE_DATA_1);
920 bufferData.push_back(SAMPLE_DATA_2);
921 bufferData.push_back(SAMPLE_DATA_3);
922 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT | USB_REQUEST_TARGET_ENDPOINT, USB_DDK_REQ_SYNCH_FRAME,
923 0, 0, TRANSFER_TIME_OUT};
924 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
925 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite020 %{public}d ret=%{public}d", __LINE__, ret);
926 ASSERT_NE(ret, 0);
927 }
928
929 /**
930 * @tc.name: UsbdControlTransferWrite021
931 * @tc.desc: Test functions to ControlTransferWrite
932 * @tc.desc: int32_t ControlTransferWrite(const UsbDev &dev, UsbCtrlTransfer &ctrl, std::vector<uint8_t> &data);
933 * @tc.desc: Negative test: parameters exception, devAddr error
934 * @tc.type: FUNC
935 */
936 HWTEST_F(UsbdTransferTest, UsbdControlTransferWrite021, TestSize.Level1)
937 {
938 struct UsbDev dev = {dev_.busNum, DEV_ADDR_INVALID};
939 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
940 bufferData.push_back(SAMPLE_DATA_1);
941 bufferData.push_back(SAMPLE_DATA_2);
942 bufferData.push_back(SAMPLE_DATA_3);
943 struct UsbCtrlTransfer ctrlparmas = {USB_ENDPOINT_DIR_OUT | USB_REQUEST_TARGET_ENDPOINT, USB_DDK_REQ_SYNCH_FRAME,
944 0, 0, TRANSFER_TIME_OUT};
945 auto ret = g_usbInterface->ControlTransferWrite(dev, ctrlparmas, bufferData);
946 HDF_LOGI("UsbdTransferTest::UsbdControlTransferWrite021 %{public}d ret=%{public}d", __LINE__, ret);
947 ASSERT_NE(ret, 0);
948 }
949
950 /**
951 * @tc.name: UsbdBulkTransferRead001
952 * @tc.desc: Test functions to BulkTransferRead(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
953 * std::vector<uint8_t> &data);
954 * @tc.desc: Positive test: parameters correctly
955 * @tc.type: FUNC
956 */
957 HWTEST_F(UsbdTransferTest, UsbdBulkTransferRead001, TestSize.Level1)
958 {
959 struct UsbDev dev = dev_;
960 uint8_t interfaceId = INTERFACEID_OK;
961 uint8_t pointid = POINTID_BULK_IN;
962 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
963 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferRead001 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
964 ASSERT_EQ(0, ret);
965 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
966 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
967 ret = g_usbInterface->BulkTransferRead(dev, pipe, TRANSFER_TIME_OUT, bufferData);
968 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferRead001 %{public}d UsbdBulkTransferRead=%{public}d", __LINE__, ret);
969 ASSERT_EQ(0, ret);
970 }
971
972 /**
973 * @tc.name: UsbdBulkTransferRead002
974 * @tc.desc: Test functions to BulkTransferRead(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
975 * std::vector<uint8_t> &data);
976 * @tc.desc: Negative test: parameters exception, busNum error
977 * @tc.type: FUNC
978 */
979 HWTEST_F(UsbdTransferTest, UsbdBulkTransferRead002, TestSize.Level1)
980 {
981 struct UsbDev dev = dev_;
982 uint8_t interfaceId = INTERFACEID_OK;
983 uint8_t pointid = POINTID_BULK_IN;
984 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
985 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferRead002 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
986 ASSERT_EQ(0, ret);
987 dev.busNum = BUS_NUM_INVALID;
988 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
989 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
990 ret = g_usbInterface->BulkTransferRead(dev, pipe, TRANSFER_TIME_OUT, bufferData);
991 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferRead002 %{public}d UsbdBulkTransferRead=%{public}d", __LINE__, ret);
992 ASSERT_NE(ret, 0);
993 }
994
995 /**
996 * @tc.name: UsbdBulkTransferRead003
997 * @tc.desc: Test functions to BulkTransferRead(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
998 * std::vector<uint8_t> &data);
999 * @tc.desc: Negative test: parameters exception, devAddr error
1000 * @tc.type: FUNC
1001 */
1002 HWTEST_F(UsbdTransferTest, UsbdBulkTransferRead003, TestSize.Level1)
1003 {
1004 struct UsbDev dev = dev_;
1005 uint8_t interfaceId = INTERFACEID_OK;
1006 uint8_t pointid = POINTID_BULK_IN;
1007 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1008 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferRead003 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1009 ASSERT_EQ(0, ret);
1010 dev.devAddr = DEV_ADDR_INVALID;
1011 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1012 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
1013 ret = g_usbInterface->BulkTransferRead(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1014 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferRead003 %{public}d UsbdBulkTransferRead=%{public}d", __LINE__, ret);
1015 ASSERT_NE(ret, 0);
1016 }
1017
1018 /**
1019 * @tc.name: UsbdBulkTransferRead004
1020 * @tc.desc: Test functions to BulkTransferRead(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1021 * std::vector<uint8_t> &data);
1022 * @tc.desc: Negative test: parameters exception, intfId error
1023 * @tc.type: FUNC
1024 */
1025 HWTEST_F(UsbdTransferTest, UsbdBulkTransferRead004, TestSize.Level1)
1026 {
1027 struct UsbDev dev = dev_;
1028 uint8_t interfaceId = INTERFACEID_OK;
1029 uint8_t pointid = POINTID_BULK_IN;
1030 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1031 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferRead004 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1032 ASSERT_EQ(0, ret);
1033 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1034 pipe.intfId = PIPE_INTERFACEID_INVALID;
1035 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
1036 ret = g_usbInterface->BulkTransferRead(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1037 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferRead004 %{public}d UsbdBulkTransferRead=%{public}d", __LINE__, ret);
1038 ASSERT_NE(ret, 0);
1039 }
1040
1041 /**
1042 * @tc.name: UsbdBulkTransferRead005
1043 * @tc.desc: Test functions to BulkTransferRead(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1044 * std::vector<uint8_t> &data);
1045 * @tc.desc: Negative test: parameters exception, endpointId error
1046 * @tc.type: FUNC
1047 */
1048 HWTEST_F(UsbdTransferTest, UsbdBulkTransferRead005, TestSize.Level1)
1049 {
1050 struct UsbDev dev = dev_;
1051 uint8_t interfaceId = INTERFACEID_OK;
1052 uint8_t pointid = POINTID_BULK_IN;
1053 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1054 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferRead005 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1055 ASSERT_EQ(0, ret);
1056 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1057 pipe.endpointId = PIPE_ENDPOINTID_INVALID;
1058 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
1059 ret = g_usbInterface->BulkTransferRead(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1060 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferRead005 %{public}d UsbdBulkTransferRead=%{public}d", __LINE__, ret);
1061 ASSERT_NE(ret, 0);
1062 }
1063
1064 /**
1065 * @tc.name: UsbdBulkTransferWrite001
1066 * @tc.desc: Test functions to BulkTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1067 * std::vector<uint8_t> &data);
1068 * @tc.desc: Positive test: parameters correctly
1069 * @tc.type: FUNC
1070 */
1071 HWTEST_F(UsbdTransferTest, UsbdBulkTransferWrite001, TestSize.Level1)
1072 {
1073 struct UsbDev dev = dev_;
1074 uint8_t interfaceId = INTERFACEID_OK;
1075 uint8_t pointid = POINTID_BULK_OUT;
1076 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1077 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferWrite001 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1078 ASSERT_EQ(0, ret);
1079 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1080 std::vector<uint8_t> bufferData = {'b', 'u', 'l', 'k', 'w', 'r', 'i', 't', 'e', '0', '1'};
1081 ret = g_usbInterface->BulkTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1082 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferWrite001 %{public}d BulkTransferWrite=%{public}d", __LINE__, ret);
1083 ASSERT_EQ(0, ret);
1084 }
1085
1086 /**
1087 * @tc.name: UsbdBulkTransferWrite002
1088 * @tc.desc: Test functions to BulkTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1089 * std::vector<uint8_t> &data);
1090 * @tc.desc: Negative test: parameters exception, busNum error
1091 * @tc.type: FUNC
1092 */
1093 HWTEST_F(UsbdTransferTest, UsbdBulkTransferWrite002, TestSize.Level1)
1094 {
1095 struct UsbDev dev = dev_;
1096 uint8_t interfaceId = INTERFACEID_OK;
1097 uint8_t pointid = POINTID_BULK_OUT;
1098 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1099 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferWrite002 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1100 ASSERT_EQ(0, ret);
1101 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1102 dev.busNum = BUS_NUM_INVALID;
1103 std::vector<uint8_t> bufferData = {'b', 'u', 'l', 'k', 'w', 'r', 'i', 't', 'e', '0', '2'};
1104 ret = g_usbInterface->BulkTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1105 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferWrite002 %{public}d BulkTransferWrite=%{public}d", __LINE__, ret);
1106 ASSERT_NE(ret, 0);
1107 }
1108
1109 /**
1110 * @tc.name: UsbdBulkTransferWrite003
1111 * @tc.desc: Test functions to BulkTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1112 * std::vector<uint8_t> &data);
1113 * @tc.desc: Negative test: parameters exception, devAddr error
1114 * @tc.type: FUNC
1115 */
1116 HWTEST_F(UsbdTransferTest, UsbdBulkTransferWrite003, TestSize.Level1)
1117 {
1118 struct UsbDev dev = dev_;
1119 uint8_t interfaceId = INTERFACEID_OK;
1120 uint8_t pointid = POINTID_BULK_OUT;
1121 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1122 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferWrite003 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1123 ASSERT_EQ(0, ret);
1124 dev.devAddr = DEV_ADDR_INVALID;
1125 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1126 std::vector<uint8_t> bufferData = {'b', 'u', 'l', 'k', 'w', 'r', 'i', 't', 'e', '0', '3'};
1127 ret = g_usbInterface->BulkTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1128 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferWrite003 %{public}d BulkTransferWrite=%{public}d", __LINE__, ret);
1129 ASSERT_NE(ret, 0);
1130 }
1131
1132 /**
1133 * @tc.name: UsbdBulkTransferWrite004
1134 * @tc.desc: Test functions to BulkTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1135 * std::vector<uint8_t> &data);
1136 * @tc.desc: Negative test: parameters exception, intfId error
1137 * @tc.type: FUNC
1138 */
1139 HWTEST_F(UsbdTransferTest, UsbdBulkTransferWrite004, TestSize.Level1)
1140 {
1141 struct UsbDev dev = dev_;
1142 uint8_t interfaceId = INTERFACEID_OK;
1143 uint8_t pointid = POINTID_BULK_OUT;
1144 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1145 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferWrite004 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1146 ASSERT_EQ(0, ret);
1147 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1148 pipe.intfId = PIPE_INTERFACEID_INVALID;
1149 std::vector<uint8_t> bufferData = {'b', 'u', 'l', 'k', 'w', 'r', 'i', 't', 'e', '0', '4'};
1150 ret = g_usbInterface->BulkTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1151 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferWrite004 %{public}d BulkTransferWrite=%{public}d", __LINE__, ret);
1152 ASSERT_NE(ret, 0);
1153 }
1154
1155 /**
1156 * @tc.name: UsbdBulkTransferWrite005
1157 * @tc.desc: Test functions to BulkTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1158 * std::vector<uint8_t> &data);
1159 * @tc.desc: Negative test: parameters exception, endpointId error
1160 * @tc.type: FUNC
1161 */
1162 HWTEST_F(UsbdTransferTest, UsbdBulkTransferWrite005, TestSize.Level1)
1163 {
1164 struct UsbDev dev = dev_;
1165 uint8_t interfaceId = INTERFACEID_OK;
1166 uint8_t pointid = POINTID_BULK_OUT;
1167 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1168 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferWrite005 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1169 ASSERT_EQ(0, ret);
1170 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1171 pipe.endpointId = PIPE_ENDPOINTID_INVALID;
1172 std::vector<uint8_t> bufferData = {'b', 'u', 'l', 'k', 'w', 'r', 'i', 't', 'e', '0', '5'};
1173 ret = g_usbInterface->BulkTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1174 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferWrite005 %{public}d BulkTransferWrite=%{public}d", __LINE__, ret);
1175 ASSERT_NE(ret, 0);
1176 }
1177
1178 /**
1179 * @tc.name: UsbdBulkTransferWrite006
1180 * @tc.desc: Test functions to BulkTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1181 * std::vector<uint8_t> &data);
1182 * @tc.desc: Negative test: parameters exception, busNum && devAddr error
1183 * @tc.type: FUNC
1184 */
1185 HWTEST_F(UsbdTransferTest, UsbdBulkTransferWrite006, TestSize.Level1)
1186 {
1187 struct UsbDev dev = dev_;
1188 uint8_t interfaceId = INTERFACEID_OK;
1189 uint8_t pointid = POINTID_BULK_OUT;
1190 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1191 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferWrite006 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1192 ASSERT_EQ(0, ret);
1193 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1194 dev.busNum = BUS_NUM_INVALID;
1195 dev.devAddr = DEV_ADDR_INVALID;
1196 std::vector<uint8_t> bufferData = {'b', 'u', 'l', 'k', 'w', 'r', 'i', 't', 'e', '0', '6'};
1197 ret = g_usbInterface->BulkTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1198 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferWrite006 %{public}d BulkTransferWrite=%{public}d", __LINE__, ret);
1199 ASSERT_NE(ret, 0);
1200 }
1201
1202 /**
1203 * @tc.name: UsbdBulkTransferWrite007
1204 * @tc.desc: Test functions to BulkTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1205 * std::vector<uint8_t> &data);
1206 * @tc.desc: Negative test: parameters exception, ClaimInterface failed first
1207 * @tc.type: FUNC
1208 */
1209 HWTEST_F(UsbdTransferTest, UsbdBulkTransferWrite007, TestSize.Level1)
1210 {
1211 struct UsbDev dev = dev_;
1212 uint8_t interfaceId = INTERFACEID_OK;
1213 uint8_t pointid = PIPE_ENDPOINTID_INVALID;
1214 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1215 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferWrite007 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1216 ASSERT_EQ(0, ret);
1217 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1218 std::vector<uint8_t> bufferData = {'b', 'u', 'l', 'k', 'w', 'r', 'i', 't', 'e', '0', '7'};
1219 ret = g_usbInterface->BulkTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1220 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferWrite007 %{public}d BulkTransferWrite=%{public}d", __LINE__, ret);
1221 ASSERT_NE(ret, 0);
1222 }
1223
1224 /**
1225 * @tc.name: UsbdBulkTransferWrite008
1226 * @tc.desc: Test functions to BulkTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1227 * std::vector<uint8_t> &data);
1228 * @tc.desc: Positive test: parameters correctly, different in timeout
1229 * @tc.type: FUNC
1230 */
1231 HWTEST_F(UsbdTransferTest, UsbdBulkTransferWrite008, TestSize.Level1)
1232 {
1233 struct UsbDev dev = dev_;
1234 uint8_t interfaceId = INTERFACEID_OK;
1235 uint8_t pointid = POINTID_BULK_OUT;
1236 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1237 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferWrite008 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1238 ASSERT_EQ(0, ret);
1239 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1240 std::vector<uint8_t> bufferData = {'b', 'u', 'l', 'k', 'w', 'r', 'i', 't', 'e', '0', '8'};
1241 ret = g_usbInterface->BulkTransferWrite(dev, pipe, -1, bufferData);
1242 HDF_LOGI("UsbdTransferTest::UsbdBulkTransferWrite008 %{public}d BulkTransferWrite=%{public}d", __LINE__, ret);
1243 ASSERT_EQ(0, ret);
1244 }
1245
1246 /**
1247 * @tc.name: InterruptTransferRead001
1248 * @tc.desc: Test functions to InterruptTransferRead(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1249 * std::vector<uint8_t> &data);
1250 * @tc.desc: Positive test: parameters correctly
1251 * @tc.type: FUNC
1252 */
1253 HWTEST_F(UsbdTransferTest, UsbdInterruptTransferRead001, TestSize.Level1)
1254 {
1255 struct UsbDev dev = dev_;
1256 uint8_t interfaceId = INTERFACEID_OK;
1257 uint8_t pointid = POINTID_BULK_IN;
1258 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1259 HDF_LOGI("UsbdTransferTest::UsbdInterruptTransferRead001 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1260 ASSERT_EQ(0, ret);
1261 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1262 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
1263 ret = g_usbInterface->InterruptTransferRead(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1264 HDF_LOGI("UsbdTransferTest::UsbdInterruptTransferRead001 %{public}d UsbdInterruptTransferRead=%{public}d",
1265 __LINE__, ret);
1266 ASSERT_EQ(0, ret);
1267 }
1268
1269 /**
1270 * @tc.name: UsbdInterruptTransferRead002
1271 * @tc.desc: Test functions to InterruptTransferRead(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1272 * std::vector<uint8_t> &data);
1273 * @tc.desc: Negative test: parameters exception, busNum error
1274 * @tc.type: FUNC
1275 */
1276 HWTEST_F(UsbdTransferTest, UsbdInterruptTransferRead002, TestSize.Level1)
1277 {
1278 struct UsbDev dev = dev_;
1279 uint8_t interfaceId = INTERFACEID_OK;
1280 uint8_t pointid = POINTID_BULK_IN;
1281 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1282 HDF_LOGI("UsbdTransferTest::UsbdInterruptTransferRead002 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1283 ASSERT_EQ(0, ret);
1284 dev.busNum = BUS_NUM_INVALID;
1285 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1286 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
1287 ret = g_usbInterface->InterruptTransferRead(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1288 HDF_LOGI("UsbdTransferTest::UsbdInterruptTransferRead002 %{public}d UsbdInterruptTransferRead=%{public}d",
1289 __LINE__, ret);
1290 ASSERT_NE(ret, 0);
1291 }
1292
1293 /**
1294 * @tc.name: UsbdInterruptTransferRead003
1295 * @tc.desc: Test functions to InterruptTransferRead(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1296 * std::vector<uint8_t> &data);
1297 * @tc.desc: Negative test: parameters exception, devAddr error
1298 * @tc.type: FUNC
1299 */
1300 HWTEST_F(UsbdTransferTest, UsbdInterruptTransferRead003, TestSize.Level1)
1301 {
1302 struct UsbDev dev = dev_;
1303 uint8_t interfaceId = INTERFACEID_OK;
1304 uint8_t pointid = POINTID_BULK_IN;
1305 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1306 HDF_LOGI("UsbdTransferTest::UsbdInterruptTransferRead003 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1307 ASSERT_EQ(0, ret);
1308 dev.devAddr = DEV_ADDR_INVALID;
1309 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1310 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
1311 ret = g_usbInterface->InterruptTransferRead(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1312 ASSERT_NE(ret, 0);
1313 }
1314
1315 /**
1316 * @tc.name: UsbdInterruptTransferRead004
1317 * @tc.desc: Test functions to InterruptTransferRead(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1318 * std::vector<uint8_t> &data);
1319 * @tc.desc: Negative test: parameters exception, intfId error
1320 * @tc.type: FUNC
1321 */
1322 HWTEST_F(UsbdTransferTest, UsbdInterruptTransferRead004, TestSize.Level1)
1323 {
1324 struct UsbDev dev = dev_;
1325 uint8_t interfaceId = INTERFACEID_OK;
1326 uint8_t pointid = POINTID_BULK_IN;
1327 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1328 HDF_LOGI("UsbdTransferTest::UsbdInterruptTransferRead004 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1329 ASSERT_EQ(0, ret);
1330 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1331 pipe.intfId = PIPE_INTERFACEID_INVALID;
1332 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
1333 ret = g_usbInterface->InterruptTransferRead(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1334 HDF_LOGI("UsbdTransferTest::UsbdInterruptTransferRead004 %{public}d UsbdInterruptTransferRead=%{public}d",
1335 __LINE__, ret);
1336 ASSERT_NE(ret, 0);
1337 }
1338
1339 /**
1340 * @tc.name: UsbdInterruptTransferRead005
1341 * @tc.desc: Test functions to InterruptTransferRead(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1342 * std::vector<uint8_t> &data);
1343 * @tc.desc: Negative test: parameters exception, endpointId error
1344 * @tc.type: FUNC
1345 */
1346 HWTEST_F(UsbdTransferTest, UsbdInterruptTransferRead005, TestSize.Level1)
1347 {
1348 struct UsbDev dev = dev_;
1349 uint8_t interfaceId = INTERFACEID_OK;
1350 uint8_t pointid = POINTID_BULK_IN;
1351 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1352 HDF_LOGI("UsbdTransferTest::UsbdInterruptTransferRead005 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1353 ASSERT_EQ(0, ret);
1354 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1355 pipe.endpointId = PIPE_ENDPOINTID_INVALID;
1356 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
1357 ret = g_usbInterface->InterruptTransferRead(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1358 HDF_LOGI("UsbdTransferTest::UsbdInterruptTransferRead005 %{public}d UsbdInterruptTransferRead=%{public}d",
1359 __LINE__, ret);
1360 ASSERT_NE(ret, 0);
1361 }
1362
1363 /**
1364 * @tc.name: UsbdInterruptTransferWrite001
1365 * @tc.desc: Test functions to InterruptTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1366 * std::vector<uint8_t> &data);
1367 * @tc.desc: Positive test: parameters correctly
1368 * @tc.type: FUNC
1369 */
1370 HWTEST_F(UsbdTransferTest, UsbdInterruptTransferWrite001, TestSize.Level1)
1371 {
1372 struct UsbDev dev = dev_;
1373 uint8_t interfaceId = INTERFACEID_OK;
1374 uint8_t pointid = POINTID_BULK_OUT;
1375 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1376 HDF_LOGI("UsbdTransferTest::UsbdInterruptTransferWrite001 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1377 ASSERT_EQ(0, ret);
1378 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1379 std::vector<uint8_t> bufferData = {'i', 'n', 't', 'w', 'r', 'i', 't', 'e', '0', '1'};
1380 ret = g_usbInterface->InterruptTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1381 HDF_LOGI(
1382 "UsbdTransferTest::UsbdInterruptTransferWrite001 %{public}d InterruptTransferWrite=%{public}d", __LINE__, ret);
1383 ASSERT_EQ(0, ret);
1384 }
1385
1386 /**
1387 * @tc.name: UsbdInterruptTransferWrite002
1388 * @tc.desc: Test functions to InterruptTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1389 * std::vector<uint8_t> &data);
1390 * @tc.desc: Negative test: parameters exception, busNum error
1391 * @tc.type: FUNC
1392 */
1393 HWTEST_F(UsbdTransferTest, UsbdInterruptTransferWrite002, TestSize.Level1)
1394 {
1395 struct UsbDev dev = dev_;
1396 uint8_t interfaceId = INTERFACEID_OK;
1397 uint8_t pointid = POINTID_BULK_OUT;
1398 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1399 HDF_LOGI("UsbdTransferTest::UsbdInterruptTransferWrite002 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1400 ASSERT_EQ(0, ret);
1401 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1402 dev.busNum = BUS_NUM_INVALID;
1403 std::vector<uint8_t> bufferData = {'i', 'n', 't', 'w', 'r', 'i', 't', 'e', '0', '2'};
1404 ret = g_usbInterface->InterruptTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1405 HDF_LOGI(
1406 "UsbdTransferTest::UsbdInterruptTransferWrite002 %{public}d InterruptTransferWrite=%{public}d", __LINE__, ret);
1407 ASSERT_NE(ret, 0);
1408 }
1409
1410 /**
1411 * @tc.name: UsbdInterruptTransferWrite003
1412 * @tc.desc: Test functions to InterruptTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1413 * std::vector<uint8_t> &data);
1414 * @tc.desc: Negative test: parameters exception, devAddr error
1415 * @tc.type: FUNC
1416 */
1417 HWTEST_F(UsbdTransferTest, UsbdInterruptTransferWrite003, TestSize.Level1)
1418 {
1419 struct UsbDev dev = dev_;
1420 uint8_t interfaceId = INTERFACEID_OK;
1421 uint8_t pointid = POINTID_BULK_OUT;
1422 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1423 HDF_LOGI("UsbdTransferTest::UsbdInterruptTransferWrite003 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1424 ASSERT_EQ(0, ret);
1425 dev.devAddr = DEV_ADDR_INVALID;
1426 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1427 std::vector<uint8_t> bufferData = {'i', 'n', 't', 'w', 'r', 'i', 't', 'e', '0', '3'};
1428 ret = g_usbInterface->InterruptTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1429 HDF_LOGI(
1430 "UsbdTransferTest::UsbdInterruptTransferWrite003 %{public}d InterruptTransferWrite=%{public}d", __LINE__, ret);
1431 ASSERT_NE(ret, 0);
1432 }
1433
1434 /**
1435 * @tc.name: UsbdInterruptTransferWrite004
1436 * @tc.desc: Test functions to InterruptTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1437 * std::vector<uint8_t> &data);
1438 * @tc.desc: Negative test: parameters exception, intfId error
1439 * @tc.type: FUNC
1440 */
1441 HWTEST_F(UsbdTransferTest, UsbdInterruptTransferWrite004, TestSize.Level1)
1442 {
1443 struct UsbDev dev = dev_;
1444 uint8_t interfaceId = INTERFACEID_OK;
1445 uint8_t pointid = POINTID_BULK_OUT;
1446 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1447 HDF_LOGI("UsbdTransferTest::UsbdInterruptTransferWrite004 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1448 ASSERT_EQ(0, ret);
1449 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1450 pipe.intfId = PIPE_INTERFACEID_INVALID;
1451 std::vector<uint8_t> bufferData = {'i', 'n', 't', 'w', 'r', 'i', 't', 'e', '0', '4'};
1452 ret = g_usbInterface->InterruptTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1453 HDF_LOGI(
1454 "UsbdTransferTest::UsbdInterruptTransferWrite004 %{public}d InterruptTransferWrite=%{public}d", __LINE__, ret);
1455 ASSERT_NE(ret, 0);
1456 }
1457
1458 /**
1459 * @tc.name: UsbdInterruptTransferWrite005
1460 * @tc.desc: Test functions to InterruptTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1461 * std::vector<uint8_t> &data);
1462 * @tc.desc: Negative test: parameters exception, endpointId error
1463 * @tc.type: FUNC
1464 */
1465 HWTEST_F(UsbdTransferTest, UsbdInterruptTransferWrite005, TestSize.Level1)
1466 {
1467 struct UsbDev dev = dev_;
1468 uint8_t interfaceId = INTERFACEID_OK;
1469 uint8_t pointid = POINTID_BULK_OUT;
1470 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1471 HDF_LOGI("UsbdTransferTest::UsbdInterruptTransferWrite005 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1472 ASSERT_EQ(0, ret);
1473 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1474 pipe.endpointId = PIPE_ENDPOINTID_INVALID;
1475 std::vector<uint8_t> bufferData = {'i', 'n', 't', 'w', 'r', 'i', 't', 'e', '0', '5'};
1476 ret = g_usbInterface->InterruptTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1477 HDF_LOGI(
1478 "UsbdTransferTest::UsbdInterruptTransferWrite005 %{public}d InterruptTransferWrite=%{public}d", __LINE__, ret);
1479 ASSERT_NE(ret, 0);
1480 }
1481
1482 /**
1483 * @tc.name: UsbdInterruptTransferWrite006
1484 * @tc.desc: Test functions to InterruptTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1485 * std::vector<uint8_t> &data);
1486 * @tc.desc: Negative test: parameters exception, busNum && devAddr error
1487 * @tc.type: FUNC
1488 */
1489 HWTEST_F(UsbdTransferTest, UsbdInterruptTransferWrite006, TestSize.Level1)
1490 {
1491 struct UsbDev dev = dev_;
1492 uint8_t interfaceId = INTERFACEID_OK;
1493 uint8_t pointid = POINTID_BULK_OUT;
1494 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1495 HDF_LOGI("UsbdTransferTest::UsbdInterruptTransferWrite006 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1496 ASSERT_EQ(0, ret);
1497 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1498 dev.busNum = BUS_NUM_INVALID;
1499 dev.devAddr = DEV_ADDR_INVALID;
1500 std::vector<uint8_t> bufferData = {'i', 'n', 't', 'w', 'r', 'i', 't', 'e', '0', '6'};
1501 ret = g_usbInterface->InterruptTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1502 HDF_LOGI(
1503 "UsbdTransferTest::UsbdInterruptTransferWrite006 %{public}d InterruptTransferWrite=%{public}d", __LINE__, ret);
1504 ASSERT_NE(ret, 0);
1505 }
1506
1507 /**
1508 * @tc.name: UsbdInterruptTransferWrite007
1509 * @tc.desc: Test functions to InterruptTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1510 * std::vector<uint8_t> &data);
1511 * @tc.desc: Negative test: parameters exception, ClaimInterface failed first
1512 * @tc.type: FUNC
1513 */
1514 HWTEST_F(UsbdTransferTest, UsbdInterruptTransferWrite007, TestSize.Level1)
1515 {
1516 struct UsbDev dev = dev_;
1517 uint8_t interfaceId = INTERFACEID_OK;
1518 uint8_t pointid = PIPE_ENDPOINTID_INVALID;
1519 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1520 HDF_LOGI("UsbdTransferTest::UsbdInterruptTransferWrite007 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1521 ASSERT_EQ(0, ret);
1522 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1523 std::vector<uint8_t> bufferData = {'i', 'n', 't', 'w', 'r', 'i', 't', 'e', '0', '7'};
1524 ret = g_usbInterface->InterruptTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1525 HDF_LOGI(
1526 "UsbdTransferTest::UsbdInterruptTransferWrite007 %{public}d InterruptTransferWrite=%{public}d", __LINE__, ret);
1527 ASSERT_NE(ret, 0);
1528 }
1529
1530 /**
1531 * @tc.name: UsbdInterruptTransferWrite008
1532 * @tc.desc: Test functions to InterruptTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1533 * std::vector<uint8_t> &data);
1534 * Positive test: parameters correctly, different in timeout
1535 * @tc.type: FUNC
1536 */
1537 HWTEST_F(UsbdTransferTest, UsbdInterruptTransferWrite008, TestSize.Level1)
1538 {
1539 struct UsbDev dev = dev_;
1540 uint8_t interfaceId = INTERFACEID_OK;
1541 uint8_t pointid = POINTID_BULK_OUT;
1542 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1543 HDF_LOGI("UsbdTransferTest::UsbdInterruptTransferWrite008 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1544 ASSERT_EQ(0, ret);
1545 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1546 std::vector<uint8_t> bufferData = {'i', 'n', 't', 'w', 'r', 'i', 't', 'e', '0', '8'};
1547 ret = g_usbInterface->InterruptTransferWrite(dev, pipe, -1, bufferData);
1548 HDF_LOGI(
1549 "UsbdTransferTest::UsbdInterruptTransferWrite008 %{public}d InterruptTransferWrite=%{public}d", __LINE__, ret);
1550 ASSERT_EQ(0, ret);
1551 }
1552
1553 /**
1554 * @tc.name: UsbdIsoTransferRead001
1555 * @tc.desc: Test functions to IsoTransferRead(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1556 * std::vector<uint8_t> &data);
1557 * @tc.desc: Positive test: parameters correctly
1558 * @tc.type: FUNC
1559 */
1560 HWTEST_F(UsbdTransferTest, UsbdIsoTransferRead001, TestSize.Level1)
1561 {
1562 struct UsbDev dev = dev_;
1563 uint8_t interfaceId = INTERFACEID_OK;
1564 uint8_t pointid = POINTID_BULK_IN;
1565 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1566 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferRead001 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1567 ASSERT_EQ(0, ret);
1568 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1569 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
1570 ret = g_usbInterface->IsoTransferRead(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1571 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferRead001 %{public}d UsbdIsoTransferRead=%{public}d", __LINE__, ret);
1572 ASSERT_EQ(0, ret);
1573 }
1574
1575 /**
1576 * @tc.name: UsbdIsoTransferRead002
1577 * @tc.desc: Test functions to IsoTransferRead(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1578 * std::vector<uint8_t> &data);
1579 * @tc.desc: Negative test: parameters exception, busNum error
1580 * @tc.type: FUNC
1581 */
1582 HWTEST_F(UsbdTransferTest, UsbdIsoTransferRead002, TestSize.Level1)
1583 {
1584 struct UsbDev dev = dev_;
1585 uint8_t interfaceId = INTERFACEID_OK;
1586 uint8_t pointid = POINTID_BULK_IN;
1587 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferRead002 %{public}d interfaceId=%{public}d", __LINE__, interfaceId);
1588 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1589 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferRead002 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1590 ASSERT_EQ(0, ret);
1591 dev.busNum = BUS_NUM_INVALID;
1592 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1593 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
1594 ret = g_usbInterface->IsoTransferRead(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1595 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferRead002 %{public}d UsbdIsoTransferRead=%{public}d", __LINE__, ret);
1596 ASSERT_NE(ret, 0);
1597 }
1598
1599 /**
1600 * @tc.name: UsbdIsoTransferRead003
1601 * @tc.desc: Test functions to IsoTransferRead(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1602 * std::vector<uint8_t> &data);
1603 * @tc.desc: Negative test: parameters exception, devAddr error
1604 * @tc.type: FUNC
1605 */
1606 HWTEST_F(UsbdTransferTest, UsbdIsoTransferRead003, TestSize.Level1)
1607 {
1608 struct UsbDev dev = dev_;
1609 uint8_t interfaceId = INTERFACEID_OK;
1610 uint8_t pointid = POINTID_BULK_IN;
1611 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1612 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferRead003 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1613 ASSERT_EQ(0, ret);
1614 dev.devAddr = DEV_ADDR_INVALID;
1615 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1616 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
1617 ret = g_usbInterface->IsoTransferRead(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1618 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferRead003 %{public}d UsbdIsoTransferRead=%{public}d", __LINE__, ret);
1619 ASSERT_NE(ret, 0);
1620 }
1621
1622 /**
1623 * @tc.name: UsbdIsoTransferRead004
1624 * @tc.desc: Test functions to IsoTransferRead(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1625 * std::vector<uint8_t> &data);
1626 * @tc.desc: Negative test: parameters exception, intfId error
1627 * @tc.type: FUNC
1628 */
1629 HWTEST_F(UsbdTransferTest, UsbdIsoTransferRead004, TestSize.Level1)
1630 {
1631 struct UsbDev dev = dev_;
1632 uint8_t interfaceId = INTERFACEID_OK;
1633 uint8_t pointid = POINTID_BULK_IN;
1634 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1635 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferRead004 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1636 ASSERT_EQ(0, ret);
1637 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1638 pipe.intfId = PIPE_INTERFACEID_INVALID;
1639 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
1640 ret = g_usbInterface->IsoTransferRead(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1641 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferRead004 %{public}d UsbdIsoTransferRead=%{public}d", __LINE__, ret);
1642 ASSERT_NE(ret, 0);
1643 }
1644
1645 /**
1646 * @tc.name: UsbdIsoTransferRead005
1647 * @tc.desc: Test functions to IsoTransferRead(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1648 * std::vector<uint8_t> &data);
1649 * @tc.desc: Negative test: parameters exception, endpointId error
1650 * @tc.type: FUNC
1651 */
1652 HWTEST_F(UsbdTransferTest, UsbdIsoTransferRead005, TestSize.Level1)
1653 {
1654 struct UsbDev dev = dev_;
1655 uint8_t interfaceId = INTERFACEID_OK;
1656 uint8_t pointid = POINTID_BULK_IN;
1657 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1658 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferRead005 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1659 ASSERT_EQ(0, ret);
1660 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1661 pipe.endpointId = PIPE_ENDPOINTID_INVALID;
1662 std::vector<uint8_t> bufferData(MAX_BUFFER_LENGTH);
1663 ret = g_usbInterface->IsoTransferRead(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1664 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferRead005 %{public}d UsbdIsoTransferRead=%{public}d", __LINE__, ret);
1665 ASSERT_NE(ret, 0);
1666 }
1667
1668 /**
1669 * @tc.name: UsbdIsoTransferWrite001
1670 * @tc.desc: Test functions to IsoTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1671 * std::vector<uint8_t> &data);
1672 * @tc.desc: Positive test: parameters correctly
1673 * @tc.type: FUNC
1674 */
1675 HWTEST_F(UsbdTransferTest, UsbdIsoTransferWrite001, TestSize.Level1)
1676 {
1677 struct UsbDev dev = dev_;
1678 uint8_t interfaceId = INTERFACEID_OK;
1679 uint8_t pointid = POINTID_BULK_OUT;
1680 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1681 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferWrite001 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1682 ASSERT_EQ(0, ret);
1683 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1684 std::vector<uint8_t> bufferData = {'i', 's', 'o', 'w', 'r', 'i', 't', 'e', '0', '1'};
1685 ret = g_usbInterface->IsoTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1686 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferWrite001 %{public}d IsoTransferWrite=%{public}d", __LINE__, ret);
1687 ASSERT_EQ(0, ret);
1688 }
1689
1690 /**
1691 * @tc.name: UsbdIsoTransferWrite002
1692 * @tc.desc: Test functions to IsoTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1693 * std::vector<uint8_t> &data);
1694 * @tc.desc: Negative test: parameters exception, busNum error
1695 * @tc.type: FUNC
1696 */
1697 HWTEST_F(UsbdTransferTest, UsbdIsoTransferWrite002, TestSize.Level1)
1698 {
1699 struct UsbDev dev = dev_;
1700 uint8_t interfaceId = INTERFACEID_OK;
1701 uint8_t pointid = POINTID_BULK_OUT;
1702 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1703 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferWrite002 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1704 ASSERT_EQ(0, ret);
1705 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1706 dev.busNum = BUS_NUM_INVALID;
1707 std::vector<uint8_t> bufferData = {'i', 's', 'o', 'w', 'r', 'i', 't', 'e', '0', '2'};
1708 ret = g_usbInterface->IsoTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1709 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferWrite002 %{public}d IsoTransferWrite=%{public}d", __LINE__, ret);
1710 ASSERT_NE(ret, 0);
1711 }
1712
1713 /**
1714 * @tc.name: UsbdIsoTransferWrite003
1715 * @tc.desc: Test functions to IsoTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1716 * std::vector<uint8_t> &data);
1717 * @tc.desc: Negative test: parameters exception, devAddr error
1718 * @tc.type: FUNC
1719 */
1720 HWTEST_F(UsbdTransferTest, UsbdIsoTransferWrite003, TestSize.Level1)
1721 {
1722 struct UsbDev dev = dev_;
1723 uint8_t interfaceId = INTERFACEID_OK;
1724 uint8_t pointid = POINTID_BULK_OUT;
1725 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1726 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferWrite003 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1727 ASSERT_EQ(0, ret);
1728 dev.devAddr = DEV_ADDR_INVALID;
1729 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1730 std::vector<uint8_t> bufferData = {'i', 's', 'o', 'w', 'r', 'i', 't', 'e', '0', '3'};
1731 ret = g_usbInterface->IsoTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1732 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferWrite003 %{public}d IsoTransferWrite=%{public}d", __LINE__, ret);
1733 ASSERT_NE(ret, 0);
1734 }
1735
1736 /**
1737 * @tc.name: UsbdIsoTransferWrite004
1738 * @tc.desc: Test functions to IsoTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1739 * std::vector<uint8_t> &data);
1740 * @tc.desc: Negative test: parameters exception, intfId error
1741 * @tc.type: FUNC
1742 */
1743 HWTEST_F(UsbdTransferTest, UsbdIsoTransferWrite004, TestSize.Level1)
1744 {
1745 struct UsbDev dev = dev_;
1746 uint8_t interfaceId = INTERFACEID_OK;
1747 uint8_t pointid = POINTID_BULK_OUT;
1748 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1749 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferWrite004 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1750 ASSERT_EQ(0, ret);
1751 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1752 pipe.intfId = PIPE_INTERFACEID_INVALID;
1753 std::vector<uint8_t> bufferData = {'i', 's', 'o', 'w', 'r', 'i', 't', 'e', '0', '4'};
1754 ret = g_usbInterface->IsoTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1755 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferWrite004 %{public}d IsoTransferWrite=%{public}d", __LINE__, ret);
1756 ASSERT_NE(ret, 0);
1757 }
1758
1759 /**
1760 * @tc.name: UsbdIsoTransferWrite005
1761 * @tc.desc: Test functions to IsoTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1762 * std::vector<uint8_t> &data);
1763 * @tc.desc: Negative test: parameters exception, endpointId error
1764 * @tc.type: FUNC
1765 */
1766 HWTEST_F(UsbdTransferTest, UsbdIsoTransferWrite005, TestSize.Level1)
1767 {
1768 struct UsbDev dev = dev_;
1769 uint8_t interfaceId = INTERFACEID_OK;
1770 uint8_t pointid = POINTID_BULK_OUT;
1771 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1772 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferWrite005 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1773 ASSERT_EQ(0, ret);
1774 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1775 pipe.endpointId = PIPE_ENDPOINTID_INVALID;
1776 std::vector<uint8_t> bufferData = {'i', 's', 'o', 'w', 'r', 'i', 't', 'e', '0', '5'};
1777 ret = g_usbInterface->IsoTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1778 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferWrite005 %{public}d IsoTransferWrite=%{public}d", __LINE__, ret);
1779 ASSERT_NE(ret, 0);
1780 }
1781
1782 /**
1783 * @tc.name: UsbdIsoTransferWrite006
1784 * @tc.desc: Test functions to IsoTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1785 * std::vector<uint8_t> &data);
1786 * @tc.desc: Negative test: parameters exception, busNum && devAddr error
1787 * @tc.type: FUNC
1788 */
1789 HWTEST_F(UsbdTransferTest, UsbdIsoTransferWrite006, TestSize.Level1)
1790 {
1791 struct UsbDev dev = dev_;
1792 uint8_t interfaceId = INTERFACEID_OK;
1793 uint8_t pointid = POINTID_BULK_OUT;
1794 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1795 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferWrite006 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1796 ASSERT_EQ(0, ret);
1797 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1798 dev.busNum = BUS_NUM_INVALID;
1799 dev.devAddr = DEV_ADDR_INVALID;
1800 std::vector<uint8_t> bufferData = {'i', 's', 'o', 'w', 'r', 'i', 't', 'e', '0', '6'};
1801 ret = g_usbInterface->IsoTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1802 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferWrite006 %{public}d IsoTransferWrite=%{public}d", __LINE__, ret);
1803 ASSERT_NE(ret, 0);
1804 }
1805
1806 /**
1807 * @tc.name: UsbdIsoTransferWrite007
1808 * @tc.desc: Test functions to IsoTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1809 * std::vector<uint8_t> &data);
1810 * @tc.desc: Negative test: parameters exception, endpointId error, ClaimInterface failed first
1811 * @tc.type: FUNC
1812 */
1813 HWTEST_F(UsbdTransferTest, UsbdIsoTransferWrite007, TestSize.Level1)
1814 {
1815 struct UsbDev dev = dev_;
1816 uint8_t interfaceId = INTERFACEID_OK;
1817 uint8_t pointid = PIPE_ENDPOINTID_INVALID;
1818 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1819 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferWrite007 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1820 ASSERT_EQ(0, ret);
1821 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1822 std::vector<uint8_t> bufferData = {'i', 's', 'o', 'w', 'r', 'i', 't', 'e', '0', '7'};
1823 ret = g_usbInterface->IsoTransferWrite(dev, pipe, TRANSFER_TIME_OUT, bufferData);
1824 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferWrite007 %{public}d IsoTransferWrite=%{public}d", __LINE__, ret);
1825 ASSERT_NE(ret, 0);
1826 }
1827
1828 /**
1829 * @tc.name: UsbdIsoTransferWrite008
1830 * @tc.desc: Test functions to IsoTransferWrite(const UsbDev &dev, const UsbPipe &pipe, int32_t timeout,
1831 * std::vector<uint8_t> &data);
1832 * @tc.desc: Positive test: parameters correctly, different in timeout
1833 * @tc.type: FUNC
1834 */
1835 HWTEST_F(UsbdTransferTest, UsbdIsoTransferWrite008, TestSize.Level1)
1836 {
1837 struct UsbDev dev = dev_;
1838 uint8_t interfaceId = INTERFACEID_OK;
1839 uint8_t pointid = POINTID_BULK_OUT;
1840 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1841 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferWrite008 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1842 ASSERT_EQ(0, ret);
1843 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1844 std::vector<uint8_t> bufferData = {'i', 's', 'o', 'w', 'r', 'i', 't', 'e', '0', '8'};
1845 ret = g_usbInterface->IsoTransferWrite(dev, pipe, -1, bufferData);
1846 HDF_LOGI("UsbdTransferTest::UsbdIsoTransferWrite008 %{public}d IsoTransferWrite=%{public}d", __LINE__, ret);
1847 ASSERT_EQ(0, ret);
1848 }
1849
1850 /**
1851 * @tc.name: BulkWrite001
1852 * @tc.desc: Test functions to int32_t BulkWrite(const UsbDev &dev, const UsbPipe &pipe, const sptr<Ashmem> &ashmem)
1853 * @tc.desc: Positive test: parameters correctly
1854 * @tc.type: FUNC
1855 */
1856 HWTEST_F(UsbdTransferTest, BulkWrite001, TestSize.Level1)
1857 {
1858 sptr<Ashmem> ashmem;
1859 uint8_t rflg = 0;
1860 int32_t asmSize = MAX_BUFFER_LENGTH;
1861 struct UsbDev dev = dev_;
1862 uint8_t interfaceId = INTERFACEID_OK;
1863 uint8_t pointid = POINTID_BULK_IN;
1864 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1865 HDF_LOGI("UsbdTransferTest::BulkWrite001 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1866 ASSERT_EQ(0, ret);
1867 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1868 (void)InitAshmemOne(ashmem, asmSize, rflg);
1869 ret = g_usbInterface->BulkWrite(dev, pipe, ashmem);
1870 HDF_LOGI("UsbdTransferTest::BulkWrite001 %{public}d BulkWrite=%{public}d", __LINE__, ret);
1871 ASSERT_EQ(ret, 0);
1872 }
1873
1874 /**
1875 * @tc.name: BulkWrite002
1876 * @tc.desc: Test functions to int32_t BulkWrite(const UsbDev &dev, const UsbPipe &pipe, const sptr<Ashmem> &ashmem)
1877 * @tc.desc: Negative test: parameters exception, busNum error
1878 * @tc.type: FUNC
1879 */
1880 HWTEST_F(UsbdTransferTest, BulkWrite002, TestSize.Level1)
1881 {
1882 sptr<Ashmem> ashmem;
1883 uint8_t rflg = 0;
1884 int32_t asmSize = MAX_BUFFER_LENGTH;
1885 struct UsbDev dev = dev_;
1886 uint8_t interfaceId = INTERFACEID_OK;
1887 uint8_t pointid = POINTID_BULK_OUT;
1888 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1889 HDF_LOGI("UsbdTransferTest::BulkWrite002 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1890 ASSERT_EQ(0, ret);
1891 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1892 dev.busNum = BUS_NUM_INVALID;
1893 (void)InitAshmemOne(ashmem, asmSize, rflg);
1894 ret = g_usbInterface->BulkWrite(dev, pipe, ashmem);
1895 HDF_LOGI("UsbdTransferTest::BulkWrite002 %{public}d BulkWrite=%{public}d", __LINE__, ret);
1896 ASSERT_NE(ret, 0);
1897 }
1898
1899 /**
1900 * @tc.name: BulkWrite003
1901 * @tc.desc: Test functions to int32_t BulkWrite(const UsbDev &dev, const UsbPipe &pipe, const sptr<Ashmem> &ashmem)
1902 * @tc.desc: Negative test: parameters exception, devAddr error
1903 * @tc.type: FUNC
1904 */
1905 HWTEST_F(UsbdTransferTest, BulkWrite003, TestSize.Level1)
1906 {
1907 sptr<Ashmem> ashmem;
1908 uint8_t rflg = 0;
1909 int32_t asmSize = MAX_BUFFER_LENGTH;
1910 struct UsbDev dev = dev_;
1911 uint8_t interfaceId = INTERFACEID_OK;
1912 uint8_t pointid = POINTID_BULK_OUT;
1913 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1914 HDF_LOGI("UsbdTransferTest::BulkWrite003 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1915 ASSERT_EQ(0, ret);
1916 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1917 dev.devAddr = DEV_ADDR_INVALID;
1918 (void)InitAshmemOne(ashmem, asmSize, rflg);
1919 ret = g_usbInterface->BulkWrite(dev, pipe, ashmem);
1920 HDF_LOGI("UsbdTransferTest::BulkWrite003 %{public}d BulkWrite=%{public}d", __LINE__, ret);
1921 ASSERT_NE(ret, 0);
1922 }
1923
1924 /**
1925 * @tc.name: BulkWrite004
1926 * @tc.desc: Test functions to int32_t BulkWrite(const UsbDev &dev, const UsbPipe &pipe, const sptr<Ashmem> &ashmem)
1927 * @tc.desc: Negative test: parameters exception, intfId error
1928 * @tc.type: FUNC
1929 */
1930 HWTEST_F(UsbdTransferTest, BulkWrite004, TestSize.Level1)
1931 {
1932 sptr<Ashmem> ashmem;
1933 uint8_t rflg = 0;
1934 int32_t asmSize = MAX_BUFFER_LENGTH;
1935 struct UsbDev dev = dev_;
1936 uint8_t interfaceId = INTERFACEID_OK;
1937 uint8_t pointid = POINTID_BULK_OUT;
1938 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1939 HDF_LOGI("UsbdTransferTest::BulkWrite004 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1940 ASSERT_EQ(0, ret);
1941 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1942 pipe.intfId = PIPE_INTERFACEID_INVALID;
1943 (void)InitAshmemOne(ashmem, asmSize, rflg);
1944 ret = g_usbInterface->BulkWrite(dev, pipe, ashmem);
1945 HDF_LOGI("UsbdTransferTest::BulkWrite004 %{public}d BulkWrite=%{public}d", __LINE__, ret);
1946 ASSERT_NE(ret, 0);
1947 }
1948
1949 /**
1950 * @tc.name: BulkWrite005
1951 * @tc.desc: Test functions to int32_t BulkWrite(const UsbDev &dev, const UsbPipe &pipe, const sptr<Ashmem> &ashmem)
1952 * @tc.desc: Negative test: parameters exception, endpointId error
1953 * @tc.type: FUNC
1954 */
1955 HWTEST_F(UsbdTransferTest, BulkWrite005, TestSize.Level1)
1956 {
1957 sptr<Ashmem> ashmem;
1958 uint8_t rflg = 0;
1959 int32_t asmSize = MAX_BUFFER_LENGTH;
1960 struct UsbDev dev = dev_;
1961 uint8_t interfaceId = INTERFACEID_OK;
1962 uint8_t pointid = POINTID_BULK_OUT;
1963 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1964 HDF_LOGI("UsbdTransferTest::BulkWrite005 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1965 ASSERT_EQ(0, ret);
1966 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1967 pipe.endpointId = PIPE_ENDPOINTID_INVALID;
1968 (void)InitAshmemOne(ashmem, asmSize, rflg);
1969 ret = g_usbInterface->BulkWrite(dev, pipe, ashmem);
1970 HDF_LOGI("UsbdTransferTest::BulkWrite005 %{public}d BulkWrite=%{public}d", __LINE__, ret);
1971 ASSERT_NE(ret, 0);
1972 }
1973
1974 /**
1975 * @tc.name: BulkRead001
1976 * @tc.desc: Test functions to int32_t BulkRead(const UsbDev &dev, const UsbPipe &pipe, const sptr<Ashmem> &ashmem)
1977 * @tc.desc: Positive test: parameters correctly
1978 * @tc.type: FUNC
1979 */
1980 HWTEST_F(UsbdTransferTest, BulkRead001, TestSize.Level1)
1981 {
1982 sptr<Ashmem> ashmem;
1983 uint8_t rflg = 0;
1984 int32_t asmSize = MAX_BUFFER_LENGTH;
1985 struct UsbDev dev = dev_;
1986 uint8_t interfaceId = INTERFACEID_OK;
1987 uint8_t pointid = POINTID_BULK_IN;
1988 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
1989 HDF_LOGI("UsbdTransferTest::BulkRead001 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
1990 ASSERT_EQ(0, ret);
1991 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
1992 (void)InitAshmemOne(ashmem, asmSize, rflg);
1993 ret = g_usbInterface->BulkRead(dev, pipe, ashmem);
1994 HDF_LOGI("UsbdTransferTest::BulkRead001 %{public}d BulkRead=%{public}d", __LINE__, ret);
1995 ASSERT_EQ(ret, 0);
1996 }
1997
1998 /**
1999 * @tc.name: BulkRead002
2000 * @tc.desc: Test functions to int32_t BulkRead(const UsbDev &dev, const UsbPipe &pipe, const sptr<Ashmem> &ashmem)
2001 * @tc.desc: Negative test: parameters exception, busNum error
2002 * @tc.type: FUNC
2003 */
2004 HWTEST_F(UsbdTransferTest, BulkRead002, TestSize.Level1)
2005 {
2006 sptr<Ashmem> ashmem;
2007 uint8_t rflg = 0;
2008 int32_t asmSize = MAX_BUFFER_LENGTH;
2009 struct UsbDev dev = dev_;
2010 uint8_t interfaceId = INTERFACEID_OK;
2011 uint8_t pointid = POINTID_BULK_OUT;
2012 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
2013 HDF_LOGI("UsbdTransferTest::BulkRead002 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
2014 ASSERT_EQ(0, ret);
2015 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
2016 dev.busNum = BUS_NUM_INVALID;
2017 (void)InitAshmemOne(ashmem, asmSize, rflg);
2018 ret = g_usbInterface->BulkRead(dev, pipe, ashmem);
2019 HDF_LOGI("UsbdTransferTest::BulkRead002 %{public}d BulkRead=%{public}d", __LINE__, ret);
2020 ASSERT_NE(ret, 0);
2021 }
2022
2023 /**
2024 * @tc.name: BulkRead003
2025 * @tc.desc: Test functions to int32_t BulkRead(const UsbDev &dev, const UsbPipe &pipe, const sptr<Ashmem> &ashmem)
2026 * @tc.desc: Negative test: parameters exception, devAddr error
2027 * @tc.type: FUNC
2028 */
2029 HWTEST_F(UsbdTransferTest, BulkRead003, TestSize.Level1)
2030 {
2031 sptr<Ashmem> ashmem;
2032 uint8_t rflg = 0;
2033 int32_t asmSize = MAX_BUFFER_LENGTH;
2034 struct UsbDev dev = dev_;
2035 uint8_t interfaceId = INTERFACEID_OK;
2036 uint8_t pointid = POINTID_BULK_OUT;
2037 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
2038 HDF_LOGI("UsbdTransferTest::BulkRead003 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
2039 ASSERT_EQ(0, ret);
2040 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
2041 dev.devAddr = DEV_ADDR_INVALID;
2042 (void)InitAshmemOne(ashmem, asmSize, rflg);
2043 ret = g_usbInterface->BulkRead(dev, pipe, ashmem);
2044 HDF_LOGI("UsbdTransferTest::BulkRead003 %{public}d BulkRead=%{public}d", __LINE__, ret);
2045 ASSERT_NE(ret, 0);
2046 }
2047
2048 /**
2049 * @tc.name: BulkRead004
2050 * @tc.desc: Test functions to int32_t BulkRead(const UsbDev &dev, const UsbPipe &pipe, const sptr<Ashmem> &ashmem)
2051 * @tc.desc: Negative test: parameters exception, intfId error
2052 * @tc.type: FUNC
2053 */
2054 HWTEST_F(UsbdTransferTest, BulkRead004, TestSize.Level1)
2055 {
2056 sptr<Ashmem> ashmem;
2057 uint8_t rflg = 0;
2058 int32_t asmSize = MAX_BUFFER_LENGTH;
2059 struct UsbDev dev = dev_;
2060 uint8_t interfaceId = INTERFACEID_OK;
2061 uint8_t pointid = POINTID_BULK_OUT;
2062 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
2063 HDF_LOGI("UsbdTransferTest::BulkRead004 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
2064 ASSERT_EQ(0, ret);
2065 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
2066 pipe.intfId = PIPE_INTERFACEID_INVALID;
2067 (void)InitAshmemOne(ashmem, asmSize, rflg);
2068 ret = g_usbInterface->BulkRead(dev, pipe, ashmem);
2069 HDF_LOGI("UsbdTransferTest::BulkRead004 %{public}d BulkRead=%{public}d", __LINE__, ret);
2070 ASSERT_NE(ret, 0);
2071 }
2072
2073 /**
2074 * @tc.name: BulkRead005
2075 * @tc.desc: Test functions to int32_t BulkRead(const UsbDev &dev, const UsbPipe &pipe, const sptr<Ashmem> &ashmem)
2076 * @tc.desc: Negative test: parameters exception, endpointId error
2077 * @tc.type: FUNC
2078 */
2079 HWTEST_F(UsbdTransferTest, BulkRead005, TestSize.Level1)
2080 {
2081 sptr<Ashmem> ashmem;
2082 uint8_t rflg = 0;
2083 int32_t asmSize = MAX_BUFFER_LENGTH;
2084 struct UsbDev dev = dev_;
2085 uint8_t interfaceId = INTERFACEID_OK;
2086 uint8_t pointid = POINTID_BULK_OUT;
2087 auto ret = g_usbInterface->ClaimInterface(dev, interfaceId, 1);
2088 HDF_LOGI("UsbdTransferTest::BulkRead005 %{public}d ClaimInterface=%{public}d", __LINE__, ret);
2089 ASSERT_EQ(0, ret);
2090 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
2091 pipe.endpointId = PIPE_ENDPOINTID_INVALID;
2092 (void)InitAshmemOne(ashmem, asmSize, rflg);
2093 ret = g_usbInterface->BulkRead(dev, pipe, ashmem);
2094 HDF_LOGI("UsbdTransferTest::BulkRead005 %{public}d BulkRead=%{public}d", __LINE__, ret);
2095 ASSERT_NE(ret, 0);
2096 }
2097
2098 /**
2099 * @tc.name: RegBulkCallback001
2100 * @tc.desc: Test functions to RegBulkCallback
2101 * @tc.desc: int32_t RegBulkCallback(const UsbDev &dev, const UsbPipe &pipe, const sptr<IUsbdBulkCallback> &cb)
2102 * @tc.desc: Positive test: parameters correctly
2103 * @tc.type: FUNC
2104 */
2105 HWTEST_F(UsbdTransferTest, RegBulkCallback001, TestSize.Level1)
2106 {
2107 struct UsbDev dev = dev_;
2108 uint8_t interfaceId = INTERFACEID_OK;
2109 uint8_t pointid = POINTID_BULK_OUT;
2110 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
2111 sptr<UsbdBulkCallbackTest> usbdBulkCallback = new UsbdBulkCallbackTest();
2112 if (usbdBulkCallback == nullptr) {
2113 HDF_LOGE("%{public}s:UsbdBulkCallbackTest new failed.", __func__);
2114 exit(0);
2115 }
2116 auto ret = g_usbInterface->RegBulkCallback(dev, pipe, usbdBulkCallback);
2117 HDF_LOGI("UsbdTransferTest::RegBulkCallback001 %{public}d RegBulkCallback=%{public}d", __LINE__, ret);
2118 ASSERT_EQ(ret, 0);
2119 }
2120
2121 /**
2122 * @tc.name: RegBulkCallback002
2123 * @tc.desc: Test functions to RegBulkCallback
2124 * @tc.desc: int32_t RegBulkCallback(const UsbDev &dev, const UsbPipe &pipe, const sptr<IUsbdBulkCallback> &cb)
2125 * @tc.desc: Negative test: parameters exception, busNum error
2126 * @tc.type: FUNC
2127 */
2128 HWTEST_F(UsbdTransferTest, RegBulkCallback002, TestSize.Level1)
2129 {
2130 struct UsbDev dev = dev_;
2131 uint8_t interfaceId = INTERFACEID_OK;
2132 uint8_t pointid = POINTID_BULK_OUT;
2133 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
2134 dev.busNum = BUS_NUM_INVALID;
2135 sptr<UsbdBulkCallbackTest> usbdBulkCallback = new UsbdBulkCallbackTest();
2136 if (usbdBulkCallback == nullptr) {
2137 HDF_LOGE("%{public}s:UsbdBulkCallbackTest new failed.", __func__);
2138 exit(0);
2139 }
2140 auto ret = g_usbInterface->RegBulkCallback(dev, pipe, usbdBulkCallback);
2141 HDF_LOGI("UsbdTransferTest::RegBulkCallback002 %{public}d RegBulkCallback=%{public}d", __LINE__, ret);
2142 ASSERT_NE(ret, 0);
2143 }
2144
2145 /**
2146 * @tc.name: RegBulkCallback003
2147 * @tc.desc: Test functions to int32_t RegBulkCallback(const UsbDev &dev, const UsbPipe &pipe,
2148 * const sptr<IUsbdBulkCallback> &cb)
2149 * @tc.desc: Negative test: parameters exception, devAddr error
2150 * @tc.type: FUNC
2151 */
2152 HWTEST_F(UsbdTransferTest, RegBulkCallback003, TestSize.Level1)
2153 {
2154 struct UsbDev dev = dev_;
2155 uint8_t interfaceId = INTERFACEID_OK;
2156 uint8_t pointid = POINTID_BULK_OUT;
2157 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
2158 dev.devAddr = DEV_ADDR_INVALID;
2159 sptr<UsbdBulkCallbackTest> usbdBulkCallback = new UsbdBulkCallbackTest();
2160 if (usbdBulkCallback == nullptr) {
2161 HDF_LOGE("%{public}s:UsbdBulkCallbackTest new failed.", __func__);
2162 exit(0);
2163 }
2164 auto ret = g_usbInterface->RegBulkCallback(dev, pipe, usbdBulkCallback);
2165 HDF_LOGI("UsbdTransferTest::RegBulkCallback003 %{public}d RegBulkCallback=%{public}d", __LINE__, ret);
2166 ASSERT_NE(ret, 0);
2167 }
2168
2169 /**
2170 * @tc.name: RegBulkCallback004
2171 * @tc.desc: Test functions to int32_t RegBulkCallback(const UsbDev &dev, const UsbPipe &pipe,
2172 * const sptr<IUsbdBulkCallback> &cb)
2173 * @tc.desc: Negative test: parameters exception, intfId error
2174 * @tc.type: FUNC
2175 */
2176 HWTEST_F(UsbdTransferTest, RegBulkCallback004, TestSize.Level1)
2177 {
2178 struct UsbDev dev = dev_;
2179 uint8_t interfaceId = INTERFACEID_OK;
2180 uint8_t pointid = POINTID_BULK_OUT;
2181 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
2182 pipe.intfId = PIPE_INTERFACEID_INVALID;
2183 sptr<UsbdBulkCallbackTest> usbdBulkCallback = new UsbdBulkCallbackTest();
2184 if (usbdBulkCallback == nullptr) {
2185 HDF_LOGE("%{public}s:UsbdBulkCallbackTest new failed.", __func__);
2186 exit(0);
2187 }
2188 auto ret = g_usbInterface->RegBulkCallback(dev, pipe, usbdBulkCallback);
2189 HDF_LOGI("UsbdTransferTest::RegBulkCallback004 %{public}d RegBulkCallback=%{public}d", __LINE__, ret);
2190 ASSERT_NE(ret, 0);
2191 }
2192
2193 /**
2194 * @tc.name: RegBulkCallback005
2195 * @tc.desc: Test functions to int32_t RegBulkCallback(const UsbDev &dev, const UsbPipe &pipe,
2196 * const sptr<IUsbdBulkCallback> &cb)
2197 * @tc.desc: Negative test: parameters exception, cb error
2198 * @tc.type: FUNC
2199 */
2200 HWTEST_F(UsbdTransferTest, RegBulkCallback005, TestSize.Level1)
2201 {
2202 struct UsbDev dev = dev_;
2203 uint8_t interfaceId = INTERFACEID_OK;
2204 uint8_t pointid = POINTID_BULK_OUT;
2205 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
2206 auto ret = g_usbInterface->RegBulkCallback(dev, pipe, nullptr);
2207 HDF_LOGI("UsbdTransferTest::RegBulkCallback005 %{public}d RegBulkCallback=%{public}d", __LINE__, ret);
2208 ASSERT_NE(ret, 0);
2209 }
2210
2211 /**
2212 * @tc.name: UnRegBulkCallback001
2213 * @tc.desc: Test functions to int32_t UnRegBulkCallback(const UsbDev &dev, const UsbPipe &pipe)
2214 * @tc.desc: Positive test: parameters correctly
2215 * @tc.type: FUNC
2216 */
2217 HWTEST_F(UsbdTransferTest, UnRegBulkCallback001, TestSize.Level1)
2218 {
2219 struct UsbDev dev = dev_;
2220 uint8_t interfaceId = INTERFACEID_OK;
2221 uint8_t pointid = POINTID_BULK_OUT;
2222 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
2223 sptr<UsbdBulkCallbackTest> usbdBulkCallback = new UsbdBulkCallbackTest();
2224 if (usbdBulkCallback == nullptr) {
2225 HDF_LOGE("%{public}s:UsbdBulkCallbackTest new failed.", __func__);
2226 exit(0);
2227 }
2228 auto ret = g_usbInterface->RegBulkCallback(dev, pipe, usbdBulkCallback);
2229 HDF_LOGI("UsbdTransferTest::UnRegBulkCallback001 %{public}d RegBulkCallback=%{public}d", __LINE__, ret);
2230 ASSERT_EQ(ret, 0);
2231 ret = g_usbInterface->UnRegBulkCallback(dev, pipe);
2232 HDF_LOGI("UsbdTransferTest::UnRegBulkCallback001 %{public}d UnRegBulkCallback=%{public}d", __LINE__, ret);
2233 ASSERT_EQ(ret, 0);
2234 }
2235
2236 /**
2237 * @tc.name: UnRegBulkCallback002
2238 * @tc.desc: Test functions to int32_t UnRegBulkCallback(const UsbDev &dev, const UsbPipe &pipe)
2239 * @tc.desc: Negative test: parameters exception, devAddr error
2240 * @tc.type: FUNC
2241 */
2242 HWTEST_F(UsbdTransferTest, UnRegBulkCallback002, TestSize.Level1)
2243 {
2244 struct UsbDev dev = dev_;
2245 uint8_t interfaceId = INTERFACEID_OK;
2246 uint8_t pointid = POINTID_BULK_OUT;
2247 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
2248 sptr<UsbdBulkCallbackTest> usbdBulkCallback = new UsbdBulkCallbackTest();
2249 if (usbdBulkCallback == nullptr) {
2250 HDF_LOGE("%{public}s:UsbdBulkCallbackTest new failed.", __func__);
2251 exit(0);
2252 }
2253 auto ret = g_usbInterface->RegBulkCallback(dev, pipe, usbdBulkCallback);
2254 HDF_LOGI("UsbdTransferTest::UnRegBulkCallback002 %{public}d RegBulkCallback=%{public}d", __LINE__, ret);
2255 ASSERT_EQ(ret, 0);
2256 dev.devAddr = DEV_ADDR_INVALID;
2257 ret = g_usbInterface->UnRegBulkCallback(dev, pipe);
2258 HDF_LOGI("UsbdTransferTest::UnRegBulkCallback002 %{public}d UnRegBulkCallback=%{public}d", __LINE__, ret);
2259 ASSERT_NE(ret, 0);
2260 dev = dev_;
2261 ret = g_usbInterface->UnRegBulkCallback(dev, pipe);
2262 HDF_LOGI("UsbdTransferTest::UnRegBulkCallback002 %{public}d again UnRegBulkCallback=%{public}d", __LINE__, ret);
2263 ASSERT_EQ(ret, 0);
2264 }
2265
2266 /**
2267 * @tc.name: UnRegBulkCallback003
2268 * @tc.desc: Test functions to int32_t UnRegBulkCallback(const UsbDev &dev, const UsbPipe &pipe)
2269 * @tc.desc: Negative test: parameters exception, intfId error
2270 * @tc.type: FUNC
2271 */
2272 HWTEST_F(UsbdTransferTest, UnRegBulkCallback003, TestSize.Level1)
2273 {
2274 struct UsbDev dev = dev_;
2275 uint8_t interfaceId = INTERFACEID_OK;
2276 uint8_t pointid = POINTID_BULK_OUT;
2277 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
2278 sptr<UsbdBulkCallbackTest> usbdBulkCallback = new UsbdBulkCallbackTest();
2279 if (usbdBulkCallback == nullptr) {
2280 HDF_LOGE("%{public}s:UsbdBulkCallbackTest new failed.", __func__);
2281 exit(0);
2282 }
2283 auto ret = g_usbInterface->RegBulkCallback(dev, pipe, usbdBulkCallback);
2284 HDF_LOGI("UsbdTransferTest::UnRegBulkCallback003 %{public}d RegBulkCallback=%{public}d", __LINE__, ret);
2285 ASSERT_EQ(ret, 0);
2286 pipe.intfId = PIPE_INTERFACEID_INVALID;
2287 ret = g_usbInterface->UnRegBulkCallback(dev, pipe);
2288 HDF_LOGI("UsbdTransferTest::UnRegBulkCallback003 %{public}d UnRegBulkCallback=%{public}d", __LINE__, ret);
2289 ASSERT_NE(ret, 0);
2290 pipe = {interfaceId, pointid};
2291 ret = g_usbInterface->UnRegBulkCallback(dev, pipe);
2292 HDF_LOGI("UsbdTransferTest::UnRegBulkCallback003 %{public}d again UnRegBulkCallback=%{public}d", __LINE__, ret);
2293 ASSERT_EQ(ret, 0);
2294 }
2295
2296 /**
2297 * @tc.name: UnRegBulkCallback004
2298 * @tc.desc: Test functions to int32_t UnRegBulkCallback(const UsbDev &dev, const UsbPipe &pipe)
2299 * @tc.desc: Positive test: call again
2300 * @tc.type: FUNC
2301 */
2302 HWTEST_F(UsbdTransferTest, UnRegBulkCallback004, TestSize.Level1)
2303 {
2304 struct UsbDev dev = dev_;
2305 uint8_t interfaceId = INTERFACEID_OK;
2306 uint8_t pointid = POINTID_BULK_OUT;
2307 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
2308 sptr<UsbdBulkCallbackTest> usbdBulkCallback = new UsbdBulkCallbackTest();
2309 if (usbdBulkCallback == nullptr) {
2310 HDF_LOGE("%{public}s:UsbdBulkCallbackTest new failed.", __func__);
2311 exit(0);
2312 }
2313 auto ret = g_usbInterface->RegBulkCallback(dev, pipe, usbdBulkCallback);
2314 HDF_LOGI("UsbdTransferTest::UnRegBulkCallback004 %{public}d RegBulkCallback=%{public}d", __LINE__, ret);
2315 ASSERT_EQ(ret, 0);
2316 ret = g_usbInterface->UnRegBulkCallback(dev, pipe);
2317 HDF_LOGI("UsbdTransferTest::UnRegBulkCallback004 %{public}d UnRegBulkCallback=%{public}d", __LINE__, ret);
2318 ASSERT_EQ(ret, 0);
2319 ret = g_usbInterface->UnRegBulkCallback(dev, pipe);
2320 HDF_LOGI("UsbdTransferTest::UnRegBulkCallback004 %{public}d again UnRegBulkCallback=%{public}d", __LINE__, ret);
2321 ASSERT_EQ(ret, 0);
2322 }
2323
2324 /**
2325 * @tc.name: UnRegBulkCallback005
2326 * @tc.desc: Test functions to int32_t UnRegBulkCallback(const UsbDev &dev, const UsbPipe &pipe)
2327 * @tc.desc: Positive test: no register
2328 * @tc.type: FUNC
2329 */
2330 HWTEST_F(UsbdTransferTest, UnRegBulkCallback005, TestSize.Level1)
2331 {
2332 struct UsbDev dev = dev_;
2333 uint8_t interfaceId = INTERFACEID_OK;
2334 uint8_t pointid = POINTID_BULK_OUT;
2335 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointid};
2336 auto ret = g_usbInterface->UnRegBulkCallback(dev, pipe);
2337 HDF_LOGI("UsbdTransferTest::UnRegBulkCallback005 %{public}d UnRegBulkCallback=%{public}d", __LINE__, ret);
2338 ASSERT_EQ(ret, 0);
2339 }
2340
2341 /**
2342 * @tc.name: UnbindUsbdSubscriber001
2343 * @tc.desc: Test functions to int32_t UnbindUsbdSubscriber(const sptr<IUsbdSubscriber> &subscriber_)
2344 * @tc.desc: Positive test: parameters correctly
2345 * @tc.type: FUNC
2346 */
2347 HWTEST_F(UsbdTransferTest, UnbindUsbdSubscriber001, TestSize.Level1)
2348 {
2349 sptr<UsbSubscriberTest> subscriber_ = new UsbSubscriberTest();
2350 if (subscriber_ == nullptr) {
2351 HDF_LOGE("%{public}s:UsbSubscriberTest new failed.", __func__);
2352 exit(0);
2353 }
2354 auto ret = g_usbInterface->BindUsbdSubscriber(subscriber_);
2355 HDF_LOGI("UsbdTransferTest::UnbindUsbdSubscriber001 %{public}d first BindUsbdSubscriber=%{public}d", __LINE__, ret);
2356 ASSERT_EQ(0, ret);
2357 ret = g_usbInterface->UnbindUsbdSubscriber(subscriber_);
2358 HDF_LOGI("UsbdTransferTest::UnbindUsbdSubscriber001 %{public}d UnbindUsbdSubscriber=%{public}d", __LINE__, ret);
2359 ASSERT_EQ(0, ret);
2360 }
2361
2362 /**
2363 * @tc.name: UnbindUsbdSubscriber002
2364 * @tc.desc: Test functions to int32_t UnbindUsbdSubscriber(const sptr<IUsbdSubscriber> &subscriber_)
2365 * @tc.desc: Negative test: no bind first
2366 * @tc.type: FUNC
2367 */
2368 HWTEST_F(UsbdTransferTest, UnbindUsbdSubscriber002, TestSize.Level1)
2369 {
2370 sptr<UsbSubscriberTest> subscriber_ = new UsbSubscriberTest();
2371 if (subscriber_ == nullptr) {
2372 HDF_LOGE("%{public}s:UsbSubscriberTest new failed.", __func__);
2373 exit(0);
2374 }
2375 auto ret = g_usbInterface->UnbindUsbdSubscriber(subscriber_);
2376 HDF_LOGI("UsbdTransferTest::UnbindUsbdSubscriber002 %{public}d UnbindUsbdSubscriber=%{public}d", __LINE__, ret);
2377 ASSERT_NE(0, ret);
2378 }
2379
2380 /**
2381 * @tc.name: UnbindUsbdSubscriber003
2382 * @tc.desc: Test functions to int32_t UnbindUsbdSubscriber(const sptr<IUsbdSubscriber> &subscriber_)
2383 * @tc.desc: Positive test: no bind first, unbind failed; then bind, unbind success
2384 * @tc.type: FUNC
2385 */
2386 HWTEST_F(UsbdTransferTest, UnbindUsbdSubscriber003, TestSize.Level1)
2387 {
2388 sptr<UsbSubscriberTest> subscriber_ = new UsbSubscriberTest();
2389 if (subscriber_ == nullptr) {
2390 HDF_LOGE("%{public}s:UsbSubscriberTest new failed.", __func__);
2391 exit(0);
2392 }
2393 auto ret = g_usbInterface->UnbindUsbdSubscriber(subscriber_);
2394 HDF_LOGI("UsbdTransferTest::UnbindUsbdSubscriber003 %{public}d UnbindUsbdSubscriber=%{public}d", __LINE__, ret);
2395 ASSERT_NE(0, ret);
2396 ret = g_usbInterface->BindUsbdSubscriber(subscriber_);
2397 HDF_LOGI("UsbdTransferTest::UnbindUsbdSubscriber003 %{public}d first BindUsbdSubscriber=%{public}d", __LINE__, ret);
2398 ASSERT_EQ(0, ret);
2399 ret = g_usbInterface->UnbindUsbdSubscriber(subscriber_);
2400 HDF_LOGI(
2401 "UsbdTransferTest::UnbindUsbdSubscriber003 %{public}d again UnbindUsbdSubscriber=%{public}d", __LINE__, ret);
2402 ASSERT_EQ(0, ret);
2403 }
2404
2405 /**
2406 * @tc.name: UnbindUsbdSubscriber004
2407 * @tc.desc: Test functions to int32_t UnbindUsbdSubscriber(const sptr<IUsbdSubscriber> &subscriber_)
2408 * @tc.desc: Negative test: call twice
2409 * @tc.type: FUNC
2410 */
2411 HWTEST_F(UsbdTransferTest, UnbindUsbdSubscriber004, TestSize.Level1)
2412 {
2413 sptr<UsbSubscriberTest> subscriber_ = new UsbSubscriberTest();
2414 if (subscriber_ == nullptr) {
2415 HDF_LOGE("%{public}s:UsbSubscriberTest new failed.", __func__);
2416 exit(0);
2417 }
2418 auto ret = g_usbInterface->BindUsbdSubscriber(subscriber_);
2419 HDF_LOGI("UsbdTransferTest::UnbindUsbdSubscriber004 %{public}d first BindUsbdSubscriber=%{public}d", __LINE__, ret);
2420 ASSERT_EQ(0, ret);
2421 ret = g_usbInterface->UnbindUsbdSubscriber(subscriber_);
2422 HDF_LOGI(
2423 "UsbdTransferTest::UnbindUsbdSubscriber004 %{public}d first UnbindUsbdSubscriber=%{public}d", __LINE__, ret);
2424 ASSERT_EQ(0, ret);
2425 ret = g_usbInterface->UnbindUsbdSubscriber(subscriber_);
2426 HDF_LOGI(
2427 "UsbdTransferTest::UnbindUsbdSubscriber004 %{public}d again UnbindUsbdSubscriber=%{public}d", __LINE__, ret);
2428 ASSERT_NE(0, ret);
2429 }
2430
2431 /**
2432 * @tc.name: UnbindUsbdSubscriber005
2433 * @tc.desc: Test functions to int32_t UnbindUsbdSubscriber(const sptr<IUsbdSubscriber> &subscriber_)
2434 * @tc.desc: Positive test: test repeatedly
2435 * @tc.type: FUNC
2436 */
2437 HWTEST_F(UsbdTransferTest, UnbindUsbdSubscriber005, TestSize.Level1)
2438 {
2439 sptr<UsbSubscriberTest> subscriber_ = new UsbSubscriberTest();
2440 if (subscriber_ == nullptr) {
2441 HDF_LOGE("%{public}s:UsbSubscriberTest new failed.", __func__);
2442 exit(0);
2443 }
2444 auto ret = g_usbInterface->BindUsbdSubscriber(subscriber_);
2445 HDF_LOGI("UsbdTransferTest::UnbindUsbdSubscriber005 %{public}d first BindUsbdSubscriber=%{public}d", __LINE__, ret);
2446 ASSERT_EQ(0, ret);
2447 ret = g_usbInterface->UnbindUsbdSubscriber(subscriber_);
2448 HDF_LOGI(
2449 "UsbdTransferTest::UnbindUsbdSubscriber005 %{public}d first UnbindUsbdSubscriber=%{public}d", __LINE__, ret);
2450 ASSERT_EQ(0, ret);
2451 ret = g_usbInterface->BindUsbdSubscriber(subscriber_);
2452 HDF_LOGI("UsbdTransferTest::UnbindUsbdSubscriber005 %{public}d again BindUsbdSubscriber=%{public}d", __LINE__, ret);
2453 ASSERT_EQ(0, ret);
2454 ret = g_usbInterface->UnbindUsbdSubscriber(subscriber_);
2455 HDF_LOGI(
2456 "UsbdTransferTest::UnbindUsbdSubscriber005 %{public}d again UnbindUsbdSubscriber=%{public}d", __LINE__, ret);
2457 ASSERT_EQ(0, ret);
2458 }
2459
2460 /**
2461 * @tc.name: BindUsbdSubscriber001
2462 * @tc.desc: Test functions to int32_t BindUsbdSubscriber(const sptr<IUsbdSubscriber> &subscriber_)
2463 * @tc.desc: Positive test: parameters correctly
2464 * @tc.type: FUNC
2465 */
2466 HWTEST_F(UsbdTransferTest, BindUsbdSubscriber001, TestSize.Level1)
2467 {
2468 sptr<UsbSubscriberTest> subscriber_ = new UsbSubscriberTest();
2469 if (subscriber_ == nullptr) {
2470 HDF_LOGE("%{public}s:UsbSubscriberTest new failed.", __func__);
2471 exit(0);
2472 }
2473 auto ret = g_usbInterface->BindUsbdSubscriber(subscriber_);
2474 HDF_LOGI("UsbdTransferTest::BindUsbdSubscriber001 %{public}d BindUsbdSubscriber=%{public}d", __LINE__, ret);
2475 ASSERT_EQ(0, ret);
2476 }
2477
2478 /**
2479 * @tc.name: BindUsbdSubscriber002
2480 * @tc.desc: Test functions to int32_t BindUsbdSubscriber(const sptr<IUsbdSubscriber> &subscriber_)
2481 * @tc.desc: Positive test: bind different
2482 * @tc.type: FUNC
2483 */
2484 HWTEST_F(UsbdTransferTest, BindUsbdSubscriber002, TestSize.Level1)
2485 {
2486 sptr<UsbSubscriberTest> subscriber_ = new UsbSubscriberTest();
2487 if (subscriber_ == nullptr) {
2488 HDF_LOGE("%{public}s:UsbSubscriberTest new failed.", __func__);
2489 exit(0);
2490 }
2491 auto ret = g_usbInterface->BindUsbdSubscriber(subscriber_);
2492 HDF_LOGI("UsbdTransferTest::BindUsbdSubscriber002 %{public}d BindUsbdSubscriber=%{public}d", __LINE__, ret);
2493 ASSERT_EQ(0, ret);
2494 sptr<UsbSubscriberTest> subscriber2 = new UsbSubscriberTest();
2495 if (subscriber_ == nullptr) {
2496 HDF_LOGE("%{public}s:UsbSubscriberTest new failed.", __func__);
2497 exit(0);
2498 }
2499 ret = g_usbInterface->BindUsbdSubscriber(subscriber2);
2500 HDF_LOGI("UsbdTransferTest::BindUsbdSubscriber002 %{public}d again BindUsbdSubscriber=%{public}d", __LINE__, ret);
2501 ASSERT_EQ(0, ret);
2502 }
2503
2504 /**
2505 * @tc.name: BindUsbdSubscriber003
2506 * @tc.desc: Test functions to int32_t BindUsbdSubscriber(const sptr<IUsbdSubscriber> &subscriber_)
2507 * @tc.desc: Positive test: bind same
2508 * @tc.type: FUNC
2509 */
2510 HWTEST_F(UsbdTransferTest, BindUsbdSubscriber003, TestSize.Level1)
2511 {
2512 sptr<UsbSubscriberTest> subscriber_ = new UsbSubscriberTest();
2513 if (subscriber_ == nullptr) {
2514 HDF_LOGE("%{public}s:UsbSubscriberTest new failed.", __func__);
2515 exit(0);
2516 }
2517 auto ret = g_usbInterface->BindUsbdSubscriber(subscriber_);
2518 HDF_LOGI("UsbdTransferTest::BindUsbdSubscriber003 %{public}d BindUsbdSubscriber=%{public}d", __LINE__, ret);
2519 ASSERT_EQ(0, ret);
2520 ret = g_usbInterface->BindUsbdSubscriber(subscriber_);
2521 HDF_LOGI("UsbdTransferTest::BindUsbdSubscriber003 %{public}d again BindUsbdSubscriber=%{public}d", __LINE__, ret);
2522 ASSERT_EQ(0, ret);
2523 }
2524
2525 /**
2526 * @tc.name: BindUsbdSubscriber004
2527 * @tc.desc: Test functions to int32_t BindUsbdSubscriber(const sptr<IUsbdSubscriber> &subscriber_)
2528 * @tc.desc: Positive test: bind and unbind, then bind another
2529 * @tc.type: FUNC
2530 */
2531 HWTEST_F(UsbdTransferTest, BindUsbdSubscriber004, TestSize.Level1)
2532 {
2533 sptr<UsbSubscriberTest> subscriber_ = new UsbSubscriberTest();
2534 if (subscriber_ == nullptr) {
2535 HDF_LOGE("%{public}s:UsbSubscriberTest new failed.", __func__);
2536 exit(0);
2537 }
2538 auto ret = g_usbInterface->BindUsbdSubscriber(subscriber_);
2539 HDF_LOGI("UsbdTransferTest::BindUsbdSubscriber004 %{public}d BindUsbdSubscriber=%{public}d", __LINE__, ret);
2540 ASSERT_EQ(0, ret);
2541 ret = g_usbInterface->UnbindUsbdSubscriber(subscriber_);
2542 HDF_LOGI("UsbdTransferTest::bindUsbdSubscriber005 %{public}d UnbindUsbdSubscriber=%{public}d", __LINE__, ret);
2543 ASSERT_EQ(0, ret);
2544 sptr<UsbSubscriberTest> subscriber2 = new UsbSubscriberTest();
2545 if (subscriber_ == nullptr) {
2546 HDF_LOGE("%{public}s:UsbSubscriberTest new failed.", __func__);
2547 exit(0);
2548 }
2549 ret = g_usbInterface->BindUsbdSubscriber(subscriber2);
2550 HDF_LOGI("UsbdTransferTest::BindUsbdSubscriber004 again %{public}d BindUsbdSubscriber=%{public}d", __LINE__, ret);
2551 ASSERT_EQ(0, ret);
2552 }
2553
2554 /**
2555 * @tc.name: BindUsbdSubscriber005
2556 * @tc.desc: Test functions to int32_t BindUsbdSubscriber(const sptr<IUsbdSubscriber> &subscriber_)
2557 * @tc.desc: Positive test: bind again after unbind
2558 * @tc.type: FUNC
2559 */
2560 HWTEST_F(UsbdTransferTest, BindUsbdSubscriber005, TestSize.Level1)
2561 {
2562 sptr<UsbSubscriberTest> subscriber_ = new UsbSubscriberTest();
2563 if (subscriber_ == nullptr) {
2564 HDF_LOGE("%{public}s:UsbSubscriberTest new failed.", __func__);
2565 exit(0);
2566 }
2567 auto ret = g_usbInterface->BindUsbdSubscriber(subscriber_);
2568 HDF_LOGI("UsbdTransferTest::BindUsbdSubscriber005 %{public}d BindUsbdSubscriber=%{public}d", __LINE__, ret);
2569 ASSERT_EQ(0, ret);
2570 ret = g_usbInterface->UnbindUsbdSubscriber(subscriber_);
2571 HDF_LOGI("UsbdTransferTest::bindUsbdSubscriber005 %{public}d UnbindUsbdSubscriber=%{public}d", __LINE__, ret);
2572 ASSERT_EQ(0, ret);
2573 ret = g_usbInterface->BindUsbdSubscriber(subscriber_);
2574 HDF_LOGI("UsbdTransferTest::bindUsbdSubscriber005 %{public}d again BindUsbdSubscriber=%{public}d", __LINE__, ret);
2575 ASSERT_EQ(0, ret);
2576 }
2577 } // namespace
2578