1 /*
2  * Copyright (c) 2022-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 #ifndef USBD_TRANSFER_TEST_H
16 #define USBD_TRANSFER_TEST_H
17 
18 #include <benchmark/benchmark.h>
19 #include <gtest/gtest.h>
20 #include "UsbSubscriberTest.h"
21 #include "v1_0/usb_types.h"
22 #include "v1_0/iusbd_bulk_callback.h"
23 
24 using OHOS::HDI::Usb::V1_0::UsbDev;
25 
26 #define DEFAULT_PORT_ID 1
27 #define POWER_ROLE_SOURCE 1
28 #define DATA_ROLE_HOST   1
29 #define USB_DDK_REQ_GET_CONFIGURATION 0x08
30 const int32_t USB_ENDPOINT_DIR_OUT = 0;
31 const int32_t USB_ENDPOINT_DIR_IN = 0x80;
32 
33 typedef enum {
34     USB_REQUEST_TARGET_INTERFACE,
35     USB_REQUEST_TARGET_DEVICE,
36     USB_REQUEST_TARGET_ENDPOINT,
37     USB_REQUEST_TARGET_OTHER,
38 } UsbRequestTargetType;
39 
40 namespace {
41 class HdfUsbdBenchmarkTransferTest : public benchmark::Fixture {
42 public:
43     void SetUp(const ::benchmark::State &state);
44     void TearDown(const ::benchmark::State &state);
45     void InitPara(const OHOS::sptr<OHOS::USB::UsbSubscriberTest> &subscriber);
46     void ReleasePara(const OHOS::sptr<OHOS::USB::UsbSubscriberTest> &subscriber);
47 
48     static UsbDev dev_;
49 };
50 class UsbdBulkCallbackTest : public OHOS::HDI::Usb::V1_0::IUsbdBulkCallback {
51 public:
52     UsbdBulkCallbackTest() = default;
53     ~UsbdBulkCallbackTest() = default;
54     int32_t OnBulkWriteCallback(int32_t status, int32_t actLength) override
55     {
56         return 0;
57     };
58     int32_t OnBulkReadCallback(int32_t status, int32_t actLength) override
59     {
60         return 0;
61     };
62 };
63 }
64 #endif // USBD_TRANSFER_TEST_H