OLD | NEW |
| (Empty) |
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 | |
3 // found in the LICENSE file. | |
4 | |
5 #include "base/prefs/pref_value_map.h" | |
6 #include "base/values.h" | |
7 #include "chrome/browser/policy/autofill_policy_handler.h" | |
8 #include "components/autofill/core/common/autofill_pref_names.h" | |
9 #include "components/policy/core/common/policy_map.h" | |
10 #include "policy/policy_constants.h" | |
11 #include "testing/gtest/include/gtest/gtest.h" | |
12 | |
13 namespace policy { | |
14 | |
15 // Test cases for the Autofill policy setting. | |
16 class AutofillPolicyHandlerTest : public testing::Test {}; | |
17 | |
18 TEST_F(AutofillPolicyHandlerTest, Default) { | |
19 PolicyMap policy; | |
20 PrefValueMap prefs; | |
21 AutofillPolicyHandler handler; | |
22 handler.ApplyPolicySettings(policy, &prefs); | |
23 EXPECT_FALSE(prefs.GetValue(autofill::prefs::kAutofillEnabled, NULL)); | |
24 } | |
25 | |
26 TEST_F(AutofillPolicyHandlerTest, Enabled) { | |
27 PolicyMap policy; | |
28 policy.Set(key::kAutoFillEnabled, | |
29 POLICY_LEVEL_MANDATORY, | |
30 POLICY_SCOPE_USER, | |
31 base::Value::CreateBooleanValue(true), | |
32 NULL); | |
33 PrefValueMap prefs; | |
34 AutofillPolicyHandler handler; | |
35 handler.ApplyPolicySettings(policy, &prefs); | |
36 | |
37 // Enabling Autofill should not set the pref. | |
38 EXPECT_FALSE(prefs.GetValue(autofill::prefs::kAutofillEnabled, NULL)); | |
39 } | |
40 | |
41 TEST_F(AutofillPolicyHandlerTest, Disabled) { | |
42 PolicyMap policy; | |
43 policy.Set(key::kAutoFillEnabled, | |
44 POLICY_LEVEL_MANDATORY, | |
45 POLICY_SCOPE_USER, | |
46 base::Value::CreateBooleanValue(false), | |
47 NULL); | |
48 PrefValueMap prefs; | |
49 AutofillPolicyHandler handler; | |
50 handler.ApplyPolicySettings(policy, &prefs); | |
51 | |
52 // Disabling Autofill should switch the pref to managed. | |
53 const base::Value* value = NULL; | |
54 EXPECT_TRUE(prefs.GetValue(autofill::prefs::kAutofillEnabled, &value)); | |
55 ASSERT_TRUE(value); | |
56 bool autofill_enabled = true; | |
57 bool result = value->GetAsBoolean(&autofill_enabled); | |
58 ASSERT_TRUE(result); | |
59 EXPECT_FALSE(autofill_enabled); | |
60 } | |
61 | |
62 } // namespace policy | |
OLD | NEW |