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

Side by Side Diff: chrome/browser/policy/javascript_policy_handler_unittest.cc

Issue 1940153002: Use std::unique_ptr to express ownership of base::Value in PolicyMap::Entry (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: another-fix Created 4 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
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 "chrome/browser/policy/javascript_policy_handler.h" 5 #include "chrome/browser/policy/javascript_policy_handler.h"
6 6
7 #include "base/memory/ptr_util.h" 7 #include "base/memory/ptr_util.h"
8 #include "components/content_settings/core/common/content_settings.h" 8 #include "components/content_settings/core/common/content_settings.h"
9 #include "components/content_settings/core/common/pref_names.h" 9 #include "components/content_settings/core/common/pref_names.h"
10 #include "components/policy/core/browser/configuration_policy_pref_store.h" 10 #include "components/policy/core/browser/configuration_policy_pref_store.h"
11 #include "components/policy/core/browser/configuration_policy_pref_store_test.h" 11 #include "components/policy/core/browser/configuration_policy_pref_store_test.h"
12 #include "components/policy/core/browser/policy_error_map.h" 12 #include "components/policy/core/browser/policy_error_map.h"
13 #include "components/policy/core/common/policy_map.h" 13 #include "components/policy/core/common/policy_map.h"
14 #include "components/policy/core/common/policy_types.h" 14 #include "components/policy/core/common/policy_types.h"
15 #include "policy/policy_constants.h" 15 #include "policy/policy_constants.h"
16 16
17 namespace policy { 17 namespace policy {
18 18
19 class JavascriptPolicyHandlerTest : public ConfigurationPolicyPrefStoreTest { 19 class JavascriptPolicyHandlerTest : public ConfigurationPolicyPrefStoreTest {
20 void SetUp() override { 20 void SetUp() override {
21 handler_list_.AddHandler(base::WrapUnique<ConfigurationPolicyHandler>( 21 handler_list_.AddHandler(base::WrapUnique<ConfigurationPolicyHandler>(
22 new JavascriptPolicyHandler)); 22 new JavascriptPolicyHandler));
23 } 23 }
24 }; 24 };
25 25
26 TEST_F(JavascriptPolicyHandlerTest, JavascriptEnabled) { 26 TEST_F(JavascriptPolicyHandlerTest, JavascriptEnabled) {
27 // This is a boolean policy, but affects an integer preference. 27 // This is a boolean policy, but affects an integer preference.
28 EXPECT_FALSE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, NULL)); 28 EXPECT_FALSE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, NULL));
29 PolicyMap policy; 29 PolicyMap policy;
30 policy.Set(key::kJavascriptEnabled, 30 policy.Set(key::kJavascriptEnabled, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
31 POLICY_LEVEL_MANDATORY,
32 POLICY_SCOPE_USER,
33 POLICY_SOURCE_CLOUD, 31 POLICY_SOURCE_CLOUD,
34 new base::FundamentalValue(true), 32 base::WrapUnique(new base::FundamentalValue(true)), nullptr);
35 NULL);
36 UpdateProviderPolicy(policy); 33 UpdateProviderPolicy(policy);
37 EXPECT_FALSE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, NULL)); 34 EXPECT_FALSE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, NULL));
38 policy.Set(key::kJavascriptEnabled, 35 policy.Set(key::kJavascriptEnabled, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
39 POLICY_LEVEL_MANDATORY,
40 POLICY_SCOPE_USER,
41 POLICY_SOURCE_CLOUD, 36 POLICY_SOURCE_CLOUD,
42 new base::FundamentalValue(false), 37 base::WrapUnique(new base::FundamentalValue(false)), nullptr);
43 NULL);
44 UpdateProviderPolicy(policy); 38 UpdateProviderPolicy(policy);
45 const base::Value* value = NULL; 39 const base::Value* value = NULL;
46 EXPECT_TRUE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, 40 EXPECT_TRUE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting,
47 &value)); 41 &value));
48 EXPECT_TRUE(base::FundamentalValue(CONTENT_SETTING_BLOCK).Equals(value)); 42 EXPECT_TRUE(base::FundamentalValue(CONTENT_SETTING_BLOCK).Equals(value));
49 } 43 }
50 44
51 TEST_F(JavascriptPolicyHandlerTest, JavascriptEnabledOverridden) { 45 TEST_F(JavascriptPolicyHandlerTest, JavascriptEnabledOverridden) {
52 EXPECT_FALSE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, NULL)); 46 EXPECT_FALSE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, NULL));
53 PolicyMap policy; 47 PolicyMap policy;
54 policy.Set(key::kJavascriptEnabled, 48 policy.Set(key::kJavascriptEnabled, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
55 POLICY_LEVEL_MANDATORY,
56 POLICY_SCOPE_USER,
57 POLICY_SOURCE_CLOUD, 49 POLICY_SOURCE_CLOUD,
58 new base::FundamentalValue(false), 50 base::WrapUnique(new base::FundamentalValue(false)), nullptr);
59 NULL);
60 UpdateProviderPolicy(policy); 51 UpdateProviderPolicy(policy);
61 const base::Value* value = NULL; 52 const base::Value* value = NULL;
62 EXPECT_TRUE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, 53 EXPECT_TRUE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting,
63 &value)); 54 &value));
64 EXPECT_TRUE(base::FundamentalValue(CONTENT_SETTING_BLOCK).Equals(value)); 55 EXPECT_TRUE(base::FundamentalValue(CONTENT_SETTING_BLOCK).Equals(value));
65 // DefaultJavaScriptSetting overrides JavascriptEnabled. 56 // DefaultJavaScriptSetting overrides JavascriptEnabled.
66 policy.Set(key::kDefaultJavaScriptSetting, 57 policy.Set(
67 POLICY_LEVEL_MANDATORY, 58 key::kDefaultJavaScriptSetting, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
68 POLICY_SCOPE_USER, 59 POLICY_SOURCE_CLOUD,
69 POLICY_SOURCE_CLOUD, 60 base::WrapUnique(new base::FundamentalValue(CONTENT_SETTING_ALLOW)),
70 new base::FundamentalValue(CONTENT_SETTING_ALLOW), 61 nullptr);
71 NULL);
72 UpdateProviderPolicy(policy); 62 UpdateProviderPolicy(policy);
73 EXPECT_TRUE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, 63 EXPECT_TRUE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting,
74 &value)); 64 &value));
75 EXPECT_TRUE(base::FundamentalValue(CONTENT_SETTING_ALLOW).Equals(value)); 65 EXPECT_TRUE(base::FundamentalValue(CONTENT_SETTING_ALLOW).Equals(value));
76 } 66 }
77 67
78 } // namespace policy 68 } // namespace policy
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698