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 // These tests make sure MediaGalleriesPermission values are parsed correctly. | 5 // These tests make sure MediaGalleriesPermission values are parsed correctly. |
6 | 6 |
7 #include "base/values.h" | 7 #include "base/values.h" |
8 #include "extensions/common/permissions/api_permission.h" | 8 #include "extensions/common/permissions/api_permission.h" |
9 #include "extensions/common/permissions/media_galleries_permission.h" | 9 #include "extensions/common/permissions/media_galleries_permission.h" |
10 #include "extensions/common/permissions/media_galleries_permission_data.h" | 10 #include "extensions/common/permissions/media_galleries_permission_data.h" |
11 #include "extensions/common/permissions/permissions_info.h" | 11 #include "extensions/common/permissions/permissions_info.h" |
12 #include "testing/gtest/include/gtest/gtest.h" | 12 #include "testing/gtest/include/gtest/gtest.h" |
13 | 13 |
14 using content::SocketPermissionRequest; | 14 using content::SocketPermissionRequest; |
15 using extensions::SocketPermissionData; | 15 using extensions::SocketPermissionData; |
16 | 16 |
17 namespace extensions { | 17 namespace extensions { |
18 | 18 |
19 namespace { | 19 namespace { |
20 | 20 |
| 21 void CheckFromValue(APIPermission* permission, base::ListValue* value, |
| 22 bool success_expected) { |
| 23 std::string error; |
| 24 std::vector<std::string> unhandled; |
| 25 EXPECT_EQ(success_expected, permission->FromValue(value, &error, &unhandled)); |
| 26 EXPECT_EQ(success_expected, error.empty()); |
| 27 EXPECT_TRUE(unhandled.empty()); |
| 28 } |
| 29 |
21 TEST(MediaGalleriesPermissionTest, GoodValues) { | 30 TEST(MediaGalleriesPermissionTest, GoodValues) { |
22 std::string error; | |
23 const APIPermissionInfo* permission_info = | 31 const APIPermissionInfo* permission_info = |
24 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); | 32 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); |
25 | 33 |
26 scoped_ptr<APIPermission> permission( | 34 scoped_ptr<APIPermission> permission( |
27 permission_info->CreateAPIPermission()); | 35 permission_info->CreateAPIPermission()); |
28 | 36 |
29 // access_type + all_detected | 37 // access_type + all_detected |
30 scoped_ptr<base::ListValue> value(new base::ListValue()); | 38 scoped_ptr<base::ListValue> value(new base::ListValue()); |
31 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 39 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
32 value->AppendString(MediaGalleriesPermission::kReadPermission); | 40 value->AppendString(MediaGalleriesPermission::kReadPermission); |
33 EXPECT_TRUE(permission->FromValue(value.get(), &error)); | 41 CheckFromValue(permission.get(), value.get(), true); |
34 EXPECT_TRUE(error.empty()); | |
35 error.clear(); | |
36 | 42 |
37 value.reset(new base::ListValue()); | 43 value.reset(new base::ListValue()); |
38 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 44 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
39 value->AppendString(MediaGalleriesPermission::kCopyToPermission); | 45 value->AppendString(MediaGalleriesPermission::kCopyToPermission); |
40 value->AppendString(MediaGalleriesPermission::kReadPermission); | 46 value->AppendString(MediaGalleriesPermission::kReadPermission); |
41 value->AppendString(MediaGalleriesPermission::kDeletePermission); | 47 value->AppendString(MediaGalleriesPermission::kDeletePermission); |
42 EXPECT_TRUE(permission->FromValue(value.get(), &error)); | 48 CheckFromValue(permission.get(), value.get(), true); |
43 EXPECT_TRUE(error.empty()); | |
44 error.clear(); | |
45 | 49 |
46 // all_detected | 50 // all_detected |
47 value.reset(new base::ListValue()); | 51 value.reset(new base::ListValue()); |
48 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 52 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
49 EXPECT_TRUE(permission->FromValue(value.get(), &error)); | 53 CheckFromValue(permission.get(), value.get(), true); |
50 EXPECT_TRUE(error.empty()); | |
51 error.clear(); | |
52 | 54 |
53 // access_type | 55 // access_type |
54 value.reset(new base::ListValue()); | 56 value.reset(new base::ListValue()); |
55 value->AppendString(MediaGalleriesPermission::kReadPermission); | 57 value->AppendString(MediaGalleriesPermission::kReadPermission); |
56 EXPECT_TRUE(permission->FromValue(value.get(), &error)); | 58 CheckFromValue(permission.get(), value.get(), true); |
57 EXPECT_TRUE(error.empty()); | |
58 error.clear(); | |
59 | 59 |
60 value.reset(new base::ListValue()); | 60 value.reset(new base::ListValue()); |
61 value->AppendString(MediaGalleriesPermission::kDeletePermission); | 61 value->AppendString(MediaGalleriesPermission::kDeletePermission); |
62 value->AppendString(MediaGalleriesPermission::kReadPermission); | 62 value->AppendString(MediaGalleriesPermission::kReadPermission); |
63 EXPECT_TRUE(permission->FromValue(value.get(), &error)); | 63 CheckFromValue(permission.get(), value.get(), true); |
64 EXPECT_TRUE(error.empty()); | |
65 error.clear(); | |
66 | 64 |
67 value.reset(new base::ListValue()); | 65 value.reset(new base::ListValue()); |
68 value->AppendString(MediaGalleriesPermission::kCopyToPermission); | 66 value->AppendString(MediaGalleriesPermission::kCopyToPermission); |
69 value->AppendString(MediaGalleriesPermission::kDeletePermission); | 67 value->AppendString(MediaGalleriesPermission::kDeletePermission); |
70 value->AppendString(MediaGalleriesPermission::kReadPermission); | 68 value->AppendString(MediaGalleriesPermission::kReadPermission); |
71 EXPECT_TRUE(permission->FromValue(value.get(), &error)); | 69 CheckFromValue(permission.get(), value.get(), true); |
72 EXPECT_TRUE(error.empty()); | |
73 error.clear(); | |
74 | 70 |
75 // Repeats do not make a difference. | 71 // Repeats do not make a difference. |
76 value.reset(new base::ListValue()); | 72 value.reset(new base::ListValue()); |
77 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 73 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
78 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 74 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
79 EXPECT_TRUE(permission->FromValue(value.get(), &error)); | 75 CheckFromValue(permission.get(), value.get(), true); |
80 EXPECT_TRUE(error.empty()); | |
81 error.clear(); | |
82 | 76 |
83 value.reset(new base::ListValue()); | 77 value.reset(new base::ListValue()); |
84 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 78 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
85 value->AppendString(MediaGalleriesPermission::kReadPermission); | 79 value->AppendString(MediaGalleriesPermission::kReadPermission); |
86 value->AppendString(MediaGalleriesPermission::kReadPermission); | 80 value->AppendString(MediaGalleriesPermission::kReadPermission); |
87 value->AppendString(MediaGalleriesPermission::kDeletePermission); | 81 value->AppendString(MediaGalleriesPermission::kDeletePermission); |
88 value->AppendString(MediaGalleriesPermission::kDeletePermission); | 82 value->AppendString(MediaGalleriesPermission::kDeletePermission); |
89 value->AppendString(MediaGalleriesPermission::kDeletePermission); | 83 value->AppendString(MediaGalleriesPermission::kDeletePermission); |
90 EXPECT_TRUE(permission->FromValue(value.get(), &error)); | 84 CheckFromValue(permission.get(), value.get(), true); |
91 EXPECT_TRUE(error.empty()); | |
92 error.clear(); | |
93 } | 85 } |
94 | 86 |
95 TEST(MediaGalleriesPermissionTest, BadValues) { | 87 TEST(MediaGalleriesPermissionTest, BadValues) { |
96 std::string error; | |
97 const APIPermissionInfo* permission_info = | 88 const APIPermissionInfo* permission_info = |
98 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); | 89 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); |
99 | 90 |
100 scoped_ptr<APIPermission> permission(permission_info->CreateAPIPermission()); | 91 scoped_ptr<APIPermission> permission(permission_info->CreateAPIPermission()); |
101 | 92 |
102 // Empty | 93 // Empty |
103 scoped_ptr<base::ListValue> value(new base::ListValue()); | 94 scoped_ptr<base::ListValue> value(new base::ListValue()); |
104 EXPECT_FALSE(permission->FromValue(value.get(), &error)); | 95 CheckFromValue(permission.get(), value.get(), false); |
105 EXPECT_FALSE(error.empty()); | |
106 error.clear(); | |
107 | 96 |
108 // copyTo and delete without read | 97 // copyTo and delete without read |
109 value.reset(new base::ListValue()); | 98 value.reset(new base::ListValue()); |
110 value->AppendString(MediaGalleriesPermission::kCopyToPermission); | 99 value->AppendString(MediaGalleriesPermission::kCopyToPermission); |
111 EXPECT_FALSE(permission->FromValue(value.get(), &error)); | 100 CheckFromValue(permission.get(), value.get(), false); |
112 EXPECT_FALSE(error.empty()); | |
113 error.clear(); | |
114 | 101 |
115 value.reset(new base::ListValue()); | 102 value.reset(new base::ListValue()); |
116 value->AppendString(MediaGalleriesPermission::kDeletePermission); | 103 value->AppendString(MediaGalleriesPermission::kDeletePermission); |
117 EXPECT_FALSE(permission->FromValue(value.get(), &error)); | 104 CheckFromValue(permission.get(), value.get(), false); |
118 EXPECT_FALSE(error.empty()); | |
119 error.clear(); | |
120 | 105 |
121 value.reset(new base::ListValue()); | 106 value.reset(new base::ListValue()); |
122 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 107 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
123 value->AppendString(MediaGalleriesPermission::kCopyToPermission); | 108 value->AppendString(MediaGalleriesPermission::kCopyToPermission); |
124 value->AppendString(MediaGalleriesPermission::kDeletePermission); | 109 value->AppendString(MediaGalleriesPermission::kDeletePermission); |
125 EXPECT_FALSE(permission->FromValue(value.get(), &error)); | 110 CheckFromValue(permission.get(), value.get(), false); |
126 EXPECT_FALSE(error.empty()); | |
127 error.clear(); | |
128 | 111 |
129 // copyTo without delete | 112 // copyTo without delete |
130 value.reset(new base::ListValue()); | 113 value.reset(new base::ListValue()); |
131 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 114 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
132 value->AppendString(MediaGalleriesPermission::kCopyToPermission); | 115 value->AppendString(MediaGalleriesPermission::kCopyToPermission); |
133 value->AppendString(MediaGalleriesPermission::kReadPermission); | 116 value->AppendString(MediaGalleriesPermission::kReadPermission); |
134 EXPECT_FALSE(permission->FromValue(value.get(), &error)); | 117 CheckFromValue(permission.get(), value.get(), false); |
135 EXPECT_FALSE(error.empty()); | |
136 error.clear(); | |
137 | 118 |
138 // Repeats do not make a difference. | 119 // Repeats do not make a difference. |
139 value.reset(new base::ListValue()); | 120 value.reset(new base::ListValue()); |
140 value->AppendString(MediaGalleriesPermission::kCopyToPermission); | 121 value->AppendString(MediaGalleriesPermission::kCopyToPermission); |
141 value->AppendString(MediaGalleriesPermission::kCopyToPermission); | 122 value->AppendString(MediaGalleriesPermission::kCopyToPermission); |
142 EXPECT_FALSE(permission->FromValue(value.get(), &error)); | 123 CheckFromValue(permission.get(), value.get(), false); |
143 EXPECT_FALSE(error.empty()); | |
144 error.clear(); | |
145 | 124 |
146 value.reset(new base::ListValue()); | 125 value.reset(new base::ListValue()); |
147 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 126 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
148 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 127 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
149 value->AppendString(MediaGalleriesPermission::kCopyToPermission); | 128 value->AppendString(MediaGalleriesPermission::kCopyToPermission); |
150 value->AppendString(MediaGalleriesPermission::kDeletePermission); | 129 value->AppendString(MediaGalleriesPermission::kDeletePermission); |
151 value->AppendString(MediaGalleriesPermission::kDeletePermission); | 130 value->AppendString(MediaGalleriesPermission::kDeletePermission); |
152 EXPECT_FALSE(permission->FromValue(value.get(), &error)); | 131 CheckFromValue(permission.get(), value.get(), false); |
153 EXPECT_FALSE(error.empty()); | 132 } |
| 133 |
| 134 TEST(MediaGalleriesPermissionTest, UnknownValues) { |
| 135 std::string error; |
| 136 std::vector<std::string> unhandled; |
| 137 const APIPermissionInfo* permission_info = |
| 138 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); |
| 139 |
| 140 scoped_ptr<APIPermission> permission(permission_info->CreateAPIPermission()); |
| 141 |
| 142 // A good one and an unknown one. |
| 143 scoped_ptr<base::ListValue> value(new base::ListValue()); |
| 144 value->AppendString(MediaGalleriesPermission::kReadPermission); |
| 145 value->AppendString("Unknown"); |
| 146 EXPECT_TRUE(permission->FromValue(value.get(), &error, &unhandled)); |
| 147 EXPECT_TRUE(error.empty()); |
| 148 EXPECT_EQ(1U, unhandled.size()); |
154 error.clear(); | 149 error.clear(); |
| 150 unhandled.clear(); |
| 151 |
| 152 // Multiple unknown permissions. |
| 153 value.reset(new base::ListValue()); |
| 154 value->AppendString("Unknown1"); |
| 155 value->AppendString("Unknown2"); |
| 156 EXPECT_TRUE(permission->FromValue(value.get(), &error, &unhandled)); |
| 157 EXPECT_TRUE(error.empty()); |
| 158 EXPECT_EQ(2U, unhandled.size()); |
| 159 error.clear(); |
| 160 unhandled.clear(); |
155 } | 161 } |
156 | 162 |
157 TEST(MediaGalleriesPermissionTest, Equal) { | 163 TEST(MediaGalleriesPermissionTest, Equal) { |
158 const APIPermissionInfo* permission_info = | 164 const APIPermissionInfo* permission_info = |
159 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); | 165 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); |
160 | 166 |
161 scoped_ptr<APIPermission> permission1( | 167 scoped_ptr<APIPermission> permission1( |
162 permission_info->CreateAPIPermission()); | 168 permission_info->CreateAPIPermission()); |
163 scoped_ptr<APIPermission> permission2( | 169 scoped_ptr<APIPermission> permission2( |
164 permission_info->CreateAPIPermission()); | 170 permission_info->CreateAPIPermission()); |
165 | 171 |
166 scoped_ptr<base::ListValue> value(new base::ListValue()); | 172 scoped_ptr<base::ListValue> value(new base::ListValue()); |
167 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 173 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
168 value->AppendString(MediaGalleriesPermission::kReadPermission); | 174 value->AppendString(MediaGalleriesPermission::kReadPermission); |
169 ASSERT_TRUE(permission1->FromValue(value.get(), NULL)); | 175 ASSERT_TRUE(permission1->FromValue(value.get(), NULL, NULL)); |
170 | 176 |
171 value.reset(new base::ListValue()); | 177 value.reset(new base::ListValue()); |
172 value->AppendString(MediaGalleriesPermission::kReadPermission); | 178 value->AppendString(MediaGalleriesPermission::kReadPermission); |
173 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 179 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
174 ASSERT_TRUE(permission2->FromValue(value.get(), NULL)); | 180 ASSERT_TRUE(permission2->FromValue(value.get(), NULL, NULL)); |
175 EXPECT_TRUE(permission1->Equal(permission2.get())); | 181 EXPECT_TRUE(permission1->Equal(permission2.get())); |
176 | 182 |
177 value.reset(new base::ListValue()); | 183 value.reset(new base::ListValue()); |
178 value->AppendString(MediaGalleriesPermission::kReadPermission); | 184 value->AppendString(MediaGalleriesPermission::kReadPermission); |
179 value->AppendString(MediaGalleriesPermission::kReadPermission); | 185 value->AppendString(MediaGalleriesPermission::kReadPermission); |
180 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 186 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
181 ASSERT_TRUE(permission2->FromValue(value.get(), NULL)); | 187 ASSERT_TRUE(permission2->FromValue(value.get(), NULL, NULL)); |
182 EXPECT_TRUE(permission1->Equal(permission2.get())); | 188 EXPECT_TRUE(permission1->Equal(permission2.get())); |
183 | 189 |
184 value.reset(new base::ListValue()); | 190 value.reset(new base::ListValue()); |
185 value->AppendString(MediaGalleriesPermission::kReadPermission); | 191 value->AppendString(MediaGalleriesPermission::kReadPermission); |
186 value->AppendString(MediaGalleriesPermission::kDeletePermission); | 192 value->AppendString(MediaGalleriesPermission::kDeletePermission); |
187 ASSERT_TRUE(permission1->FromValue(value.get(), NULL)); | 193 ASSERT_TRUE(permission1->FromValue(value.get(), NULL, NULL)); |
188 | 194 |
189 value.reset(new base::ListValue()); | 195 value.reset(new base::ListValue()); |
190 value->AppendString(MediaGalleriesPermission::kDeletePermission); | 196 value->AppendString(MediaGalleriesPermission::kDeletePermission); |
191 value->AppendString(MediaGalleriesPermission::kReadPermission); | 197 value->AppendString(MediaGalleriesPermission::kReadPermission); |
192 ASSERT_TRUE(permission2->FromValue(value.get(), NULL)); | 198 ASSERT_TRUE(permission2->FromValue(value.get(), NULL, NULL)); |
193 EXPECT_TRUE(permission1->Equal(permission2.get())); | 199 EXPECT_TRUE(permission1->Equal(permission2.get())); |
194 | 200 |
195 value.reset(new base::ListValue()); | 201 value.reset(new base::ListValue()); |
196 value->AppendString(MediaGalleriesPermission::kReadPermission); | 202 value->AppendString(MediaGalleriesPermission::kReadPermission); |
197 value->AppendString(MediaGalleriesPermission::kCopyToPermission); | 203 value->AppendString(MediaGalleriesPermission::kCopyToPermission); |
198 value->AppendString(MediaGalleriesPermission::kDeletePermission); | 204 value->AppendString(MediaGalleriesPermission::kDeletePermission); |
199 ASSERT_TRUE(permission1->FromValue(value.get(), NULL)); | 205 ASSERT_TRUE(permission1->FromValue(value.get(), NULL, NULL)); |
200 | 206 |
201 value.reset(new base::ListValue()); | 207 value.reset(new base::ListValue()); |
202 value->AppendString(MediaGalleriesPermission::kDeletePermission); | 208 value->AppendString(MediaGalleriesPermission::kDeletePermission); |
203 value->AppendString(MediaGalleriesPermission::kCopyToPermission); | 209 value->AppendString(MediaGalleriesPermission::kCopyToPermission); |
204 value->AppendString(MediaGalleriesPermission::kReadPermission); | 210 value->AppendString(MediaGalleriesPermission::kReadPermission); |
205 ASSERT_TRUE(permission2->FromValue(value.get(), NULL)); | 211 ASSERT_TRUE(permission2->FromValue(value.get(), NULL, NULL)); |
206 EXPECT_TRUE(permission1->Equal(permission2.get())); | 212 EXPECT_TRUE(permission1->Equal(permission2.get())); |
207 } | 213 } |
208 | 214 |
209 TEST(MediaGalleriesPermissionTest, NotEqual) { | 215 TEST(MediaGalleriesPermissionTest, NotEqual) { |
210 const APIPermissionInfo* permission_info = | 216 const APIPermissionInfo* permission_info = |
211 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); | 217 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); |
212 | 218 |
213 scoped_ptr<APIPermission> permission1( | 219 scoped_ptr<APIPermission> permission1( |
214 permission_info->CreateAPIPermission()); | 220 permission_info->CreateAPIPermission()); |
215 scoped_ptr<APIPermission> permission2( | 221 scoped_ptr<APIPermission> permission2( |
216 permission_info->CreateAPIPermission()); | 222 permission_info->CreateAPIPermission()); |
217 | 223 |
218 scoped_ptr<base::ListValue> value(new base::ListValue()); | 224 scoped_ptr<base::ListValue> value(new base::ListValue()); |
219 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 225 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
220 value->AppendString(MediaGalleriesPermission::kReadPermission); | 226 value->AppendString(MediaGalleriesPermission::kReadPermission); |
221 ASSERT_TRUE(permission1->FromValue(value.get(), NULL)); | 227 ASSERT_TRUE(permission1->FromValue(value.get(), NULL, NULL)); |
222 | 228 |
223 value.reset(new base::ListValue()); | 229 value.reset(new base::ListValue()); |
224 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 230 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
225 value->AppendString(MediaGalleriesPermission::kReadPermission); | 231 value->AppendString(MediaGalleriesPermission::kReadPermission); |
226 value->AppendString(MediaGalleriesPermission::kDeletePermission); | 232 value->AppendString(MediaGalleriesPermission::kDeletePermission); |
227 value->AppendString(MediaGalleriesPermission::kCopyToPermission); | 233 value->AppendString(MediaGalleriesPermission::kCopyToPermission); |
228 ASSERT_TRUE(permission2->FromValue(value.get(), NULL)); | 234 ASSERT_TRUE(permission2->FromValue(value.get(), NULL, NULL)); |
229 EXPECT_FALSE(permission1->Equal(permission2.get())); | 235 EXPECT_FALSE(permission1->Equal(permission2.get())); |
230 } | 236 } |
231 | 237 |
232 TEST(MediaGalleriesPermissionTest, ToFromValue) { | 238 TEST(MediaGalleriesPermissionTest, ToFromValue) { |
233 const APIPermissionInfo* permission_info = | 239 const APIPermissionInfo* permission_info = |
234 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); | 240 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); |
235 | 241 |
236 scoped_ptr<APIPermission> permission1( | 242 scoped_ptr<APIPermission> permission1( |
237 permission_info->CreateAPIPermission()); | 243 permission_info->CreateAPIPermission()); |
238 scoped_ptr<APIPermission> permission2( | 244 scoped_ptr<APIPermission> permission2( |
239 permission_info->CreateAPIPermission()); | 245 permission_info->CreateAPIPermission()); |
240 | 246 |
241 scoped_ptr<base::ListValue> value(new base::ListValue()); | 247 scoped_ptr<base::ListValue> value(new base::ListValue()); |
242 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 248 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
243 value->AppendString(MediaGalleriesPermission::kReadPermission); | 249 value->AppendString(MediaGalleriesPermission::kReadPermission); |
244 ASSERT_TRUE(permission1->FromValue(value.get(), NULL)); | 250 ASSERT_TRUE(permission1->FromValue(value.get(), NULL, NULL)); |
245 | 251 |
246 scoped_ptr<base::Value> vtmp(permission1->ToValue()); | 252 scoped_ptr<base::Value> vtmp(permission1->ToValue()); |
247 ASSERT_TRUE(vtmp); | 253 ASSERT_TRUE(vtmp); |
248 ASSERT_TRUE(permission2->FromValue(vtmp.get(), NULL)); | 254 ASSERT_TRUE(permission2->FromValue(vtmp.get(), NULL, NULL)); |
249 EXPECT_TRUE(permission1->Equal(permission2.get())); | 255 EXPECT_TRUE(permission1->Equal(permission2.get())); |
250 | 256 |
251 value.reset(new base::ListValue()); | 257 value.reset(new base::ListValue()); |
252 value->AppendString(MediaGalleriesPermission::kReadPermission); | 258 value->AppendString(MediaGalleriesPermission::kReadPermission); |
253 value->AppendString(MediaGalleriesPermission::kDeletePermission); | 259 value->AppendString(MediaGalleriesPermission::kDeletePermission); |
254 value->AppendString(MediaGalleriesPermission::kCopyToPermission); | 260 value->AppendString(MediaGalleriesPermission::kCopyToPermission); |
255 ASSERT_TRUE(permission1->FromValue(value.get(), NULL)); | 261 ASSERT_TRUE(permission1->FromValue(value.get(), NULL, NULL)); |
256 | 262 |
257 vtmp = permission1->ToValue(); | 263 vtmp = permission1->ToValue(); |
258 ASSERT_TRUE(vtmp); | 264 ASSERT_TRUE(vtmp); |
259 ASSERT_TRUE(permission2->FromValue(vtmp.get(), NULL)); | 265 ASSERT_TRUE(permission2->FromValue(vtmp.get(), NULL, NULL)); |
260 EXPECT_TRUE(permission1->Equal(permission2.get())); | 266 EXPECT_TRUE(permission1->Equal(permission2.get())); |
261 | 267 |
262 value.reset(new base::ListValue()); | 268 value.reset(new base::ListValue()); |
263 value->AppendString(MediaGalleriesPermission::kReadPermission); | 269 value->AppendString(MediaGalleriesPermission::kReadPermission); |
264 value->AppendString(MediaGalleriesPermission::kDeletePermission); | 270 value->AppendString(MediaGalleriesPermission::kDeletePermission); |
265 ASSERT_TRUE(permission1->FromValue(value.get(), NULL)); | 271 ASSERT_TRUE(permission1->FromValue(value.get(), NULL, NULL)); |
266 | 272 |
267 vtmp = permission1->ToValue(); | 273 vtmp = permission1->ToValue(); |
268 ASSERT_TRUE(vtmp); | 274 ASSERT_TRUE(vtmp); |
269 ASSERT_TRUE(permission2->FromValue(vtmp.get(), NULL)); | 275 ASSERT_TRUE(permission2->FromValue(vtmp.get(), NULL, NULL)); |
270 EXPECT_TRUE(permission1->Equal(permission2.get())); | 276 EXPECT_TRUE(permission1->Equal(permission2.get())); |
271 } | 277 } |
272 | 278 |
273 } // namespace | 279 } // namespace |
274 | 280 |
275 } // namespace extensions | 281 } // namespace extensions |
OLD | NEW |