blob: a6f4e1051e8f1f717e74f84319ad5dec16ca21ad [file] [log] [blame]
Ben Chanb6ce1782013-05-27 01:00:02 -07001// Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "mist/usb_constants.h"
6
7#include <libusb.h>
8
9#include <gtest/gtest.h>
10
11namespace mist {
12
13TEST(UsbConstantsTest, UsbDirection) {
14 EXPECT_EQ(kUsbDirectionIn, static_cast<UsbDirection>(LIBUSB_ENDPOINT_IN));
15 EXPECT_EQ(kUsbDirectionOut, static_cast<UsbDirection>(LIBUSB_ENDPOINT_OUT));
16}
17
18TEST(UsbConstantsTest, UsbSpeed) {
19 EXPECT_EQ(kUsbSpeedUnknown, static_cast<UsbSpeed>(LIBUSB_SPEED_UNKNOWN));
20 EXPECT_EQ(kUsbSpeedLow, static_cast<UsbSpeed>(LIBUSB_SPEED_LOW));
21 EXPECT_EQ(kUsbSpeedFull, static_cast<UsbSpeed>(LIBUSB_SPEED_FULL));
22 EXPECT_EQ(kUsbSpeedHigh, static_cast<UsbSpeed>(LIBUSB_SPEED_HIGH));
23 EXPECT_EQ(kUsbSpeedSuper, static_cast<UsbSpeed>(LIBUSB_SPEED_SUPER));
24}
25
26TEST(UsbConstantsTest, UsbTransferType) {
27 EXPECT_EQ(kUsbTransferTypeControl,
28 static_cast<UsbTransferType>(LIBUSB_TRANSFER_TYPE_CONTROL));
29 EXPECT_EQ(kUsbTransferTypeIsochronous,
30 static_cast<UsbTransferType>(LIBUSB_TRANSFER_TYPE_ISOCHRONOUS));
31 EXPECT_EQ(kUsbTransferTypeBulk,
32 static_cast<UsbTransferType>(LIBUSB_TRANSFER_TYPE_BULK));
33 EXPECT_EQ(kUsbTransferTypeInterrupt,
34 static_cast<UsbTransferType>(LIBUSB_TRANSFER_TYPE_INTERRUPT));
35}
36
37TEST(UsbConstantsTest, UsbTransferStatus) {
38 EXPECT_EQ(kUsbTransferStatusCompleted,
39 static_cast<UsbTransferStatus>(LIBUSB_TRANSFER_COMPLETED));
40 EXPECT_EQ(kUsbTransferStatusError,
41 static_cast<UsbTransferStatus>(LIBUSB_TRANSFER_ERROR));
42 EXPECT_EQ(kUsbTransferStatusTimedOut,
43 static_cast<UsbTransferStatus>(LIBUSB_TRANSFER_TIMED_OUT));
44 EXPECT_EQ(kUsbTransferStatusCancelled,
45 static_cast<UsbTransferStatus>(LIBUSB_TRANSFER_CANCELLED));
46 EXPECT_EQ(kUsbTransferStatusStall,
47 static_cast<UsbTransferStatus>(LIBUSB_TRANSFER_STALL));
48 EXPECT_EQ(kUsbTransferStatusNoDevice,
49 static_cast<UsbTransferStatus>(LIBUSB_TRANSFER_NO_DEVICE));
50 EXPECT_EQ(kUsbTransferStatusOverflow,
51 static_cast<UsbTransferStatus>(LIBUSB_TRANSFER_OVERFLOW));
52}
53
Ben Chan72643922013-09-17 00:36:25 -070054TEST(UsbConstantsTest, GetUsbDirectionOfEndpointAddress) {
55 EXPECT_EQ(kUsbDirectionIn,
56 GetUsbDirectionOfEndpointAddress(kUsbDirectionIn | 0x1));
57 EXPECT_EQ(kUsbDirectionOut, GetUsbDirectionOfEndpointAddress(0x1));
58}
59
Ben Chanb6ce1782013-05-27 01:00:02 -070060} // namespace mist