Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(372)

Side by Side Diff: extensions/common/permissions/api_permission_set_unittest.cc

Issue 2037703004: Remove ListValue::Append(new {Fundamental,String}Value(...)) pattern in //extensions (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 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 "base/pickle.h" 5 #include "base/pickle.h"
6 #include "base/values.h" 6 #include "base/values.h"
7 #include "extensions/common/extension_messages.h" 7 #include "extensions/common/extension_messages.h"
8 #include "extensions/common/permissions/api_permission_set.h" 8 #include "extensions/common/permissions/api_permission_set.h"
9 #include "extensions/common/permissions/permissions_info.h" 9 #include "extensions/common/permissions/permissions_info.h"
10 #include "ipc/ipc_message.h" 10 #include "ipc/ipc_message.h"
(...skipping 27 matching lines...) Expand all
38 APIPermissionSet apis1; 38 APIPermissionSet apis1;
39 APIPermissionSet apis2; 39 APIPermissionSet apis2;
40 APIPermissionSet expected_apis; 40 APIPermissionSet expected_apis;
41 APIPermissionSet result; 41 APIPermissionSet result;
42 42
43 const APIPermissionInfo* permission_info = 43 const APIPermissionInfo* permission_info =
44 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket); 44 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket);
45 permission = permission_info->CreateAPIPermission(); 45 permission = permission_info->CreateAPIPermission();
46 { 46 {
47 std::unique_ptr<base::ListValue> value(new base::ListValue()); 47 std::unique_ptr<base::ListValue> value(new base::ListValue());
48 value->Append(new base::StringValue("tcp-connect:*.example.com:80")); 48 value->AppendString("tcp-connect:*.example.com:80");
49 value->Append(new base::StringValue("udp-bind::8080")); 49 value->AppendString("udp-bind::8080");
50 value->Append(new base::StringValue("udp-send-to::8888")); 50 value->AppendString("udp-send-to::8888");
51 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL)); 51 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL));
52 } 52 }
53 53
54 // Union with an empty set. 54 // Union with an empty set.
55 apis1.insert(APIPermission::kAudioCapture); 55 apis1.insert(APIPermission::kAudioCapture);
56 apis1.insert(APIPermission::kDns); 56 apis1.insert(APIPermission::kDns);
57 apis1.insert(permission->Clone()); 57 apis1.insert(permission->Clone());
58 expected_apis.insert(APIPermission::kAudioCapture); 58 expected_apis.insert(APIPermission::kAudioCapture);
59 expected_apis.insert(APIPermission::kDns); 59 expected_apis.insert(APIPermission::kDns);
60 expected_apis.insert(permission); 60 expected_apis.insert(permission);
(...skipping 12 matching lines...) Expand all
73 73
74 // Now use a real second set. 74 // Now use a real second set.
75 apis2.insert(APIPermission::kAudioCapture); 75 apis2.insert(APIPermission::kAudioCapture);
76 apis2.insert(APIPermission::kHid); 76 apis2.insert(APIPermission::kHid);
77 apis2.insert(APIPermission::kPower); 77 apis2.insert(APIPermission::kPower);
78 apis2.insert(APIPermission::kSerial); 78 apis2.insert(APIPermission::kSerial);
79 79
80 permission = permission_info->CreateAPIPermission(); 80 permission = permission_info->CreateAPIPermission();
81 { 81 {
82 std::unique_ptr<base::ListValue> value(new base::ListValue()); 82 std::unique_ptr<base::ListValue> value(new base::ListValue());
83 value->Append(new base::StringValue("tcp-connect:*.example.com:80")); 83 value->AppendString("tcp-connect:*.example.com:80");
84 value->Append(new base::StringValue("udp-send-to::8899")); 84 value->AppendString("udp-send-to::8899");
85 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL)); 85 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL));
86 } 86 }
87 apis2.insert(permission); 87 apis2.insert(permission);
88 88
89 expected_apis.insert(APIPermission::kAudioCapture); 89 expected_apis.insert(APIPermission::kAudioCapture);
90 expected_apis.insert(APIPermission::kHid); 90 expected_apis.insert(APIPermission::kHid);
91 expected_apis.insert(APIPermission::kPower); 91 expected_apis.insert(APIPermission::kPower);
92 expected_apis.insert(APIPermission::kSerial); 92 expected_apis.insert(APIPermission::kSerial);
93 93
94 permission = permission_info->CreateAPIPermission(); 94 permission = permission_info->CreateAPIPermission();
95 { 95 {
96 std::unique_ptr<base::ListValue> value(new base::ListValue()); 96 std::unique_ptr<base::ListValue> value(new base::ListValue());
97 value->Append(new base::StringValue("tcp-connect:*.example.com:80")); 97 value->AppendString("tcp-connect:*.example.com:80");
98 value->Append(new base::StringValue("udp-bind::8080")); 98 value->AppendString("udp-bind::8080");
99 value->Append(new base::StringValue("udp-send-to::8888")); 99 value->AppendString("udp-send-to::8888");
100 value->Append(new base::StringValue("udp-send-to::8899")); 100 value->AppendString("udp-send-to::8899");
101 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL)); 101 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL));
102 } 102 }
103 // Insert a new socket permission which will replace the old one. 103 // Insert a new socket permission which will replace the old one.
104 expected_apis.insert(permission); 104 expected_apis.insert(permission);
105 105
106 APIPermissionSet::Union(apis1, apis2, &result); 106 APIPermissionSet::Union(apis1, apis2, &result);
107 107
108 EXPECT_FALSE(apis1.Contains(apis2)); 108 EXPECT_FALSE(apis1.Contains(apis2));
109 EXPECT_FALSE(apis1.Contains(result)); 109 EXPECT_FALSE(apis1.Contains(result));
110 EXPECT_FALSE(apis2.Contains(apis1)); 110 EXPECT_FALSE(apis2.Contains(apis1));
(...skipping 14 matching lines...) Expand all
125 125
126 const APIPermissionInfo* permission_info = 126 const APIPermissionInfo* permission_info =
127 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket); 127 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket);
128 128
129 // Intersection with an empty set. 129 // Intersection with an empty set.
130 apis1.insert(APIPermission::kAudioCapture); 130 apis1.insert(APIPermission::kAudioCapture);
131 apis1.insert(APIPermission::kDns); 131 apis1.insert(APIPermission::kDns);
132 permission = permission_info->CreateAPIPermission(); 132 permission = permission_info->CreateAPIPermission();
133 { 133 {
134 std::unique_ptr<base::ListValue> value(new base::ListValue()); 134 std::unique_ptr<base::ListValue> value(new base::ListValue());
135 value->Append(new base::StringValue("tcp-connect:*.example.com:80")); 135 value->AppendString("tcp-connect:*.example.com:80");
136 value->Append(new base::StringValue("udp-bind::8080")); 136 value->AppendString("udp-bind::8080");
137 value->Append(new base::StringValue("udp-send-to::8888")); 137 value->AppendString("udp-send-to::8888");
138 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL)); 138 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL));
139 } 139 }
140 apis1.insert(permission); 140 apis1.insert(permission);
141 141
142 ASSERT_TRUE(apis2.empty()); 142 ASSERT_TRUE(apis2.empty());
143 APIPermissionSet::Intersection(apis1, apis2, &result); 143 APIPermissionSet::Intersection(apis1, apis2, &result);
144 144
145 EXPECT_TRUE(apis1.Contains(result)); 145 EXPECT_TRUE(apis1.Contains(result));
146 EXPECT_TRUE(apis2.Contains(result)); 146 EXPECT_TRUE(apis2.Contains(result));
147 EXPECT_TRUE(apis1.Contains(apis2)); 147 EXPECT_TRUE(apis1.Contains(apis2));
148 EXPECT_FALSE(apis2.Contains(apis1)); 148 EXPECT_FALSE(apis2.Contains(apis1));
149 EXPECT_FALSE(result.Contains(apis1)); 149 EXPECT_FALSE(result.Contains(apis1));
150 EXPECT_TRUE(result.Contains(apis2)); 150 EXPECT_TRUE(result.Contains(apis2));
151 151
152 EXPECT_TRUE(result.empty()); 152 EXPECT_TRUE(result.empty());
153 EXPECT_EQ(expected_apis, result); 153 EXPECT_EQ(expected_apis, result);
154 154
155 // Now use a real second set. 155 // Now use a real second set.
156 apis2.insert(APIPermission::kAudioCapture); 156 apis2.insert(APIPermission::kAudioCapture);
157 apis2.insert(APIPermission::kHid); 157 apis2.insert(APIPermission::kHid);
158 apis2.insert(APIPermission::kPower); 158 apis2.insert(APIPermission::kPower);
159 apis2.insert(APIPermission::kSerial); 159 apis2.insert(APIPermission::kSerial);
160 permission = permission_info->CreateAPIPermission(); 160 permission = permission_info->CreateAPIPermission();
161 { 161 {
162 std::unique_ptr<base::ListValue> value(new base::ListValue()); 162 std::unique_ptr<base::ListValue> value(new base::ListValue());
163 value->Append(new base::StringValue("udp-bind::8080")); 163 value->AppendString("udp-bind::8080");
164 value->Append(new base::StringValue("udp-send-to::8888")); 164 value->AppendString("udp-send-to::8888");
165 value->Append(new base::StringValue("udp-send-to::8899")); 165 value->AppendString("udp-send-to::8899");
166 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL)); 166 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL));
167 } 167 }
168 apis2.insert(permission); 168 apis2.insert(permission);
169 169
170 expected_apis.insert(APIPermission::kAudioCapture); 170 expected_apis.insert(APIPermission::kAudioCapture);
171 permission = permission_info->CreateAPIPermission(); 171 permission = permission_info->CreateAPIPermission();
172 { 172 {
173 std::unique_ptr<base::ListValue> value(new base::ListValue()); 173 std::unique_ptr<base::ListValue> value(new base::ListValue());
174 value->Append(new base::StringValue("udp-bind::8080")); 174 value->AppendString("udp-bind::8080");
175 value->Append(new base::StringValue("udp-send-to::8888")); 175 value->AppendString("udp-send-to::8888");
176 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL)); 176 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL));
177 } 177 }
178 expected_apis.insert(permission); 178 expected_apis.insert(permission);
179 179
180 APIPermissionSet::Intersection(apis1, apis2, &result); 180 APIPermissionSet::Intersection(apis1, apis2, &result);
181 181
182 EXPECT_TRUE(apis1.Contains(result)); 182 EXPECT_TRUE(apis1.Contains(result));
183 EXPECT_TRUE(apis2.Contains(result)); 183 EXPECT_TRUE(apis2.Contains(result));
184 EXPECT_FALSE(apis1.Contains(apis2)); 184 EXPECT_FALSE(apis1.Contains(apis2));
185 EXPECT_FALSE(apis2.Contains(apis1)); 185 EXPECT_FALSE(apis2.Contains(apis1));
(...skipping 13 matching lines...) Expand all
199 199
200 const APIPermissionInfo* permission_info = 200 const APIPermissionInfo* permission_info =
201 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket); 201 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket);
202 202
203 // Difference with an empty set. 203 // Difference with an empty set.
204 apis1.insert(APIPermission::kAudioCapture); 204 apis1.insert(APIPermission::kAudioCapture);
205 apis1.insert(APIPermission::kDns); 205 apis1.insert(APIPermission::kDns);
206 permission = permission_info->CreateAPIPermission(); 206 permission = permission_info->CreateAPIPermission();
207 { 207 {
208 std::unique_ptr<base::ListValue> value(new base::ListValue()); 208 std::unique_ptr<base::ListValue> value(new base::ListValue());
209 value->Append(new base::StringValue("tcp-connect:*.example.com:80")); 209 value->AppendString("tcp-connect:*.example.com:80");
210 value->Append(new base::StringValue("udp-bind::8080")); 210 value->AppendString("udp-bind::8080");
211 value->Append(new base::StringValue("udp-send-to::8888")); 211 value->AppendString("udp-send-to::8888");
212 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL)); 212 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL));
213 } 213 }
214 apis1.insert(permission); 214 apis1.insert(permission);
215 215
216 ASSERT_TRUE(apis2.empty()); 216 ASSERT_TRUE(apis2.empty());
217 APIPermissionSet::Difference(apis1, apis2, &result); 217 APIPermissionSet::Difference(apis1, apis2, &result);
218 218
219 EXPECT_EQ(apis1, result); 219 EXPECT_EQ(apis1, result);
220 220
221 // Now use a real second set. 221 // Now use a real second set.
222 apis2.insert(APIPermission::kAudioCapture); 222 apis2.insert(APIPermission::kAudioCapture);
223 apis2.insert(APIPermission::kHid); 223 apis2.insert(APIPermission::kHid);
224 apis2.insert(APIPermission::kPower); 224 apis2.insert(APIPermission::kPower);
225 apis2.insert(APIPermission::kSerial); 225 apis2.insert(APIPermission::kSerial);
226 permission = permission_info->CreateAPIPermission(); 226 permission = permission_info->CreateAPIPermission();
227 { 227 {
228 std::unique_ptr<base::ListValue> value(new base::ListValue()); 228 std::unique_ptr<base::ListValue> value(new base::ListValue());
229 value->Append(new base::StringValue("tcp-connect:*.example.com:80")); 229 value->AppendString("tcp-connect:*.example.com:80");
230 value->Append(new base::StringValue("udp-send-to::8899")); 230 value->AppendString("udp-send-to::8899");
231 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL)); 231 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL));
232 } 232 }
233 apis2.insert(permission); 233 apis2.insert(permission);
234 234
235 expected_apis.insert(APIPermission::kDns); 235 expected_apis.insert(APIPermission::kDns);
236 permission = permission_info->CreateAPIPermission(); 236 permission = permission_info->CreateAPIPermission();
237 { 237 {
238 std::unique_ptr<base::ListValue> value(new base::ListValue()); 238 std::unique_ptr<base::ListValue> value(new base::ListValue());
239 value->Append(new base::StringValue("udp-bind::8080")); 239 value->AppendString("udp-bind::8080");
240 value->Append(new base::StringValue("udp-send-to::8888")); 240 value->AppendString("udp-send-to::8888");
241 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL)); 241 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL));
242 } 242 }
243 expected_apis.insert(permission); 243 expected_apis.insert(permission);
244 244
245 APIPermissionSet::Difference(apis1, apis2, &result); 245 APIPermissionSet::Difference(apis1, apis2, &result);
246 246
247 EXPECT_TRUE(apis1.Contains(result)); 247 EXPECT_TRUE(apis1.Contains(result));
248 EXPECT_FALSE(apis2.Contains(result)); 248 EXPECT_FALSE(apis2.Contains(result));
249 249
250 EXPECT_EQ(expected_apis, result); 250 EXPECT_EQ(expected_apis, result);
(...skipping 11 matching lines...) Expand all
262 APIPermissionSet expected_apis; 262 APIPermissionSet expected_apis;
263 263
264 const APIPermissionInfo* permission_info = 264 const APIPermissionInfo* permission_info =
265 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket); 265 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket);
266 266
267 apis.insert(APIPermission::kAudioCapture); 267 apis.insert(APIPermission::kAudioCapture);
268 apis.insert(APIPermission::kDns); 268 apis.insert(APIPermission::kDns);
269 permission = permission_info->CreateAPIPermission(); 269 permission = permission_info->CreateAPIPermission();
270 { 270 {
271 std::unique_ptr<base::ListValue> value(new base::ListValue()); 271 std::unique_ptr<base::ListValue> value(new base::ListValue());
272 value->Append(new base::StringValue("tcp-connect:*.example.com:80")); 272 value->AppendString("tcp-connect:*.example.com:80");
273 value->Append(new base::StringValue("udp-bind::8080")); 273 value->AppendString("udp-bind::8080");
274 value->Append(new base::StringValue("udp-send-to::8888")); 274 value->AppendString("udp-send-to::8888");
275 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL)); 275 ASSERT_TRUE(permission->FromValue(value.get(), NULL, NULL));
276 } 276 }
277 apis.insert(permission); 277 apis.insert(permission);
278 278
279 EXPECT_NE(apis, expected_apis); 279 EXPECT_NE(apis, expected_apis);
280 280
281 IPC::Message m; 281 IPC::Message m;
282 WriteParam(&m, apis); 282 WriteParam(&m, apis);
283 base::PickleIterator iter(m); 283 base::PickleIterator iter(m);
284 CHECK(ReadParam(&m, &iter, &expected_apis)); 284 CHECK(ReadParam(&m, &iter, &expected_apis));
285 EXPECT_EQ(apis, expected_apis); 285 EXPECT_EQ(apis, expected_apis);
286 } 286 }
287 287
288 } // namespace extensions 288 } // namespace extensions
OLDNEW
« no previous file with comments | « extensions/common/manifest_handlers/oauth2_manifest_unittest.cc ('k') | extensions/common/value_builder.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698