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

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

Issue 7147015: Move user cloud policy to BrowserProcess (was 6979011) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: cut a circular startup dependency Created 9 years, 6 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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/cloud_policy_controller.h" 5 #include "chrome/browser/policy/cloud_policy_controller.h"
6 6
7 #include "base/message_loop.h" 7 #include "base/message_loop.h"
8 #include "base/scoped_temp_dir.h" 8 #include "base/scoped_temp_dir.h"
9 #include "chrome/browser/policy/cloud_policy_provider_impl.h"
10 #include "chrome/browser/policy/configuration_policy_pref_store.h"
9 #include "chrome/browser/policy/device_management_service.h" 11 #include "chrome/browser/policy/device_management_service.h"
10 #include "chrome/browser/policy/device_token_fetcher.h" 12 #include "chrome/browser/policy/device_token_fetcher.h"
11 #include "chrome/browser/policy/logging_work_scheduler.h" 13 #include "chrome/browser/policy/logging_work_scheduler.h"
12 #include "chrome/browser/policy/mock_configuration_policy_store.h" 14 #include "chrome/browser/policy/mock_configuration_policy_store.h"
13 #include "chrome/browser/policy/mock_device_management_backend.h" 15 #include "chrome/browser/policy/mock_device_management_backend.h"
14 #include "chrome/browser/policy/mock_device_management_service.h" 16 #include "chrome/browser/policy/mock_device_management_service.h"
15 #include "chrome/browser/policy/policy_notifier.h" 17 #include "chrome/browser/policy/policy_notifier.h"
16 #include "chrome/browser/policy/proto/device_management_backend.pb.h" 18 #include "chrome/browser/policy/proto/device_management_backend.pb.h"
17 #include "chrome/browser/policy/user_policy_cache.h" 19 #include "chrome/browser/policy/user_policy_cache.h"
18 #include "content/browser/browser_thread.h" 20 #include "content/browser/browser_thread.h"
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
79 CloudPolicyControllerTest() 81 CloudPolicyControllerTest()
80 : ui_thread_(BrowserThread::UI, &loop_), 82 : ui_thread_(BrowserThread::UI, &loop_),
81 file_thread_(BrowserThread::FILE, &loop_) {} 83 file_thread_(BrowserThread::FILE, &loop_) {}
82 84
83 virtual ~CloudPolicyControllerTest() {} 85 virtual ~CloudPolicyControllerTest() {}
84 86
85 virtual void SetUp() { 87 virtual void SetUp() {
86 ASSERT_TRUE(temp_user_data_dir_.CreateUniqueTempDir()); 88 ASSERT_TRUE(temp_user_data_dir_.CreateUniqueTempDir());
87 cache_.reset(new UserPolicyCache( 89 cache_.reset(new UserPolicyCache(
88 temp_user_data_dir_.path().AppendASCII("CloudPolicyControllerTest"))); 90 temp_user_data_dir_.path().AppendASCII("CloudPolicyControllerTest")));
91 mandatory_cloud_provider_.reset(new CloudPolicyProviderImpl(
92 policy::ConfigurationPolicyPrefStore::GetChromePolicyDefinitionList(),
93 CloudPolicyCacheBase::POLICY_LEVEL_MANDATORY));
94 recommended_cloud_provider_.reset(new CloudPolicyProviderImpl(
95 policy::ConfigurationPolicyPrefStore::GetChromePolicyDefinitionList(),
96 CloudPolicyCacheBase::POLICY_LEVEL_RECOMMENDED));
97 mandatory_cloud_provider_->AppendCache(cache_.get());
98 recommended_cloud_provider_->AppendCache(cache_.get());
Mattias Nissler (ping if slow) 2011/06/21 20:09:56 As mentioned earlier, I think we should just remov
gfeher 2011/06/22 19:18:34 Done.
89 token_fetcher_.reset(new MockDeviceTokenFetcher(cache_.get())); 99 token_fetcher_.reset(new MockDeviceTokenFetcher(cache_.get()));
90 service_.set_backend(&backend_); 100 service_.set_backend(&backend_);
91 } 101 }
92 102
93 virtual void TearDown() { 103 virtual void TearDown() {
94 controller_.reset(); // Unregisters observers. 104 controller_.reset(); // Unregisters observers.
95 } 105 }
96 106
97 // Takes ownership of |backend|. 107 // Takes ownership of |backend|.
98 void CreateNewController() { 108 void CreateNewController() {
99 controller_.reset(new CloudPolicyController( 109 controller_.reset(new CloudPolicyController(
100 &service_, cache_.get(), token_fetcher_.get(), &identity_strategy_, 110 &service_, cache_.get(), token_fetcher_.get(), &identity_strategy_,
101 &notifier_, new DummyWorkScheduler)); 111 &notifier_, new DummyWorkScheduler));
102 } 112 }
103 113
104 void ExpectHasSpdyPolicy() { 114 void ExpectHasSpdyPolicy() {
105 MockConfigurationPolicyStore store; 115 MockConfigurationPolicyStore store;
106 EXPECT_CALL(store, Apply(_, _)).Times(AtLeast(1)); 116 EXPECT_CALL(store, Apply(_, _)).Times(AtLeast(1));
107 cache_->GetManagedPolicyProvider()->Provide(&store); 117 mandatory_cloud_provider_.get()->Provide(&store);
108 FundamentalValue expected(true); 118 FundamentalValue expected(true);
109 ASSERT_TRUE(store.Get(kPolicyDisableSpdy) != NULL); 119 const PolicyMap* policy_map = cache_->policy(
110 EXPECT_TRUE(store.Get(kPolicyDisableSpdy)->Equals(&expected)); 120 CloudPolicyCacheBase::POLICY_LEVEL_MANDATORY);
121 ASSERT_TRUE(policy_map->Get(kPolicyDisableSpdy));
122 EXPECT_TRUE(policy_map->Get(kPolicyDisableSpdy)->Equals(&expected));
111 } 123 }
112 124
113 void SetupIdentityStrategy( 125 void SetupIdentityStrategy(
114 const std::string& device_token, 126 const std::string& device_token,
115 const std::string& device_id, 127 const std::string& device_id,
116 const std::string& machine_id, 128 const std::string& machine_id,
117 const std::string& machine_model, 129 const std::string& machine_model,
118 const std::string& policy_type, 130 const std::string& policy_type,
119 const em::DeviceRegisterRequest_Type& policy_register_type, 131 const em::DeviceRegisterRequest_Type& policy_register_type,
120 const std::string& user_name, 132 const std::string& user_name,
(...skipping 15 matching lines...) Expand all
136 MockCloudPolicyIdentityStrategyGetCredentials(user_name, auth_token)); 148 MockCloudPolicyIdentityStrategyGetCredentials(user_name, auth_token));
137 } 149 }
138 } 150 }
139 151
140 void StopMessageLoop() { 152 void StopMessageLoop() {
141 loop_.QuitNow(); 153 loop_.QuitNow();
142 } 154 }
143 155
144 protected: 156 protected:
145 scoped_ptr<CloudPolicyCacheBase> cache_; 157 scoped_ptr<CloudPolicyCacheBase> cache_;
158 scoped_ptr<CloudPolicyProvider> recommended_cloud_provider_;
159 scoped_ptr<CloudPolicyProvider> mandatory_cloud_provider_;
146 scoped_ptr<CloudPolicyController> controller_; 160 scoped_ptr<CloudPolicyController> controller_;
147 scoped_ptr<MockDeviceTokenFetcher> token_fetcher_; 161 scoped_ptr<MockDeviceTokenFetcher> token_fetcher_;
148 MockCloudPolicyIdentityStrategy identity_strategy_; 162 MockCloudPolicyIdentityStrategy identity_strategy_;
149 MockDeviceManagementBackend backend_; 163 MockDeviceManagementBackend backend_;
150 MockDeviceManagementService service_; 164 MockDeviceManagementService service_;
151 PolicyNotifier notifier_; 165 PolicyNotifier notifier_;
152 ScopedTempDir temp_user_data_dir_; 166 ScopedTempDir temp_user_data_dir_;
153 MessageLoop loop_; 167 MessageLoop loop_;
154 168
155 private: 169 private:
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
277 "who@what.com", "auth"); 291 "who@what.com", "auth");
278 EXPECT_CALL(backend_, ProcessPolicyRequest(_, _, _, _)).WillOnce( 292 EXPECT_CALL(backend_, ProcessPolicyRequest(_, _, _, _)).WillOnce(
279 MockDeviceManagementBackendFailPolicy( 293 MockDeviceManagementBackendFailPolicy(
280 DeviceManagementBackend::kErrorServiceManagementNotSupported)); 294 DeviceManagementBackend::kErrorServiceManagementNotSupported));
281 EXPECT_CALL(*token_fetcher_.get(), SetUnmanagedState()).Times(1); 295 EXPECT_CALL(*token_fetcher_.get(), SetUnmanagedState()).Times(1);
282 CreateNewController(); 296 CreateNewController();
283 loop_.RunAllPending(); 297 loop_.RunAllPending();
284 } 298 }
285 299
286 } // namespace policy 300 } // namespace policy
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698