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