OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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_loader_win.h" | 5 #include "components/policy/core/common/policy_loader_win.h" |
6 | 6 |
7 #include <windows.h> | 7 #include <windows.h> |
8 #include <userenv.h> | 8 #include <userenv.h> |
9 | 9 |
10 #include <algorithm> | 10 #include <algorithm> |
(...skipping 787 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
798 RegKey hkcu_key(HKEY_CURRENT_USER, kTestPolicyKey, KEY_ALL_ACCESS); | 798 RegKey hkcu_key(HKEY_CURRENT_USER, kTestPolicyKey, KEY_ALL_ACCESS); |
799 ASSERT_TRUE(hkcu_key.Valid()); | 799 ASSERT_TRUE(hkcu_key.Valid()); |
800 hkcu_key.WriteValue(UTF8ToUTF16(test_keys::kKeyString).c_str(), | 800 hkcu_key.WriteValue(UTF8ToUTF16(test_keys::kKeyString).c_str(), |
801 UTF8ToUTF16("hkcu").c_str()); | 801 UTF8ToUTF16("hkcu").c_str()); |
802 | 802 |
803 PolicyBundle expected; | 803 PolicyBundle expected; |
804 expected.Get(PolicyNamespace(POLICY_DOMAIN_CHROME, std::string())) | 804 expected.Get(PolicyNamespace(POLICY_DOMAIN_CHROME, std::string())) |
805 .Set(test_keys::kKeyString, | 805 .Set(test_keys::kKeyString, |
806 POLICY_LEVEL_MANDATORY, | 806 POLICY_LEVEL_MANDATORY, |
807 POLICY_SCOPE_MACHINE, | 807 POLICY_SCOPE_MACHINE, |
808 base::Value::CreateStringValue("hklm"), NULL); | 808 new base::StringValue("hklm"), |
| 809 NULL); |
809 EXPECT_TRUE(Matches(expected)); | 810 EXPECT_TRUE(Matches(expected)); |
810 } | 811 } |
811 | 812 |
812 TEST_F(PolicyLoaderWinTest, Merge3rdPartyPolicies) { | 813 TEST_F(PolicyLoaderWinTest, Merge3rdPartyPolicies) { |
813 // Policy for the same extension will be provided at the 4 level/scope | 814 // Policy for the same extension will be provided at the 4 level/scope |
814 // combinations, to verify that they overlap as expected. | 815 // combinations, to verify that they overlap as expected. |
815 const PolicyNamespace ns(POLICY_DOMAIN_EXTENSIONS, "merge"); | 816 const PolicyNamespace ns(POLICY_DOMAIN_EXTENSIONS, "merge"); |
816 ASSERT_TRUE(RegisterSchema( | 817 ASSERT_TRUE(RegisterSchema( |
817 ns, | 818 ns, |
818 "{" | 819 "{" |
(...skipping 29 matching lines...) Expand all Loading... |
848 kPathSuffix, kRecommended)); | 849 kPathSuffix, kRecommended)); |
849 policy.SetString("a", kUserRecommended); | 850 policy.SetString("a", kUserRecommended); |
850 policy.SetString("b", kUserRecommended); | 851 policy.SetString("b", kUserRecommended); |
851 policy.SetString("c", kUserRecommended); | 852 policy.SetString("c", kUserRecommended); |
852 policy.SetString("d", kUserRecommended); | 853 policy.SetString("d", kUserRecommended); |
853 EXPECT_TRUE(InstallValue(policy, HKEY_CURRENT_USER, | 854 EXPECT_TRUE(InstallValue(policy, HKEY_CURRENT_USER, |
854 kPathSuffix, kRecommended)); | 855 kPathSuffix, kRecommended)); |
855 | 856 |
856 PolicyBundle expected; | 857 PolicyBundle expected; |
857 PolicyMap& expected_policy = expected.Get(ns); | 858 PolicyMap& expected_policy = expected.Get(ns); |
858 expected_policy.Set("a", POLICY_LEVEL_MANDATORY, POLICY_SCOPE_MACHINE, | 859 expected_policy.Set("a", |
859 base::Value::CreateStringValue(kMachineMandatory), NULL); | 860 POLICY_LEVEL_MANDATORY, |
860 expected_policy.Set("b", POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, | 861 POLICY_SCOPE_MACHINE, |
861 base::Value::CreateStringValue(kUserMandatory), NULL); | 862 new base::StringValue(kMachineMandatory), |
862 expected_policy.Set("c", POLICY_LEVEL_RECOMMENDED, POLICY_SCOPE_MACHINE, | |
863 base::Value::CreateStringValue(kMachineRecommended), | |
864 NULL); | 863 NULL); |
865 expected_policy.Set("d", POLICY_LEVEL_RECOMMENDED, POLICY_SCOPE_USER, | 864 expected_policy.Set("b", |
866 base::Value::CreateStringValue(kUserRecommended), NULL); | 865 POLICY_LEVEL_MANDATORY, |
| 866 POLICY_SCOPE_USER, |
| 867 new base::StringValue(kUserMandatory), |
| 868 NULL); |
| 869 expected_policy.Set("c", |
| 870 POLICY_LEVEL_RECOMMENDED, |
| 871 POLICY_SCOPE_MACHINE, |
| 872 new base::StringValue(kMachineRecommended), |
| 873 NULL); |
| 874 expected_policy.Set("d", |
| 875 POLICY_LEVEL_RECOMMENDED, |
| 876 POLICY_SCOPE_USER, |
| 877 new base::StringValue(kUserRecommended), |
| 878 NULL); |
867 EXPECT_TRUE(Matches(expected)); | 879 EXPECT_TRUE(Matches(expected)); |
868 } | 880 } |
869 | 881 |
870 TEST_F(PolicyLoaderWinTest, LoadStringEncodedValues) { | 882 TEST_F(PolicyLoaderWinTest, LoadStringEncodedValues) { |
871 // Create a dictionary with all the types that can be stored encoded in a | 883 // Create a dictionary with all the types that can be stored encoded in a |
872 // string. | 884 // string. |
873 const PolicyNamespace ns(POLICY_DOMAIN_EXTENSIONS, "string"); | 885 const PolicyNamespace ns(POLICY_DOMAIN_EXTENSIONS, "string"); |
874 ASSERT_TRUE(RegisterSchema( | 886 ASSERT_TRUE(RegisterSchema( |
875 ns, | 887 ns, |
876 "{" | 888 "{" |
(...skipping 320 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1197 PolicyMap& expected_policy = expected.Get(ns); | 1209 PolicyMap& expected_policy = expected.Get(ns); |
1198 expected_policy.Set("alternative_browser_path", | 1210 expected_policy.Set("alternative_browser_path", |
1199 POLICY_LEVEL_MANDATORY, POLICY_SCOPE_MACHINE, | 1211 POLICY_LEVEL_MANDATORY, POLICY_SCOPE_MACHINE, |
1200 new base::StringValue("c:\\legacy\\browser.exe"), NULL); | 1212 new base::StringValue("c:\\legacy\\browser.exe"), NULL); |
1201 expected_policy.Set("url_list", POLICY_LEVEL_MANDATORY, POLICY_SCOPE_MACHINE, | 1213 expected_policy.Set("url_list", POLICY_LEVEL_MANDATORY, POLICY_SCOPE_MACHINE, |
1202 list.DeepCopy(), NULL); | 1214 list.DeepCopy(), NULL); |
1203 EXPECT_TRUE(Matches(expected)); | 1215 EXPECT_TRUE(Matches(expected)); |
1204 } | 1216 } |
1205 | 1217 |
1206 } // namespace policy | 1218 } // namespace policy |
OLD | NEW |