OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include <set> | 5 #include <set> |
6 #include <string> | 6 #include <string> |
7 | 7 |
8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
9 #include "base/pickle.h" | 9 #include "base/pickle.h" |
10 #include "base/strings/utf_string_conversions.h" | 10 #include "base/strings/utf_string_conversions.h" |
11 #include "base/values.h" | 11 #include "base/values.h" |
12 #include "extensions/common/permissions/api_permission.h" | 12 #include "extensions/common/permissions/api_permission.h" |
13 #include "extensions/common/permissions/permissions_info.h" | 13 #include "extensions/common/permissions/permissions_info.h" |
14 #include "extensions/common/permissions/usb_device_permission.h" | 14 #include "extensions/common/permissions/usb_device_permission.h" |
15 #include "extensions/common/permissions/usb_device_permission_data.h" | 15 #include "extensions/common/permissions/usb_device_permission_data.h" |
16 #include "ipc/ipc_message.h" | 16 #include "ipc/ipc_message.h" |
17 #include "testing/gtest/include/gtest/gtest.h" | 17 #include "testing/gtest/include/gtest/gtest.h" |
18 | 18 |
19 namespace extensions { | 19 namespace extensions { |
20 | 20 |
21 TEST(USBDevicePermissionTest, PermissionDataOrder) { | 21 TEST(USBDevicePermissionTest, PermissionDataOrder) { |
22 EXPECT_LT(UsbDevicePermissionData(0x02ad, 0x138c, -1), | 22 EXPECT_LT(UsbDevicePermissionData(0x02ad, 0x138c, -1), |
23 UsbDevicePermissionData(0x02ad, 0x138d, -1)); | 23 UsbDevicePermissionData(0x02ad, 0x138d, -1)); |
24 ASSERT_LT(UsbDevicePermissionData(0x02ad, 0x138d, -1), | 24 ASSERT_LT(UsbDevicePermissionData(0x02ad, 0x138d, -1), |
25 UsbDevicePermissionData(0x02ae, 0x138c, -1)); | 25 UsbDevicePermissionData(0x02ae, 0x138c, -1)); |
26 EXPECT_LT(UsbDevicePermissionData(0x02ad, 0x138c, -1), | 26 EXPECT_LT(UsbDevicePermissionData(0x02ad, 0x138c, -1), |
27 UsbDevicePermissionData(0x02ad, 0x138c, 0)); | 27 UsbDevicePermissionData(0x02ad, 0x138c, 0)); |
28 } | 28 } |
29 | 29 |
30 #if defined(ENABLE_EXTENSIONS) | 30 TEST(USBDevicePermissionTest, PermissionMessage) { |
31 #define MAYBE_PermissionMessage PermissionMessage | |
32 #else | |
33 #define MAYBE_PermissionMessage DISABLED_PermissionMessage | |
34 #endif // defined(ENABLE_EXTENSIONS) | |
35 | |
36 TEST(USBDevicePermissionTest, MAYBE_PermissionMessage) { | |
37 const char* const kMessages[] = { | 31 const char* const kMessages[] = { |
38 "Access the USB device PVR Mass Storage from HUMAX Co., Ltd.", | 32 "Access the USB device PVR Mass Storage from HUMAX Co., Ltd.", |
39 "Access the USB device from HUMAX Co., Ltd.", | 33 "Access the USB device from HUMAX Co., Ltd.", |
40 "Access the USB device", | 34 "Access the USB device", |
41 }; | 35 }; |
42 | 36 |
43 // Prepare data set | 37 // Prepare data set |
44 scoped_ptr<base::ListValue> permission_list(new base::ListValue()); | 38 scoped_ptr<base::ListValue> permission_list(new base::ListValue()); |
45 permission_list->Append( | 39 permission_list->Append( |
46 UsbDevicePermissionData(0x02ad, 0x138c, -1).ToValue()->DeepCopy()); | 40 UsbDevicePermissionData(0x02ad, 0x138c, -1).ToValue()->DeepCopy()); |
47 permission_list->Append( | 41 permission_list->Append( |
48 UsbDevicePermissionData(0x02ad, 0x138d, -1).ToValue()->DeepCopy()); | 42 UsbDevicePermissionData(0x02ad, 0x138d, -1).ToValue()->DeepCopy()); |
49 permission_list->Append( | 43 permission_list->Append( |
50 UsbDevicePermissionData(0x02ae, 0x138d, -1).ToValue()->DeepCopy()); | 44 UsbDevicePermissionData(0x02ae, 0x138d, -1).ToValue()->DeepCopy()); |
51 | 45 |
52 UsbDevicePermission permission( | 46 UsbDevicePermission permission( |
53 PermissionsInfo::GetInstance()->GetByID(APIPermission::kUsbDevice)); | 47 PermissionsInfo::GetInstance()->GetByID(APIPermission::kUsbDevice)); |
54 ASSERT_TRUE(permission.FromValue(permission_list.get(), NULL, NULL)); | 48 ASSERT_TRUE(permission.FromValue(permission_list.get(), NULL, NULL)); |
55 | 49 |
56 PermissionMessages messages = permission.GetMessages(); | 50 PermissionMessages messages = permission.GetMessages(); |
57 ASSERT_EQ(3U, messages.size()); | 51 ASSERT_EQ(3U, messages.size()); |
58 EXPECT_EQ(base::ASCIIToUTF16(kMessages[0]), messages.at(0).message()); | 52 EXPECT_EQ(base::ASCIIToUTF16(kMessages[0]), messages.at(0).message()); |
59 EXPECT_EQ(base::ASCIIToUTF16(kMessages[1]), messages.at(1).message()); | 53 EXPECT_EQ(base::ASCIIToUTF16(kMessages[1]), messages.at(1).message()); |
60 EXPECT_EQ(base::ASCIIToUTF16(kMessages[2]), messages.at(2).message()); | 54 EXPECT_EQ(base::ASCIIToUTF16(kMessages[2]), messages.at(2).message()); |
61 } | 55 } |
62 | 56 |
63 } // namespace extensions | 57 } // namespace extensions |
OLD | NEW |