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

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

Issue 14694010: Consolidate manifest handler registration. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 7 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "chrome/common/extensions/extension_messages.h" 7 #include "chrome/common/extensions/extension_messages.h"
8 #include "chrome/common/extensions/extension_unittest.h"
9 #include "chrome/common/extensions/permissions/api_permission_set.h" 8 #include "chrome/common/extensions/permissions/api_permission_set.h"
9 #include "chrome/common/extensions/permissions/permissions_info.h"
10 #include "ipc/ipc_message.h" 10 #include "ipc/ipc_message.h"
11 #include "testing/gtest/include/gtest/gtest.h" 11 #include "testing/gtest/include/gtest/gtest.h"
12 12
13 namespace extensions { 13 namespace extensions {
14 14
15 class APIPermissionSetTest : public ExtensionTest { 15 TEST(APIPermissionSetTest, General) {
16 };
17
18 TEST_F(APIPermissionSetTest, General) {
19 APIPermissionSet apis; 16 APIPermissionSet apis;
20 apis.insert(APIPermission::kTab); 17 apis.insert(APIPermission::kTab);
21 apis.insert(APIPermission::kBackground); 18 apis.insert(APIPermission::kBackground);
22 apis.insert(APIPermission::kProxy); 19 apis.insert(APIPermission::kProxy);
23 apis.insert(APIPermission::kClipboardWrite); 20 apis.insert(APIPermission::kClipboardWrite);
24 apis.insert(APIPermission::kPlugin); 21 apis.insert(APIPermission::kPlugin);
25 22
26 EXPECT_EQ(apis.find(APIPermission::kProxy)->id(), APIPermission::kProxy); 23 EXPECT_EQ(apis.find(APIPermission::kProxy)->id(), APIPermission::kProxy);
27 EXPECT_TRUE(apis.find(APIPermission::kSocket) == apis.end()); 24 EXPECT_TRUE(apis.find(APIPermission::kSocket) == apis.end());
28 25
29 EXPECT_EQ(apis.size(), 5u); 26 EXPECT_EQ(apis.size(), 5u);
30 27
31 EXPECT_EQ(apis.erase(APIPermission::kTab), 1u); 28 EXPECT_EQ(apis.erase(APIPermission::kTab), 1u);
32 EXPECT_EQ(apis.size(), 4u); 29 EXPECT_EQ(apis.size(), 4u);
33 30
34 EXPECT_EQ(apis.erase(APIPermission::kTab), 0u); 31 EXPECT_EQ(apis.erase(APIPermission::kTab), 0u);
35 EXPECT_EQ(apis.size(), 4u); 32 EXPECT_EQ(apis.size(), 4u);
36 } 33 }
37 34
38 TEST_F(APIPermissionSetTest, CreateUnion) { 35 TEST(APIPermissionSetTest, CreateUnion) {
39 APIPermission* permission = NULL; 36 APIPermission* permission = NULL;
40 37
41 APIPermissionSet apis1; 38 APIPermissionSet apis1;
42 APIPermissionSet apis2; 39 APIPermissionSet apis2;
43 APIPermissionSet expected_apis; 40 APIPermissionSet expected_apis;
44 APIPermissionSet result; 41 APIPermissionSet result;
45 42
46 const APIPermissionInfo* permission_info = 43 const APIPermissionInfo* permission_info =
47 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket); 44 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket);
48 permission = permission_info->CreateAPIPermission(); 45 permission = permission_info->CreateAPIPermission();
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
116 EXPECT_FALSE(apis1.Contains(apis2)); 113 EXPECT_FALSE(apis1.Contains(apis2));
117 EXPECT_FALSE(apis1.Contains(result)); 114 EXPECT_FALSE(apis1.Contains(result));
118 EXPECT_FALSE(apis2.Contains(apis1)); 115 EXPECT_FALSE(apis2.Contains(apis1));
119 EXPECT_FALSE(apis2.Contains(result)); 116 EXPECT_FALSE(apis2.Contains(result));
120 EXPECT_TRUE(result.Contains(apis1)); 117 EXPECT_TRUE(result.Contains(apis1));
121 EXPECT_TRUE(result.Contains(apis2)); 118 EXPECT_TRUE(result.Contains(apis2));
122 119
123 EXPECT_EQ(expected_apis, result); 120 EXPECT_EQ(expected_apis, result);
124 } 121 }
125 122
126 TEST_F(APIPermissionSetTest, CreateIntersection) { 123 TEST(APIPermissionSetTest, CreateIntersection) {
127 APIPermission* permission = NULL; 124 APIPermission* permission = NULL;
128 125
129 APIPermissionSet apis1; 126 APIPermissionSet apis1;
130 APIPermissionSet apis2; 127 APIPermissionSet apis2;
131 APIPermissionSet expected_apis; 128 APIPermissionSet expected_apis;
132 APIPermissionSet result; 129 APIPermissionSet result;
133 130
134 const APIPermissionInfo* permission_info = 131 const APIPermissionInfo* permission_info =
135 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket); 132 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket);
136 133
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
194 EXPECT_TRUE(apis1.Contains(result)); 191 EXPECT_TRUE(apis1.Contains(result));
195 EXPECT_TRUE(apis2.Contains(result)); 192 EXPECT_TRUE(apis2.Contains(result));
196 EXPECT_FALSE(apis1.Contains(apis2)); 193 EXPECT_FALSE(apis1.Contains(apis2));
197 EXPECT_FALSE(apis2.Contains(apis1)); 194 EXPECT_FALSE(apis2.Contains(apis1));
198 EXPECT_FALSE(result.Contains(apis1)); 195 EXPECT_FALSE(result.Contains(apis1));
199 EXPECT_FALSE(result.Contains(apis2)); 196 EXPECT_FALSE(result.Contains(apis2));
200 197
201 EXPECT_EQ(expected_apis, result); 198 EXPECT_EQ(expected_apis, result);
202 } 199 }
203 200
204 TEST_F(APIPermissionSetTest, CreateDifference) { 201 TEST(APIPermissionSetTest, CreateDifference) {
205 APIPermission* permission = NULL; 202 APIPermission* permission = NULL;
206 203
207 APIPermissionSet apis1; 204 APIPermissionSet apis1;
208 APIPermissionSet apis2; 205 APIPermissionSet apis2;
209 APIPermissionSet expected_apis; 206 APIPermissionSet expected_apis;
210 APIPermissionSet result; 207 APIPermissionSet result;
211 208
212 const APIPermissionInfo* permission_info = 209 const APIPermissionInfo* permission_info =
213 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket); 210 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket);
214 211
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
265 EXPECT_FALSE(apis2.Contains(result)); 262 EXPECT_FALSE(apis2.Contains(result));
266 263
267 EXPECT_EQ(expected_apis, result); 264 EXPECT_EQ(expected_apis, result);
268 265
269 // |result| = |apis1| - |apis2| --> |result| intersect |apis2| == empty_set 266 // |result| = |apis1| - |apis2| --> |result| intersect |apis2| == empty_set
270 APIPermissionSet result2; 267 APIPermissionSet result2;
271 APIPermissionSet::Intersection(result, apis2, &result2); 268 APIPermissionSet::Intersection(result, apis2, &result2);
272 EXPECT_TRUE(result2.empty()); 269 EXPECT_TRUE(result2.empty());
273 } 270 }
274 271
275 TEST_F(APIPermissionSetTest, IPC) { 272 TEST(APIPermissionSetTest, IPC) {
276 APIPermission* permission = NULL; 273 APIPermission* permission = NULL;
277 274
278 APIPermissionSet apis; 275 APIPermissionSet apis;
279 APIPermissionSet expected_apis; 276 APIPermissionSet expected_apis;
280 277
281 const APIPermissionInfo* permission_info = 278 const APIPermissionInfo* permission_info =
282 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket); 279 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket);
283 280
284 apis.insert(APIPermission::kTab); 281 apis.insert(APIPermission::kTab);
285 apis.insert(APIPermission::kBackground); 282 apis.insert(APIPermission::kBackground);
(...skipping 12 matching lines...) Expand all
298 EXPECT_NE(apis, expected_apis); 295 EXPECT_NE(apis, expected_apis);
299 296
300 IPC::Message m; 297 IPC::Message m;
301 WriteParam(&m, apis); 298 WriteParam(&m, apis);
302 PickleIterator iter(m); 299 PickleIterator iter(m);
303 CHECK(ReadParam(&m, &iter, &expected_apis)); 300 CHECK(ReadParam(&m, &iter, &expected_apis));
304 EXPECT_EQ(apis, expected_apis); 301 EXPECT_EQ(apis, expected_apis);
305 } 302 }
306 303
307 } // namespace extensions 304 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698