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

Side by Side Diff: chrome/browser/chromeos/policy/device_local_account_policy_service_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 (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 "chrome/browser/chromeos/policy/device_local_account_policy_service.h" 5 #include "chrome/browser/chromeos/policy/device_local_account_policy_service.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/bind_helpers.h" 10 #include "base/bind_helpers.h"
11 #include "base/callback.h" 11 #include "base/callback.h"
12 #include "base/files/file_path.h" 12 #include "base/files/file_path.h"
13 #include "base/files/file_util.h" 13 #include "base/files/file_util.h"
14 #include "base/files/scoped_temp_dir.h" 14 #include "base/files/scoped_temp_dir.h"
15 #include "base/macros.h" 15 #include "base/macros.h"
16 #include "base/memory/ptr_util.h"
16 #include "base/path_service.h" 17 #include "base/path_service.h"
17 #include "base/run_loop.h" 18 #include "base/run_loop.h"
18 #include "base/strings/string_number_conversions.h" 19 #include "base/strings/string_number_conversions.h"
19 #include "base/strings/stringprintf.h" 20 #include "base/strings/stringprintf.h"
20 #include "base/test/scoped_path_override.h" 21 #include "base/test/scoped_path_override.h"
21 #include "base/test/test_simple_task_runner.h" 22 #include "base/test/test_simple_task_runner.h"
22 #include "base/thread_task_runner_handle.h" 23 #include "base/thread_task_runner_handle.h"
23 #include "chrome/browser/chromeos/policy/device_local_account.h" 24 #include "chrome/browser/chromeos/policy/device_local_account.h"
24 #include "chrome/browser/chromeos/policy/device_local_account_policy_provider.h" 25 #include "chrome/browser/chromeos/policy/device_local_account_policy_provider.h"
25 #include "chrome/browser/chromeos/policy/fake_affiliated_invalidation_service_pr ovider.h" 26 #include "chrome/browser/chromeos/policy/fake_affiliated_invalidation_service_pr ovider.h"
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
135 account_2_user_id_(GenerateDeviceLocalAccountUserId( 136 account_2_user_id_(GenerateDeviceLocalAccountUserId(
136 kAccount2, 137 kAccount2,
137 DeviceLocalAccount::TYPE_PUBLIC_SESSION)), 138 DeviceLocalAccount::TYPE_PUBLIC_SESSION)),
138 cros_settings_(&device_settings_service_), 139 cros_settings_(&device_settings_service_),
139 extension_cache_task_runner_(new base::TestSimpleTaskRunner) { 140 extension_cache_task_runner_(new base::TestSimpleTaskRunner) {
140 } 141 }
141 142
142 void DeviceLocalAccountPolicyServiceTestBase::SetUp() { 143 void DeviceLocalAccountPolicyServiceTestBase::SetUp() {
143 chromeos::DeviceSettingsTestBase::SetUp(); 144 chromeos::DeviceSettingsTestBase::SetUp();
144 145
145 expected_policy_map_.Set(key::kDisableSpdy, 146 expected_policy_map_.Set(key::kDisableSpdy, POLICY_LEVEL_MANDATORY,
146 POLICY_LEVEL_MANDATORY, 147 POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD,
147 POLICY_SCOPE_USER, 148 base::WrapUnique(new base::FundamentalValue(true)),
148 POLICY_SOURCE_CLOUD, 149 nullptr);
149 new base::FundamentalValue(true),
150 NULL);
151 150
152 device_local_account_policy_.payload().mutable_disablespdy()->set_value( 151 device_local_account_policy_.payload().mutable_disablespdy()->set_value(
153 true); 152 true);
154 device_local_account_policy_.policy_data().set_policy_type( 153 device_local_account_policy_.policy_data().set_policy_type(
155 dm_protocol::kChromePublicAccountPolicyType); 154 dm_protocol::kChromePublicAccountPolicyType);
156 } 155 }
157 156
158 void DeviceLocalAccountPolicyServiceTestBase::TearDown() { 157 void DeviceLocalAccountPolicyServiceTestBase::TearDown() {
159 service_->Shutdown(); 158 service_->Shutdown();
160 service_.reset(); 159 service_.reset();
(...skipping 638 matching lines...) Expand 10 before | Expand all | Expand 10 after
799 DeviceLocalAccount::TYPE_PUBLIC_SESSION), 798 DeviceLocalAccount::TYPE_PUBLIC_SESSION),
800 service_.get()); 799 service_.get());
801 } 800 }
802 801
803 void DeviceLocalAccountPolicyProviderTest::SetUp() { 802 void DeviceLocalAccountPolicyProviderTest::SetUp() {
804 DeviceLocalAccountPolicyServiceTestBase::SetUp(); 803 DeviceLocalAccountPolicyServiceTestBase::SetUp();
805 provider_->Init(&schema_registry_); 804 provider_->Init(&schema_registry_);
806 provider_->AddObserver(&provider_observer_); 805 provider_->AddObserver(&provider_observer_);
807 806
808 // Values implicitly enforced for public accounts. 807 // Values implicitly enforced for public accounts.
809 expected_policy_map_.Set(key::kLidCloseAction, 808 expected_policy_map_.Set(
810 POLICY_LEVEL_MANDATORY, 809 key::kLidCloseAction, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_MACHINE,
811 POLICY_SCOPE_MACHINE, 810 POLICY_SOURCE_PUBLIC_SESSION_OVERRIDE,
812 POLICY_SOURCE_PUBLIC_SESSION_OVERRIDE, 811 base::WrapUnique(new base::FundamentalValue(
813 new base::FundamentalValue( 812 chromeos::PowerPolicyController::ACTION_STOP_SESSION)),
814 chromeos::PowerPolicyController:: 813 nullptr);
815 ACTION_STOP_SESSION), 814 expected_policy_map_.Set(
816 NULL); 815 key::kShelfAutoHideBehavior, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_MACHINE,
817 expected_policy_map_.Set(key::kShelfAutoHideBehavior, 816 POLICY_SOURCE_PUBLIC_SESSION_OVERRIDE,
818 POLICY_LEVEL_MANDATORY, 817 base::WrapUnique(new base::StringValue("Never")), nullptr);
819 POLICY_SCOPE_MACHINE, 818 expected_policy_map_.Set(
820 POLICY_SOURCE_PUBLIC_SESSION_OVERRIDE, 819 key::kShowLogoutButtonInTray, POLICY_LEVEL_MANDATORY,
821 new base::StringValue("Never"), 820 POLICY_SCOPE_MACHINE, POLICY_SOURCE_PUBLIC_SESSION_OVERRIDE,
822 NULL); 821 base::WrapUnique(new base::FundamentalValue(true)), nullptr);
823 expected_policy_map_.Set(key::kShowLogoutButtonInTray, 822 expected_policy_map_.Set(
824 POLICY_LEVEL_MANDATORY, 823 key::kFullscreenAllowed, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_MACHINE,
825 POLICY_SCOPE_MACHINE, 824 POLICY_SOURCE_PUBLIC_SESSION_OVERRIDE,
826 POLICY_SOURCE_PUBLIC_SESSION_OVERRIDE, 825 base::WrapUnique(new base::FundamentalValue(false)), nullptr);
827 new base::FundamentalValue(true),
828 NULL);
829 expected_policy_map_.Set(key::kFullscreenAllowed,
830 POLICY_LEVEL_MANDATORY,
831 POLICY_SCOPE_MACHINE,
832 POLICY_SOURCE_PUBLIC_SESSION_OVERRIDE,
833 new base::FundamentalValue(false),
834 NULL);
835 } 826 }
836 827
837 void DeviceLocalAccountPolicyProviderTest::TearDown() { 828 void DeviceLocalAccountPolicyProviderTest::TearDown() {
838 provider_->RemoveObserver(&provider_observer_); 829 provider_->RemoveObserver(&provider_observer_);
839 provider_->Shutdown(); 830 provider_->Shutdown();
840 provider_.reset(); 831 provider_.reset();
841 DeviceLocalAccountPolicyServiceTestBase::TearDown(); 832 DeviceLocalAccountPolicyServiceTestBase::TearDown();
842 } 833 }
843 834
844 TEST_F(DeviceLocalAccountPolicyProviderTest, Initialization) { 835 TEST_F(DeviceLocalAccountPolicyProviderTest, Initialization) {
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
884 device_local_account_policy_.payload().mutable_disablespdy()->set_value( 875 device_local_account_policy_.payload().mutable_disablespdy()->set_value(
885 false); 876 false);
886 InstallDeviceLocalAccountPolicy(kAccount1); 877 InstallDeviceLocalAccountPolicy(kAccount1);
887 DeviceLocalAccountPolicyBroker* broker = 878 DeviceLocalAccountPolicyBroker* broker =
888 service_->GetBrokerForUser(account_1_user_id_); 879 service_->GetBrokerForUser(account_1_user_id_);
889 ASSERT_TRUE(broker); 880 ASSERT_TRUE(broker);
890 broker->core()->store()->Load(); 881 broker->core()->store()->Load();
891 FlushDeviceSettings(); 882 FlushDeviceSettings();
892 Mock::VerifyAndClearExpectations(&provider_observer_); 883 Mock::VerifyAndClearExpectations(&provider_observer_);
893 884
894 expected_policy_bundle.Get( 885 expected_policy_bundle
895 PolicyNamespace(POLICY_DOMAIN_CHROME, std::string())) 886 .Get(PolicyNamespace(POLICY_DOMAIN_CHROME, std::string()))
896 .Set(key::kDisableSpdy, 887 .Set(key::kDisableSpdy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
897 POLICY_LEVEL_MANDATORY,
898 POLICY_SCOPE_USER,
899 POLICY_SOURCE_CLOUD, 888 POLICY_SOURCE_CLOUD,
900 new base::FundamentalValue(false), 889 base::WrapUnique(new base::FundamentalValue(false)), nullptr);
901 NULL);
902 EXPECT_TRUE(expected_policy_bundle.Equals(provider_->policies())); 890 EXPECT_TRUE(expected_policy_bundle.Equals(provider_->policies()));
903 891
904 // Any values set for the |ShelfAutoHideBehavior|, |ShowLogoutButtonInTray| 892 // Any values set for the |ShelfAutoHideBehavior|, |ShowLogoutButtonInTray|
905 // and |ExtensionAllowedTypes| policies should be overridden. 893 // and |ExtensionAllowedTypes| policies should be overridden.
906 EXPECT_CALL(provider_observer_, OnUpdatePolicy(provider_.get())) 894 EXPECT_CALL(provider_observer_, OnUpdatePolicy(provider_.get()))
907 .Times(AtLeast(1)); 895 .Times(AtLeast(1));
908 device_local_account_policy_.payload().mutable_shelfautohidebehavior()-> 896 device_local_account_policy_.payload().mutable_shelfautohidebehavior()->
909 set_value("Always"); 897 set_value("Always");
910 device_local_account_policy_.payload().mutable_showlogoutbuttonintray()-> 898 device_local_account_policy_.payload().mutable_showlogoutbuttonintray()->
911 set_value(false); 899 set_value(false);
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
980 em::DeviceManagementResponse response; 968 em::DeviceManagementResponse response;
981 device_local_account_policy_.Build(); 969 device_local_account_policy_.Build();
982 response.mutable_policy_response()->add_response()->CopyFrom( 970 response.mutable_policy_response()->add_response()->CopyFrom(
983 device_local_account_policy_.policy()); 971 device_local_account_policy_.policy());
984 request_job->SendResponse(DM_STATUS_SUCCESS, response); 972 request_job->SendResponse(DM_STATUS_SUCCESS, response);
985 FlushDeviceSettings(); 973 FlushDeviceSettings();
986 Mock::VerifyAndClearExpectations(&provider_observer_); 974 Mock::VerifyAndClearExpectations(&provider_observer_);
987 } 975 }
988 976
989 } // namespace policy 977 } // namespace policy
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698