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

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

Issue 337053005: Precache policy-for-extensions for device-local accounts. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fixed ios tests Created 6 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 | Annotate | Revision Log
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/schema_map.h" 5 #include "components/policy/core/common/schema_map.h"
6 6
7 #include "base/memory/weak_ptr.h" 7 #include "base/memory/weak_ptr.h"
8 #include "base/values.h" 8 #include "base/values.h"
9 #include "components/policy/core/common/external_data_fetcher.h" 9 #include "components/policy/core/common/external_data_fetcher.h"
10 #include "components/policy/core/common/external_data_manager.h" 10 #include "components/policy/core/common/external_data_manager.h"
(...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after
233 PolicyBundle bundle; 233 PolicyBundle bundle;
234 234
235 // Known components with schemas are filtered. 235 // Known components with schemas are filtered.
236 PolicyNamespace extension_ns(POLICY_DOMAIN_EXTENSIONS, "with-schema"); 236 PolicyNamespace extension_ns(POLICY_DOMAIN_EXTENSIONS, "with-schema");
237 bundle.Get(extension_ns).Set("String", 237 bundle.Get(extension_ns).Set("String",
238 POLICY_LEVEL_MANDATORY, 238 POLICY_LEVEL_MANDATORY,
239 POLICY_SCOPE_USER, 239 POLICY_SCOPE_USER,
240 base::Value::CreateStringValue("value 1"), 240 base::Value::CreateStringValue("value 1"),
241 NULL); 241 NULL);
242 242
243 // Known components without a schema are not filtered.
244 PolicyNamespace without_schema_ns(POLICY_DOMAIN_EXTENSIONS, "without-schema");
245 bundle.Get(without_schema_ns).Set("Schemaless",
246 POLICY_LEVEL_MANDATORY,
247 POLICY_SCOPE_USER,
248 base::Value::CreateStringValue("value 2"),
249 NULL);
250
251 // The Chrome namespace isn't filtered. 243 // The Chrome namespace isn't filtered.
252 PolicyNamespace chrome_ns(POLICY_DOMAIN_CHROME, ""); 244 PolicyNamespace chrome_ns(POLICY_DOMAIN_CHROME, "");
253 bundle.Get(chrome_ns).Set("ChromePolicy", 245 bundle.Get(chrome_ns).Set("ChromePolicy",
254 POLICY_LEVEL_MANDATORY, 246 POLICY_LEVEL_MANDATORY,
255 POLICY_SCOPE_USER, 247 POLICY_SCOPE_USER,
256 base::Value::CreateStringValue("value 3"), 248 base::Value::CreateStringValue("value 3"),
257 NULL); 249 NULL);
258 250
259 PolicyBundle expected_bundle; 251 PolicyBundle expected_bundle;
260 expected_bundle.MergeFrom(bundle); 252 expected_bundle.MergeFrom(bundle);
261 253
254 // Known components without a schema are filtered out completely.
255 PolicyNamespace without_schema_ns(POLICY_DOMAIN_EXTENSIONS, "without-schema");
256 bundle.Get(without_schema_ns).Set("Schemaless",
257 POLICY_LEVEL_MANDATORY,
258 POLICY_SCOPE_USER,
259 base::Value::CreateStringValue("value 2"),
260 NULL);
261
262 // Unknown policies of known components with a schema are removed. 262 // Unknown policies of known components with a schema are removed.
263 bundle.Get(extension_ns).Set("Surprise", 263 bundle.Get(extension_ns).Set("Surprise",
264 POLICY_LEVEL_MANDATORY, 264 POLICY_LEVEL_MANDATORY,
265 POLICY_SCOPE_USER, 265 POLICY_SCOPE_USER,
266 base::Value::CreateStringValue("value 4"), 266 base::Value::CreateStringValue("value 4"),
267 NULL); 267 NULL);
268 268
269 // Unknown components are removed. 269 // Unknown components are removed.
270 PolicyNamespace unknown_ns(POLICY_DOMAIN_EXTENSIONS, "unknown"); 270 PolicyNamespace unknown_ns(POLICY_DOMAIN_EXTENSIONS, "unknown");
271 bundle.Get(unknown_ns).Set("Surprise", 271 bundle.Get(unknown_ns).Set("Surprise",
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
304 newer = new SchemaMap(map); 304 newer = new SchemaMap(map);
305 newer->GetChanges(older, &removed, &added); 305 newer->GetChanges(older, &removed, &added);
306 ASSERT_EQ(2u, removed.size()); 306 ASSERT_EQ(2u, removed.size());
307 EXPECT_EQ(PolicyNamespace(POLICY_DOMAIN_CHROME, ""), removed[0]); 307 EXPECT_EQ(PolicyNamespace(POLICY_DOMAIN_CHROME, ""), removed[0]);
308 EXPECT_EQ(PolicyNamespace(POLICY_DOMAIN_EXTENSIONS, "xyz"), removed[1]); 308 EXPECT_EQ(PolicyNamespace(POLICY_DOMAIN_EXTENSIONS, "xyz"), removed[1]);
309 ASSERT_EQ(1u, added.size()); 309 ASSERT_EQ(1u, added.size());
310 EXPECT_EQ(PolicyNamespace(POLICY_DOMAIN_EXTENSIONS, "abc"), added[0]); 310 EXPECT_EQ(PolicyNamespace(POLICY_DOMAIN_EXTENSIONS, "abc"), added[0]);
311 } 311 }
312 312
313 } // namespace policy 313 } // namespace policy
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698