| // Copyright (c) 2013 The Chromium OS Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "mist/usb_config_descriptor.h" |
| |
| #include <libusb.h> |
| |
| #include <gtest/gtest.h> |
| |
| #include "mist/usb_device.h" |
| |
| namespace mist { |
| |
| TEST(UsbConfigDescriptorTest, TrivialGetters) { |
| libusb_config_descriptor descriptor; |
| descriptor.bLength = 9; |
| descriptor.bDescriptorType = LIBUSB_DT_CONFIG; |
| descriptor.wTotalLength = 300; |
| descriptor.bNumInterfaces = 3; |
| descriptor.bConfigurationValue = 1; |
| descriptor.bmAttributes = 0xa0; |
| descriptor.MaxPower = 2; |
| |
| base::WeakPtr<UsbDevice> device; |
| UsbConfigDescriptor config_descriptor(device, &descriptor, false); |
| EXPECT_EQ(9, config_descriptor.GetLength()); |
| EXPECT_EQ(LIBUSB_DT_CONFIG, config_descriptor.GetDescriptorType()); |
| EXPECT_EQ(300, config_descriptor.GetTotalLength()); |
| EXPECT_EQ(3, config_descriptor.GetNumInterfaces()); |
| EXPECT_EQ(1, config_descriptor.GetConfigurationValue()); |
| EXPECT_EQ(0xa0, config_descriptor.GetAttributes()); |
| EXPECT_EQ(2, config_descriptor.GetMaxPower()); |
| } |
| |
| } // namespace mist |