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 "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" |
(...skipping 10 matching lines...) Expand all Loading... |
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, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, | 30 policy.Set(key::kJavascriptEnabled, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, |
31 POLICY_SOURCE_CLOUD, | 31 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>(true), nullptr); |
32 base::MakeUnique<base::FundamentalValue>(true), nullptr); | |
33 UpdateProviderPolicy(policy); | 32 UpdateProviderPolicy(policy); |
34 EXPECT_FALSE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, NULL)); | 33 EXPECT_FALSE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, NULL)); |
35 policy.Set(key::kJavascriptEnabled, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, | 34 policy.Set(key::kJavascriptEnabled, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, |
36 POLICY_SOURCE_CLOUD, | 35 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>(false), |
37 base::MakeUnique<base::FundamentalValue>(false), nullptr); | 36 nullptr); |
38 UpdateProviderPolicy(policy); | 37 UpdateProviderPolicy(policy); |
39 const base::Value* value = NULL; | 38 const base::Value* value = NULL; |
40 EXPECT_TRUE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, | 39 EXPECT_TRUE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, |
41 &value)); | 40 &value)); |
42 EXPECT_TRUE(base::FundamentalValue(CONTENT_SETTING_BLOCK).Equals(value)); | 41 EXPECT_TRUE(base::Value(CONTENT_SETTING_BLOCK).Equals(value)); |
43 } | 42 } |
44 | 43 |
45 TEST_F(JavascriptPolicyHandlerTest, JavascriptEnabledOverridden) { | 44 TEST_F(JavascriptPolicyHandlerTest, JavascriptEnabledOverridden) { |
46 EXPECT_FALSE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, NULL)); | 45 EXPECT_FALSE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, NULL)); |
47 PolicyMap policy; | 46 PolicyMap policy; |
48 policy.Set(key::kJavascriptEnabled, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, | 47 policy.Set(key::kJavascriptEnabled, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, |
49 POLICY_SOURCE_CLOUD, | 48 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>(false), |
50 base::MakeUnique<base::FundamentalValue>(false), nullptr); | 49 nullptr); |
51 UpdateProviderPolicy(policy); | 50 UpdateProviderPolicy(policy); |
52 const base::Value* value = NULL; | 51 const base::Value* value = NULL; |
53 EXPECT_TRUE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, | 52 EXPECT_TRUE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, |
54 &value)); | 53 &value)); |
55 EXPECT_TRUE(base::FundamentalValue(CONTENT_SETTING_BLOCK).Equals(value)); | 54 EXPECT_TRUE(base::Value(CONTENT_SETTING_BLOCK).Equals(value)); |
56 // DefaultJavaScriptSetting overrides JavascriptEnabled. | 55 // DefaultJavaScriptSetting overrides JavascriptEnabled. |
57 policy.Set(key::kDefaultJavaScriptSetting, POLICY_LEVEL_MANDATORY, | 56 policy.Set(key::kDefaultJavaScriptSetting, POLICY_LEVEL_MANDATORY, |
58 POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, | 57 POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, |
59 base::MakeUnique<base::FundamentalValue>(CONTENT_SETTING_ALLOW), | 58 base::MakeUnique<base::Value>(CONTENT_SETTING_ALLOW), nullptr); |
60 nullptr); | |
61 UpdateProviderPolicy(policy); | 59 UpdateProviderPolicy(policy); |
62 EXPECT_TRUE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, | 60 EXPECT_TRUE(store_->GetValue(prefs::kManagedDefaultJavaScriptSetting, |
63 &value)); | 61 &value)); |
64 EXPECT_TRUE(base::FundamentalValue(CONTENT_SETTING_ALLOW).Equals(value)); | 62 EXPECT_TRUE(base::Value(CONTENT_SETTING_ALLOW).Equals(value)); |
65 } | 63 } |
66 | 64 |
67 } // namespace policy | 65 } // namespace policy |
OLD | NEW |