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

Side by Side Diff: components/policy/core/common/policy_bundle_unittest.cc

Issue 2666093002: Remove base::FundamentalValue (Closed)
Patch Set: Rebase Created 3 years, 9 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 "components/policy/core/common/policy_bundle.h" 5 #include "components/policy/core/common/policy_bundle.h"
6 6
7 #include <memory> 7 #include <memory>
8 #include <utility> 8 #include <utility>
9 9
10 #include "base/callback.h" 10 #include "base/callback.h"
(...skipping 14 matching lines...) Expand all
25 const char kPolicy1[] = "policy-1"; 25 const char kPolicy1[] = "policy-1";
26 const char kPolicy2[] = "policy-2"; 26 const char kPolicy2[] = "policy-2";
27 const char kExtension0[] = "extension-0"; 27 const char kExtension0[] = "extension-0";
28 const char kExtension1[] = "extension-1"; 28 const char kExtension1[] = "extension-1";
29 const char kExtension2[] = "extension-2"; 29 const char kExtension2[] = "extension-2";
30 const char kExtension3[] = "extension-3"; 30 const char kExtension3[] = "extension-3";
31 31
32 // Adds test policies to |policy|. 32 // Adds test policies to |policy|.
33 void AddTestPolicies(PolicyMap* policy) { 33 void AddTestPolicies(PolicyMap* policy) {
34 policy->Set("mandatory-user", POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 34 policy->Set("mandatory-user", POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
35 POLICY_SOURCE_CLOUD, 35 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>(123), nullptr);
36 base::MakeUnique<base::FundamentalValue>(123), nullptr);
37 policy->Set("mandatory-machine", POLICY_LEVEL_MANDATORY, POLICY_SCOPE_MACHINE, 36 policy->Set("mandatory-machine", POLICY_LEVEL_MANDATORY, POLICY_SCOPE_MACHINE,
38 POLICY_SOURCE_CLOUD, base::MakeUnique<base::StringValue>("omg"), 37 POLICY_SOURCE_CLOUD, base::MakeUnique<base::StringValue>("omg"),
39 nullptr); 38 nullptr);
40 policy->Set("recommended-user", POLICY_LEVEL_RECOMMENDED, POLICY_SCOPE_USER, 39 policy->Set("recommended-user", POLICY_LEVEL_RECOMMENDED, POLICY_SCOPE_USER,
41 POLICY_SOURCE_CLOUD, 40 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>(true),
42 base::MakeUnique<base::FundamentalValue>(true), nullptr); 41 nullptr);
43 std::unique_ptr<base::DictionaryValue> dict(new base::DictionaryValue()); 42 std::unique_ptr<base::DictionaryValue> dict(new base::DictionaryValue());
44 dict->SetBoolean("false", false); 43 dict->SetBoolean("false", false);
45 dict->SetInteger("int", 456); 44 dict->SetInteger("int", 456);
46 dict->SetString("str", "bbq"); 45 dict->SetString("str", "bbq");
47 policy->Set("recommended-machine", POLICY_LEVEL_RECOMMENDED, 46 policy->Set("recommended-machine", POLICY_LEVEL_RECOMMENDED,
48 POLICY_SCOPE_MACHINE, POLICY_SOURCE_CLOUD, std::move(dict), 47 POLICY_SCOPE_MACHINE, POLICY_SOURCE_CLOUD, std::move(dict),
49 nullptr); 48 nullptr);
50 } 49 }
51 50
52 // Adds test policies to |policy| based on the parameters: 51 // Adds test policies to |policy| based on the parameters:
53 // - kPolicyClashing0 mapped to |value|, user mandatory 52 // - kPolicyClashing0 mapped to |value|, user mandatory
54 // - kPolicyClashing1 mapped to |value|, with |level| and |scope| 53 // - kPolicyClashing1 mapped to |value|, with |level| and |scope|
55 // - |name| mapped to |value|, user mandatory 54 // - |name| mapped to |value|, user mandatory
56 void AddTestPoliciesWithParams(PolicyMap *policy, 55 void AddTestPoliciesWithParams(PolicyMap *policy,
57 const char* name, 56 const char* name,
58 int value, 57 int value,
59 PolicyLevel level, 58 PolicyLevel level,
60 PolicyScope scope) { 59 PolicyScope scope) {
61 policy->Set(kPolicyClashing0, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 60 policy->Set(kPolicyClashing0, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
62 POLICY_SOURCE_CLOUD, 61 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>(value),
63 base::MakeUnique<base::FundamentalValue>(value), nullptr); 62 nullptr);
64 policy->Set(kPolicyClashing1, level, scope, POLICY_SOURCE_CLOUD, 63 policy->Set(kPolicyClashing1, level, scope, POLICY_SOURCE_CLOUD,
65 base::MakeUnique<base::FundamentalValue>(value), nullptr); 64 base::MakeUnique<base::Value>(value), nullptr);
66 policy->Set(name, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 65 policy->Set(name, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
67 POLICY_SOURCE_CLOUD, 66 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>(value),
68 base::MakeUnique<base::FundamentalValue>(value), nullptr); 67 nullptr);
69 } 68 }
70 69
71 // Returns true if |bundle| is empty. 70 // Returns true if |bundle| is empty.
72 bool IsEmpty(const PolicyBundle& bundle) { 71 bool IsEmpty(const PolicyBundle& bundle) {
73 return bundle.begin() == bundle.end(); 72 return bundle.begin() == bundle.end();
74 } 73 }
75 74
76 } // namespace 75 } // namespace
77 76
78 TEST(PolicyBundleTest, Get) { 77 TEST(PolicyBundleTest, Get) {
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
186 PolicyBundle empty_bundle; 185 PolicyBundle empty_bundle;
187 merged.MergeFrom(empty_bundle); 186 merged.MergeFrom(empty_bundle);
188 187
189 // chrome and kExtension3 policies are merged: 188 // chrome and kExtension3 policies are merged:
190 // - kPolicyClashing0 comes from bundle0, which has the highest priority; 189 // - kPolicyClashing0 comes from bundle0, which has the highest priority;
191 // - kPolicyClashing1 comes from bundle1, which has the highest level/scope 190 // - kPolicyClashing1 comes from bundle1, which has the highest level/scope
192 // combination; 191 // combination;
193 // - kPolicyN are merged from each bundle. 192 // - kPolicyN are merged from each bundle.
194 PolicyMap expected; 193 PolicyMap expected;
195 expected.Set(kPolicyClashing0, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 194 expected.Set(kPolicyClashing0, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
196 POLICY_SOURCE_CLOUD, base::MakeUnique<base::FundamentalValue>(0), 195 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>(0), nullptr);
197 nullptr);
198 expected.Set(kPolicyClashing1, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_MACHINE, 196 expected.Set(kPolicyClashing1, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_MACHINE,
199 POLICY_SOURCE_CLOUD, base::MakeUnique<base::FundamentalValue>(1), 197 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>(1), nullptr);
200 nullptr);
201 expected.Set(kPolicy0, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 198 expected.Set(kPolicy0, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
202 POLICY_SOURCE_CLOUD, base::MakeUnique<base::FundamentalValue>(0), 199 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>(0), nullptr);
203 nullptr);
204 expected.Set(kPolicy1, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 200 expected.Set(kPolicy1, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
205 POLICY_SOURCE_CLOUD, base::MakeUnique<base::FundamentalValue>(1), 201 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>(1), nullptr);
206 nullptr);
207 expected.Set(kPolicy2, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 202 expected.Set(kPolicy2, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
208 POLICY_SOURCE_CLOUD, base::MakeUnique<base::FundamentalValue>(2), 203 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>(2), nullptr);
209 nullptr);
210 EXPECT_TRUE(merged.Get(PolicyNamespace(POLICY_DOMAIN_CHROME, 204 EXPECT_TRUE(merged.Get(PolicyNamespace(POLICY_DOMAIN_CHROME,
211 std::string())).Equals(expected)); 205 std::string())).Equals(expected));
212 EXPECT_TRUE(merged.Get(PolicyNamespace(POLICY_DOMAIN_EXTENSIONS, 206 EXPECT_TRUE(merged.Get(PolicyNamespace(POLICY_DOMAIN_EXTENSIONS,
213 kExtension3)).Equals(expected)); 207 kExtension3)).Equals(expected));
214 // extension0 comes only from bundle0. 208 // extension0 comes only from bundle0.
215 EXPECT_TRUE(merged.Get(PolicyNamespace(POLICY_DOMAIN_EXTENSIONS, 209 EXPECT_TRUE(merged.Get(PolicyNamespace(POLICY_DOMAIN_EXTENSIONS,
216 kExtension0)).Equals(policy0)); 210 kExtension0)).Equals(policy0));
217 // extension1 comes only from bundle1. 211 // extension1 comes only from bundle1.
218 EXPECT_TRUE(merged.Get(PolicyNamespace(POLICY_DOMAIN_EXTENSIONS, 212 EXPECT_TRUE(merged.Get(PolicyNamespace(POLICY_DOMAIN_EXTENSIONS,
219 kExtension1)).Equals(policy1)); 213 kExtension1)).Equals(policy1));
(...skipping 19 matching lines...) Expand all
239 EXPECT_FALSE(bundle.Equals(other)); 233 EXPECT_FALSE(bundle.Equals(other));
240 other.CopyFrom(bundle); 234 other.CopyFrom(bundle);
241 EXPECT_TRUE(bundle.Equals(other)); 235 EXPECT_TRUE(bundle.Equals(other));
242 AddTestPolicies(&other.Get( 236 AddTestPolicies(&other.Get(
243 PolicyNamespace(POLICY_DOMAIN_EXTENSIONS, kExtension2))); 237 PolicyNamespace(POLICY_DOMAIN_EXTENSIONS, kExtension2)));
244 EXPECT_FALSE(bundle.Equals(other)); 238 EXPECT_FALSE(bundle.Equals(other));
245 239
246 other.CopyFrom(bundle); 240 other.CopyFrom(bundle);
247 bundle.Get(PolicyNamespace(POLICY_DOMAIN_CHROME, std::string())) 241 bundle.Get(PolicyNamespace(POLICY_DOMAIN_CHROME, std::string()))
248 .Set(kPolicy0, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 242 .Set(kPolicy0, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
249 POLICY_SOURCE_CLOUD, base::MakeUnique<base::FundamentalValue>(123), 243 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>(123), nullptr);
250 nullptr);
251 EXPECT_FALSE(bundle.Equals(other)); 244 EXPECT_FALSE(bundle.Equals(other));
252 other.CopyFrom(bundle); 245 other.CopyFrom(bundle);
253 EXPECT_TRUE(bundle.Equals(other)); 246 EXPECT_TRUE(bundle.Equals(other));
254 bundle.Get(PolicyNamespace(POLICY_DOMAIN_CHROME, std::string())) 247 bundle.Get(PolicyNamespace(POLICY_DOMAIN_CHROME, std::string()))
255 .Set(kPolicy0, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_MACHINE, 248 .Set(kPolicy0, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_MACHINE,
256 POLICY_SOURCE_CLOUD, base::MakeUnique<base::FundamentalValue>(123), 249 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>(123), nullptr);
257 nullptr);
258 EXPECT_FALSE(bundle.Equals(other)); 250 EXPECT_FALSE(bundle.Equals(other));
259 251
260 // Test non-const Get(). 252 // Test non-const Get().
261 bundle.Clear(); 253 bundle.Clear();
262 other.Clear(); 254 other.Clear();
263 PolicyMap& policy_map = 255 PolicyMap& policy_map =
264 bundle.Get(PolicyNamespace(POLICY_DOMAIN_CHROME, std::string())); 256 bundle.Get(PolicyNamespace(POLICY_DOMAIN_CHROME, std::string()));
265 EXPECT_TRUE(bundle.Equals(other)); 257 EXPECT_TRUE(bundle.Equals(other));
266 policy_map.Set(kPolicy0, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 258 policy_map.Set(kPolicy0, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
267 POLICY_SOURCE_CLOUD, 259 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>(123),
268 base::MakeUnique<base::FundamentalValue>(123), nullptr); 260 nullptr);
269 EXPECT_FALSE(bundle.Equals(other)); 261 EXPECT_FALSE(bundle.Equals(other));
270 } 262 }
271 263
272 } // namespace policy 264 } // namespace policy
OLDNEW
« no previous file with comments | « components/policy/core/common/mac_util.cc ('k') | components/policy/core/common/policy_map_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698