OLD | NEW |
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/manifest_permission.h" | 8 #include "extensions/common/permissions/manifest_permission.h" |
9 #include "extensions/common/permissions/manifest_permission_set.h" | 9 #include "extensions/common/permissions/manifest_permission_set.h" |
10 #include "ipc/ipc_message.h" | 10 #include "ipc/ipc_message.h" |
(...skipping 16 matching lines...) Expand all Loading... |
27 } | 27 } |
28 | 28 |
29 virtual bool HasMessages() const OVERRIDE { | 29 virtual bool HasMessages() const OVERRIDE { |
30 return false; | 30 return false; |
31 } | 31 } |
32 | 32 |
33 virtual PermissionMessages GetMessages() const OVERRIDE { | 33 virtual PermissionMessages GetMessages() const OVERRIDE { |
34 return PermissionMessages(); | 34 return PermissionMessages(); |
35 } | 35 } |
36 | 36 |
37 virtual bool FromValue(const base::Value* value) OVERRIDE { | 37 virtual bool FromValue(const base::Value* value) OVERRIDE { return true; } |
38 return false; | |
39 } | |
40 | 38 |
41 virtual scoped_ptr<base::Value> ToValue() const OVERRIDE { | 39 virtual scoped_ptr<base::Value> ToValue() const OVERRIDE { |
42 return scoped_ptr<base::Value>(base::Value::CreateNullValue()); | 40 return make_scoped_ptr(base::Value::CreateNullValue()); |
43 } | |
44 | |
45 virtual ManifestPermission* Clone() const OVERRIDE { | |
46 return new MockManifestPermission(name_); | |
47 } | 41 } |
48 | 42 |
49 virtual ManifestPermission* Diff(const ManifestPermission* rhs) | 43 virtual ManifestPermission* Diff(const ManifestPermission* rhs) |
50 const OVERRIDE { | 44 const OVERRIDE { |
51 const MockManifestPermission* other = | 45 const MockManifestPermission* other = |
52 static_cast<const MockManifestPermission*>(rhs); | 46 static_cast<const MockManifestPermission*>(rhs); |
53 EXPECT_EQ(name_, other->name_); | 47 EXPECT_EQ(name_, other->name_); |
54 return NULL; | 48 return NULL; |
55 } | 49 } |
56 | 50 |
57 virtual ManifestPermission* Union(const ManifestPermission* rhs) | 51 virtual ManifestPermission* Union(const ManifestPermission* rhs) |
58 const OVERRIDE { | 52 const OVERRIDE { |
59 const MockManifestPermission* other = | 53 const MockManifestPermission* other = |
60 static_cast<const MockManifestPermission*>(rhs); | 54 static_cast<const MockManifestPermission*>(rhs); |
61 EXPECT_EQ(name_, other->name_); | 55 EXPECT_EQ(name_, other->name_); |
62 return new MockManifestPermission(name_); | 56 return new MockManifestPermission(name_); |
63 } | 57 } |
64 | 58 |
65 virtual ManifestPermission* Intersect(const ManifestPermission* rhs) | 59 virtual ManifestPermission* Intersect(const ManifestPermission* rhs) |
66 const OVERRIDE { | 60 const OVERRIDE { |
67 const MockManifestPermission* other = | 61 const MockManifestPermission* other = |
68 static_cast<const MockManifestPermission*>(rhs); | 62 static_cast<const MockManifestPermission*>(rhs); |
69 EXPECT_EQ(name_, other->name_); | 63 EXPECT_EQ(name_, other->name_); |
70 return new MockManifestPermission(name_); | 64 return new MockManifestPermission(name_); |
71 } | 65 } |
72 | 66 |
73 virtual bool Contains(const ManifestPermission* rhs) const OVERRIDE { | |
74 const MockManifestPermission* other = | |
75 static_cast<const MockManifestPermission*>(rhs); | |
76 EXPECT_EQ(name_, other->name_); | |
77 return true; | |
78 } | |
79 | |
80 virtual bool Equal(const ManifestPermission* rhs) const OVERRIDE { | |
81 const MockManifestPermission* other = | |
82 static_cast<const MockManifestPermission*>(rhs); | |
83 EXPECT_EQ(name_, other->name_); | |
84 return true; | |
85 } | |
86 | |
87 virtual void Write(IPC::Message* m) const OVERRIDE { | |
88 IPC::WriteParam(m, name_); | |
89 } | |
90 | |
91 virtual bool Read(const IPC::Message* m, PickleIterator* iter) OVERRIDE { | |
92 std::string read_name; | |
93 bool result = IPC::ReadParam(m, iter, &read_name); | |
94 if (!result) | |
95 return result; | |
96 EXPECT_EQ(read_name, name_); | |
97 return true; | |
98 } | |
99 | |
100 virtual void Log(std::string* log) const OVERRIDE { | |
101 } | |
102 | |
103 private: | 67 private: |
104 std::string name_; | 68 std::string name_; |
105 }; | 69 }; |
106 | 70 |
107 TEST(ManifestPermissionSetTest, General) { | 71 TEST(ManifestPermissionSetTest, General) { |
108 ManifestPermissionSet set; | 72 ManifestPermissionSet set; |
109 set.insert(new MockManifestPermission("p1")); | 73 set.insert(new MockManifestPermission("p1")); |
110 set.insert(new MockManifestPermission("p2")); | 74 set.insert(new MockManifestPermission("p2")); |
111 set.insert(new MockManifestPermission("p3")); | 75 set.insert(new MockManifestPermission("p3")); |
112 set.insert(new MockManifestPermission("p4")); | 76 set.insert(new MockManifestPermission("p4")); |
(...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
263 EXPECT_EQ(expected_permissions, result); | 227 EXPECT_EQ(expected_permissions, result); |
264 | 228 |
265 // |result| = |permissions1| - |permissions2| --> | 229 // |result| = |permissions1| - |permissions2| --> |
266 // |result| intersect |permissions2| == empty_set | 230 // |result| intersect |permissions2| == empty_set |
267 ManifestPermissionSet result2; | 231 ManifestPermissionSet result2; |
268 ManifestPermissionSet::Intersection(result, permissions2, &result2); | 232 ManifestPermissionSet::Intersection(result, permissions2, &result2); |
269 EXPECT_TRUE(result2.empty()); | 233 EXPECT_TRUE(result2.empty()); |
270 } | 234 } |
271 | 235 |
272 } // namespace extensions | 236 } // namespace extensions |
OLD | NEW |