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

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

Issue 1824743002: Drop non-user policy in ConfigDirPolicyLoader on Chrome OS. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase. Created 4 years, 5 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_map.h" 5 #include "components/policy/core/common/policy_map.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/bind.h"
9 #include "base/callback.h" 10 #include "base/callback.h"
10 #include "base/memory/ptr_util.h" 11 #include "base/memory/ptr_util.h"
11 #include "base/memory/weak_ptr.h" 12 #include "base/memory/weak_ptr.h"
12 #include "components/policy/core/common/external_data_manager.h" 13 #include "components/policy/core/common/external_data_manager.h"
13 #include "components/policy/core/common/policy_types.h" 14 #include "components/policy/core/common/policy_types.h"
14 #include "testing/gtest/include/gtest/gtest.h" 15 #include "testing/gtest/include/gtest/gtest.h"
15 16
16 namespace policy { 17 namespace policy {
17 18
18 namespace { 19 namespace {
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
62 base::WrapUnique(new base::StringValue("aaa"))); 63 base::WrapUnique(new base::StringValue("aaa")));
63 base::StringValue expected("aaa"); 64 base::StringValue expected("aaa");
64 EXPECT_TRUE(expected.Equals(map.GetValue(kTestPolicyName1))); 65 EXPECT_TRUE(expected.Equals(map.GetValue(kTestPolicyName1)));
65 SetPolicy(&map, kTestPolicyName1, 66 SetPolicy(&map, kTestPolicyName1,
66 base::WrapUnique(new base::StringValue("bbb"))); 67 base::WrapUnique(new base::StringValue("bbb")));
67 base::StringValue expected_b("bbb"); 68 base::StringValue expected_b("bbb");
68 EXPECT_TRUE(expected_b.Equals(map.GetValue(kTestPolicyName1))); 69 EXPECT_TRUE(expected_b.Equals(map.GetValue(kTestPolicyName1)));
69 SetPolicy(&map, kTestPolicyName1, CreateExternalDataFetcher("dummy")); 70 SetPolicy(&map, kTestPolicyName1, CreateExternalDataFetcher("dummy"));
70 EXPECT_FALSE(map.GetValue(kTestPolicyName1)); 71 EXPECT_FALSE(map.GetValue(kTestPolicyName1));
71 const PolicyMap::Entry* entry = map.Get(kTestPolicyName1); 72 const PolicyMap::Entry* entry = map.Get(kTestPolicyName1);
72 ASSERT_TRUE(entry != NULL); 73 ASSERT_TRUE(entry != nullptr);
73 EXPECT_EQ(POLICY_LEVEL_MANDATORY, entry->level); 74 EXPECT_EQ(POLICY_LEVEL_MANDATORY, entry->level);
74 EXPECT_EQ(POLICY_SCOPE_USER, entry->scope); 75 EXPECT_EQ(POLICY_SCOPE_USER, entry->scope);
75 EXPECT_EQ(POLICY_SOURCE_CLOUD, entry->source); 76 EXPECT_EQ(POLICY_SOURCE_CLOUD, entry->source);
76 EXPECT_TRUE( 77 EXPECT_TRUE(
77 ExternalDataFetcher::Equals(entry->external_data_fetcher.get(), 78 ExternalDataFetcher::Equals(entry->external_data_fetcher.get(),
78 CreateExternalDataFetcher("dummy").get())); 79 CreateExternalDataFetcher("dummy").get()));
79 map.Set(kTestPolicyName1, POLICY_LEVEL_RECOMMENDED, POLICY_SCOPE_MACHINE, 80 map.Set(kTestPolicyName1, POLICY_LEVEL_RECOMMENDED, POLICY_SCOPE_MACHINE,
80 POLICY_SOURCE_ENTERPRISE_DEFAULT, nullptr, nullptr); 81 POLICY_SOURCE_ENTERPRISE_DEFAULT, nullptr, nullptr);
81 EXPECT_FALSE(map.GetValue(kTestPolicyName1)); 82 EXPECT_FALSE(map.GetValue(kTestPolicyName1));
82 entry = map.Get(kTestPolicyName1); 83 entry = map.Get(kTestPolicyName1);
83 ASSERT_TRUE(entry != NULL); 84 ASSERT_TRUE(entry != nullptr);
84 EXPECT_EQ(POLICY_LEVEL_RECOMMENDED, entry->level); 85 EXPECT_EQ(POLICY_LEVEL_RECOMMENDED, entry->level);
85 EXPECT_EQ(POLICY_SCOPE_MACHINE, entry->scope); 86 EXPECT_EQ(POLICY_SCOPE_MACHINE, entry->scope);
86 EXPECT_EQ(POLICY_SOURCE_ENTERPRISE_DEFAULT, entry->source); 87 EXPECT_EQ(POLICY_SOURCE_ENTERPRISE_DEFAULT, entry->source);
87 EXPECT_FALSE(entry->external_data_fetcher); 88 EXPECT_FALSE(entry->external_data_fetcher);
88 } 89 }
89 90
90 TEST_F(PolicyMapTest, Equals) { 91 TEST_F(PolicyMapTest, Equals) {
91 PolicyMap a; 92 PolicyMap a;
92 SetPolicy(&a, kTestPolicyName1, 93 SetPolicy(&a, kTestPolicyName1,
93 base::WrapUnique(new base::StringValue("aaa"))); 94 base::WrapUnique(new base::StringValue("aaa")));
(...skipping 234 matching lines...) Expand 10 before | Expand all | Expand 10 after
328 base::WrapUnique(new base::StringValue("google.com")), nullptr); 329 base::WrapUnique(new base::StringValue("google.com")), nullptr);
329 expected.Set("TestPolicy2", POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 330 expected.Set("TestPolicy2", POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
330 POLICY_SOURCE_PLATFORM, 331 POLICY_SOURCE_PLATFORM,
331 base::WrapUnique(new base::FundamentalValue(true)), nullptr); 332 base::WrapUnique(new base::FundamentalValue(true)), nullptr);
332 expected.Set("TestPolicy3", POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 333 expected.Set("TestPolicy3", POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
333 POLICY_SOURCE_PLATFORM, 334 POLICY_SOURCE_PLATFORM,
334 base::WrapUnique(new base::FundamentalValue(-12321)), nullptr); 335 base::WrapUnique(new base::FundamentalValue(-12321)), nullptr);
335 EXPECT_TRUE(loaded.Equals(expected)); 336 EXPECT_TRUE(loaded.Equals(expected));
336 } 337 }
337 338
339 bool IsMandatory(const PolicyMap::PolicyMapType::const_iterator iter) {
340 return iter->second.level == POLICY_LEVEL_MANDATORY;
341 }
342
343 TEST_F(PolicyMapTest, EraseNonmatching) {
344 PolicyMap a;
345 a.Set(kTestPolicyName1,
346 POLICY_LEVEL_MANDATORY,
347 POLICY_SCOPE_USER,
348 POLICY_SOURCE_CLOUD,
349 base::WrapUnique(new base::StringValue("google.com")),
350 nullptr);
351 a.Set(kTestPolicyName2,
352 POLICY_LEVEL_RECOMMENDED,
353 POLICY_SCOPE_MACHINE,
354 POLICY_SOURCE_CLOUD,
355 base::WrapUnique(new base::FundamentalValue(true)),
356 nullptr);
357
358 a.EraseNonmatching(base::Bind(&IsMandatory));
359
360 PolicyMap b;
361 b.Set(kTestPolicyName1,
362 POLICY_LEVEL_MANDATORY,
363 POLICY_SCOPE_USER,
364 POLICY_SOURCE_CLOUD,
365 base::WrapUnique(new base::StringValue("google.com")),
366 nullptr);
367 EXPECT_TRUE(a.Equals(b));
368 }
369
338 } // namespace policy 370 } // namespace policy
OLDNEW
« no previous file with comments | « components/policy/core/common/policy_map.cc ('k') | components/policy/core/common/policy_types.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698