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

Side by Side Diff: chromeos/network/managed_network_configuration_handler_unittest.cc

Issue 49773003: ChromeOS: Remove MockDBusThreadManager. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fixed tests. Created 7 years, 1 month 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) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 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 <iostream> 5 #include <iostream>
6 #include <sstream> 6 #include <sstream>
7 7
8 #include "base/memory/scoped_ptr.h" 8 #include "base/memory/scoped_ptr.h"
9 #include "base/message_loop/message_loop.h" 9 #include "base/message_loop/message_loop.h"
10 #include "base/stl_util.h" 10 #include "base/stl_util.h"
11 #include "chromeos/dbus/dbus_thread_manager.h" 11 #include "chromeos/dbus/dbus_thread_manager.h"
12 #include "chromeos/dbus/mock_dbus_thread_manager.h" 12 #include "chromeos/dbus/fake_dbus_thread_manager.h"
13 #include "chromeos/dbus/mock_shill_manager_client.h" 13 #include "chromeos/dbus/mock_shill_manager_client.h"
14 #include "chromeos/dbus/mock_shill_profile_client.h" 14 #include "chromeos/dbus/mock_shill_profile_client.h"
15 #include "chromeos/dbus/mock_shill_service_client.h"
16 #include "chromeos/network/managed_network_configuration_handler_impl.h" 15 #include "chromeos/network/managed_network_configuration_handler_impl.h"
17 #include "chromeos/network/network_configuration_handler.h" 16 #include "chromeos/network/network_configuration_handler.h"
18 #include "chromeos/network/network_profile_handler.h" 17 #include "chromeos/network/network_profile_handler.h"
19 #include "chromeos/network/onc/onc_test_utils.h" 18 #include "chromeos/network/onc/onc_test_utils.h"
20 #include "chromeos/network/onc/onc_utils.h" 19 #include "chromeos/network/onc/onc_utils.h"
21 #include "dbus/object_path.h" 20 #include "dbus/object_path.h"
22 #include "testing/gmock/include/gmock/gmock.h" 21 #include "testing/gmock/include/gmock/gmock.h"
23 #include "testing/gtest/include/gtest/gtest.h" 22 #include "testing/gtest/include/gtest/gtest.h"
24 #include "third_party/cros_system_api/dbus/service_constants.h" 23 #include "third_party/cros_system_api/dbus/service_constants.h"
25 24
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
141 } 140 }
142 141
143 private: 142 private:
144 DISALLOW_COPY_AND_ASSIGN(TestNetworkProfileHandler); 143 DISALLOW_COPY_AND_ASSIGN(TestNetworkProfileHandler);
145 }; 144 };
146 145
147 } // namespace 146 } // namespace
148 147
149 class ManagedNetworkConfigurationHandlerTest : public testing::Test { 148 class ManagedNetworkConfigurationHandlerTest : public testing::Test {
150 public: 149 public:
151 ManagedNetworkConfigurationHandlerTest() { 150 ManagedNetworkConfigurationHandlerTest()
151 : mock_manager_client_(NULL),
152 mock_profile_client_(NULL) {
152 } 153 }
153 154
154 virtual ~ManagedNetworkConfigurationHandlerTest() { 155 virtual ~ManagedNetworkConfigurationHandlerTest() {
155 } 156 }
156 157
157 virtual void SetUp() OVERRIDE { 158 virtual void SetUp() OVERRIDE {
158 MockDBusThreadManager* dbus_thread_manager = new MockDBusThreadManager; 159 FakeDBusThreadManager* dbus_thread_manager = new FakeDBusThreadManager;
159 EXPECT_CALL(*dbus_thread_manager, GetSystemBus()) 160 mock_manager_client_ = new StrictMock<MockShillManagerClient>();
160 .WillRepeatedly(Return(static_cast<dbus::Bus*>(NULL))); 161 mock_profile_client_ = new StrictMock<MockShillProfileClient>();
162 dbus_thread_manager->SetShillManagerClient(
163 scoped_ptr<ShillManagerClient>(mock_manager_client_).Pass());
164 dbus_thread_manager->SetShillProfileClient(
165 scoped_ptr<ShillProfileClient>(mock_profile_client_).Pass());
166
161 DBusThreadManager::InitializeForTesting(dbus_thread_manager); 167 DBusThreadManager::InitializeForTesting(dbus_thread_manager);
162 168
163 SetNetworkConfigurationHandlerExpectations(); 169 SetNetworkConfigurationHandlerExpectations();
164 170
165 EXPECT_CALL(*dbus_thread_manager, GetShillManagerClient()) 171 ON_CALL(*mock_profile_client_, GetProperties(_,_,_))
166 .WillRepeatedly(Return(&mock_manager_client_));
167 EXPECT_CALL(*dbus_thread_manager, GetShillServiceClient())
168 .WillRepeatedly(Return(&mock_service_client_));
169 EXPECT_CALL(*dbus_thread_manager, GetShillProfileClient())
170 .WillRepeatedly(Return(&mock_profile_client_));
171
172 ON_CALL(mock_profile_client_, GetProperties(_,_,_))
173 .WillByDefault(Invoke(&profiles_stub_, 172 .WillByDefault(Invoke(&profiles_stub_,
174 &ShillProfileTestClient::GetProperties)); 173 &ShillProfileTestClient::GetProperties));
175 174
176 ON_CALL(mock_profile_client_, GetEntry(_,_,_,_)) 175 ON_CALL(*mock_profile_client_, GetEntry(_,_,_,_))
177 .WillByDefault(Invoke(&profiles_stub_, 176 .WillByDefault(Invoke(&profiles_stub_,
178 &ShillProfileTestClient::GetEntry)); 177 &ShillProfileTestClient::GetEntry));
179 178
180 network_profile_handler_.reset(new TestNetworkProfileHandler()); 179 network_profile_handler_.reset(new TestNetworkProfileHandler());
181 network_configuration_handler_.reset( 180 network_configuration_handler_.reset(
182 NetworkConfigurationHandler::InitializeForTest( 181 NetworkConfigurationHandler::InitializeForTest(
183 NULL /* no NetworkStateHandler */)); 182 NULL /* no NetworkStateHandler */));
184 managed_network_configuration_handler_.reset( 183 managed_network_configuration_handler_.reset(
185 new ManagedNetworkConfigurationHandlerImpl()); 184 new ManagedNetworkConfigurationHandlerImpl());
186 managed_network_configuration_handler_->Init( 185 managed_network_configuration_handler_->Init(
187 NULL /* no NetworkStateHandler */, 186 NULL /* no NetworkStateHandler */,
188 network_profile_handler_.get(), 187 network_profile_handler_.get(),
189 network_configuration_handler_.get()); 188 network_configuration_handler_.get());
190 189
191 message_loop_.RunUntilIdle(); 190 message_loop_.RunUntilIdle();
192 } 191 }
193 192
194 virtual void TearDown() OVERRIDE { 193 virtual void TearDown() OVERRIDE {
195 managed_network_configuration_handler_.reset(); 194 managed_network_configuration_handler_.reset();
196 network_configuration_handler_.reset(); 195 network_configuration_handler_.reset();
197 network_profile_handler_.reset(); 196 network_profile_handler_.reset();
198 DBusThreadManager::Shutdown(); 197 DBusThreadManager::Shutdown();
199 } 198 }
200 199
201 void VerifyAndClearExpectations() { 200 void VerifyAndClearExpectations() {
202 Mock::VerifyAndClearExpectations(&mock_manager_client_); 201 Mock::VerifyAndClearExpectations(mock_manager_client_);
203 Mock::VerifyAndClearExpectations(&mock_service_client_); 202 Mock::VerifyAndClearExpectations(mock_profile_client_);
204 Mock::VerifyAndClearExpectations(&mock_profile_client_);
205 SetNetworkConfigurationHandlerExpectations(); 203 SetNetworkConfigurationHandlerExpectations();
206 } 204 }
207 205
208 void InitializeStandardProfiles() { 206 void InitializeStandardProfiles() {
209 profiles_stub_.AddProfile(kUser1ProfilePath, kUser1); 207 profiles_stub_.AddProfile(kUser1ProfilePath, kUser1);
210 network_profile_handler_-> 208 network_profile_handler_->
211 AddProfileForTest(NetworkProfile(kUser1ProfilePath, kUser1)); 209 AddProfileForTest(NetworkProfile(kUser1ProfilePath, kUser1));
212 network_profile_handler_-> 210 network_profile_handler_->
213 AddProfileForTest(NetworkProfile(kSharedProfilePath, std::string())); 211 AddProfileForTest(NetworkProfile(kSharedProfilePath, std::string()));
214 } 212 }
(...skipping 25 matching lines...) Expand all
240 policy->GetDictionaryWithoutPathExpansion( 238 policy->GetDictionaryWithoutPathExpansion(
241 ::onc::toplevel_config::kGlobalNetworkConfiguration, 239 ::onc::toplevel_config::kGlobalNetworkConfiguration,
242 &global_network_config); 240 &global_network_config);
243 241
244 managed_handler()->SetPolicy( 242 managed_handler()->SetPolicy(
245 onc_source, userhash, *network_configs, *global_network_config); 243 onc_source, userhash, *network_configs, *global_network_config);
246 } 244 }
247 245
248 void SetNetworkConfigurationHandlerExpectations() { 246 void SetNetworkConfigurationHandlerExpectations() {
249 // These calls occur in NetworkConfigurationHandler. 247 // These calls occur in NetworkConfigurationHandler.
250 EXPECT_CALL(mock_manager_client_, GetProperties(_)).Times(AnyNumber()); 248 EXPECT_CALL(*mock_manager_client_, GetProperties(_)).Times(AnyNumber());
251 EXPECT_CALL(mock_manager_client_, 249 EXPECT_CALL(*mock_manager_client_,
252 AddPropertyChangedObserver(_)).Times(AnyNumber()); 250 AddPropertyChangedObserver(_)).Times(AnyNumber());
253 EXPECT_CALL(mock_manager_client_, 251 EXPECT_CALL(*mock_manager_client_,
254 RemovePropertyChangedObserver(_)).Times(AnyNumber()); 252 RemovePropertyChangedObserver(_)).Times(AnyNumber());
255 } 253 }
256 254
257 ManagedNetworkConfigurationHandler* managed_handler() { 255 ManagedNetworkConfigurationHandler* managed_handler() {
258 return managed_network_configuration_handler_.get(); 256 return managed_network_configuration_handler_.get();
259 } 257 }
260 258
261 protected: 259 protected:
262 StrictMock<MockShillManagerClient> mock_manager_client_; 260 MockShillManagerClient* mock_manager_client_;
263 StrictMock<MockShillServiceClient> mock_service_client_; 261 MockShillProfileClient* mock_profile_client_;
264 StrictMock<MockShillProfileClient> mock_profile_client_;
265 ShillProfileTestClient profiles_stub_; 262 ShillProfileTestClient profiles_stub_;
266 scoped_ptr<TestNetworkProfileHandler> network_profile_handler_; 263 scoped_ptr<TestNetworkProfileHandler> network_profile_handler_;
267 scoped_ptr<NetworkConfigurationHandler> network_configuration_handler_; 264 scoped_ptr<NetworkConfigurationHandler> network_configuration_handler_;
268 scoped_ptr<ManagedNetworkConfigurationHandlerImpl> 265 scoped_ptr<ManagedNetworkConfigurationHandlerImpl>
269 managed_network_configuration_handler_; 266 managed_network_configuration_handler_;
270 base::MessageLoop message_loop_; 267 base::MessageLoop message_loop_;
271 268
272 private: 269 private:
273 DISALLOW_COPY_AND_ASSIGN(ManagedNetworkConfigurationHandlerTest); 270 DISALLOW_COPY_AND_ASSIGN(ManagedNetworkConfigurationHandlerTest);
274 }; 271 };
275 272
276 TEST_F(ManagedNetworkConfigurationHandlerTest, ProfileInitialization) { 273 TEST_F(ManagedNetworkConfigurationHandlerTest, ProfileInitialization) {
277 InitializeStandardProfiles(); 274 InitializeStandardProfiles();
278 message_loop_.RunUntilIdle(); 275 message_loop_.RunUntilIdle();
279 } 276 }
280 277
281 TEST_F(ManagedNetworkConfigurationHandlerTest, RemoveIrrelevantFields) { 278 TEST_F(ManagedNetworkConfigurationHandlerTest, RemoveIrrelevantFields) {
282 InitializeStandardProfiles(); 279 InitializeStandardProfiles();
283 scoped_ptr<base::DictionaryValue> expected_shill_properties = 280 scoped_ptr<base::DictionaryValue> expected_shill_properties =
284 test_utils::ReadTestDictionary( 281 test_utils::ReadTestDictionary(
285 "policy/shill_policy_on_unconfigured_wifi1.json"); 282 "policy/shill_policy_on_unconfigured_wifi1.json");
286 283
287 EXPECT_CALL(mock_profile_client_, 284 EXPECT_CALL(*mock_profile_client_,
288 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _)); 285 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _));
289 286
290 EXPECT_CALL(mock_manager_client_, 287 EXPECT_CALL(*mock_manager_client_,
291 ConfigureServiceForProfile( 288 ConfigureServiceForProfile(
292 dbus::ObjectPath(kUser1ProfilePath), 289 dbus::ObjectPath(kUser1ProfilePath),
293 IsEqualTo(expected_shill_properties.get()), 290 IsEqualTo(expected_shill_properties.get()),
294 _, _)); 291 _, _));
295 292
296 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, 293 SetPolicy(::onc::ONC_SOURCE_USER_POLICY,
297 kUser1, 294 kUser1,
298 "policy/policy_wifi1_with_redundant_fields.onc"); 295 "policy/policy_wifi1_with_redundant_fields.onc");
299 message_loop_.RunUntilIdle(); 296 message_loop_.RunUntilIdle();
300 } 297 }
301 298
302 TEST_F(ManagedNetworkConfigurationHandlerTest, SetPolicyManageUnconfigured) { 299 TEST_F(ManagedNetworkConfigurationHandlerTest, SetPolicyManageUnconfigured) {
303 InitializeStandardProfiles(); 300 InitializeStandardProfiles();
304 scoped_ptr<base::DictionaryValue> expected_shill_properties = 301 scoped_ptr<base::DictionaryValue> expected_shill_properties =
305 test_utils::ReadTestDictionary( 302 test_utils::ReadTestDictionary(
306 "policy/shill_policy_on_unconfigured_wifi1.json"); 303 "policy/shill_policy_on_unconfigured_wifi1.json");
307 304
308 EXPECT_CALL(mock_profile_client_, 305 EXPECT_CALL(*mock_profile_client_,
309 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _)); 306 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _));
310 307
311 EXPECT_CALL(mock_manager_client_, 308 EXPECT_CALL(*mock_manager_client_,
312 ConfigureServiceForProfile( 309 ConfigureServiceForProfile(
313 dbus::ObjectPath(kUser1ProfilePath), 310 dbus::ObjectPath(kUser1ProfilePath),
314 IsEqualTo(expected_shill_properties.get()), 311 IsEqualTo(expected_shill_properties.get()),
315 _, _)); 312 _, _));
316 313
317 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc"); 314 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc");
318 message_loop_.RunUntilIdle(); 315 message_loop_.RunUntilIdle();
319 } 316 }
320 317
321 // Ensure that EAP settings for ethernet are matched with the right profile 318 // Ensure that EAP settings for ethernet are matched with the right profile
322 // entry and written to the dedicated EthernetEAP service. 319 // entry and written to the dedicated EthernetEAP service.
323 TEST_F(ManagedNetworkConfigurationHandlerTest, 320 TEST_F(ManagedNetworkConfigurationHandlerTest,
324 SetPolicyManageUnmanagedEthernetEAP) { 321 SetPolicyManageUnmanagedEthernetEAP) {
325 InitializeStandardProfiles(); 322 InitializeStandardProfiles();
326 scoped_ptr<base::DictionaryValue> expected_shill_properties = 323 scoped_ptr<base::DictionaryValue> expected_shill_properties =
327 test_utils::ReadTestDictionary( 324 test_utils::ReadTestDictionary(
328 "policy/" 325 "policy/"
329 "shill_policy_on_unmanaged_ethernet_eap.json"); 326 "shill_policy_on_unmanaged_ethernet_eap.json");
330 327
331 SetUpEntry("policy/shill_unmanaged_ethernet_eap.json", 328 SetUpEntry("policy/shill_unmanaged_ethernet_eap.json",
332 kUser1ProfilePath, 329 kUser1ProfilePath,
333 "eth_entry"); 330 "eth_entry");
334 331
335 // Also setup an unrelated WiFi configuration to verify that the right entry 332 // Also setup an unrelated WiFi configuration to verify that the right entry
336 // is matched. 333 // is matched.
337 SetUpEntry("policy/shill_unmanaged_wifi1.json", 334 SetUpEntry("policy/shill_unmanaged_wifi1.json",
338 kUser1ProfilePath, 335 kUser1ProfilePath,
339 "wifi_entry"); 336 "wifi_entry");
340 337
341 EXPECT_CALL(mock_profile_client_, 338 EXPECT_CALL(*mock_profile_client_,
342 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _)); 339 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _));
343 340
344 EXPECT_CALL(mock_profile_client_, 341 EXPECT_CALL(*mock_profile_client_,
345 GetEntry(dbus::ObjectPath(kUser1ProfilePath), _, _, _)).Times(2); 342 GetEntry(dbus::ObjectPath(kUser1ProfilePath), _, _, _)).Times(2);
346 343
347 EXPECT_CALL( 344 EXPECT_CALL(
348 mock_profile_client_, 345 *mock_profile_client_,
349 DeleteEntry(dbus::ObjectPath(kUser1ProfilePath), "eth_entry", _, _)); 346 DeleteEntry(dbus::ObjectPath(kUser1ProfilePath), "eth_entry", _, _));
350 347
351 EXPECT_CALL( 348 EXPECT_CALL(
352 mock_manager_client_, 349 *mock_manager_client_,
353 ConfigureServiceForProfile(dbus::ObjectPath(kUser1ProfilePath), 350 ConfigureServiceForProfile(dbus::ObjectPath(kUser1ProfilePath),
354 IsEqualTo(expected_shill_properties.get()), 351 IsEqualTo(expected_shill_properties.get()),
355 _, _)); 352 _, _));
356 353
357 SetPolicy( 354 SetPolicy(
358 ::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_ethernet_eap.onc"); 355 ::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_ethernet_eap.onc");
359 message_loop_.RunUntilIdle(); 356 message_loop_.RunUntilIdle();
360 } 357 }
361 358
362 TEST_F(ManagedNetworkConfigurationHandlerTest, SetPolicyIgnoreUnmodified) { 359 TEST_F(ManagedNetworkConfigurationHandlerTest, SetPolicyIgnoreUnmodified) {
363 InitializeStandardProfiles(); 360 InitializeStandardProfiles();
364 EXPECT_CALL(mock_profile_client_, GetProperties(_, _, _)); 361 EXPECT_CALL(*mock_profile_client_, GetProperties(_, _, _));
365 362
366 EXPECT_CALL(mock_manager_client_, ConfigureServiceForProfile(_, _, _, _)); 363 EXPECT_CALL(*mock_manager_client_, ConfigureServiceForProfile(_, _, _, _));
367 364
368 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc"); 365 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc");
369 message_loop_.RunUntilIdle(); 366 message_loop_.RunUntilIdle();
370 VerifyAndClearExpectations(); 367 VerifyAndClearExpectations();
371 368
372 SetUpEntry("policy/shill_policy_on_unmanaged_wifi1.json", 369 SetUpEntry("policy/shill_policy_on_unmanaged_wifi1.json",
373 kUser1ProfilePath, 370 kUser1ProfilePath,
374 "some_entry_path"); 371 "some_entry_path");
375 372
376 EXPECT_CALL(mock_profile_client_, GetProperties(_, _, _)); 373 EXPECT_CALL(*mock_profile_client_, GetProperties(_, _, _));
377 374
378 EXPECT_CALL( 375 EXPECT_CALL(
379 mock_profile_client_, 376 *mock_profile_client_,
380 GetEntry(dbus::ObjectPath(kUser1ProfilePath), "some_entry_path", _, _)); 377 GetEntry(dbus::ObjectPath(kUser1ProfilePath), "some_entry_path", _, _));
381 378
382 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc"); 379 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc");
383 message_loop_.RunUntilIdle(); 380 message_loop_.RunUntilIdle();
384 } 381 }
385 382
386 TEST_F(ManagedNetworkConfigurationHandlerTest, SetPolicyManageUnmanaged) { 383 TEST_F(ManagedNetworkConfigurationHandlerTest, SetPolicyManageUnmanaged) {
387 InitializeStandardProfiles(); 384 InitializeStandardProfiles();
388 SetUpEntry("policy/shill_unmanaged_wifi1.json", 385 SetUpEntry("policy/shill_unmanaged_wifi1.json",
389 kUser1ProfilePath, 386 kUser1ProfilePath,
390 "old_entry_path"); 387 "old_entry_path");
391 388
392 scoped_ptr<base::DictionaryValue> expected_shill_properties = 389 scoped_ptr<base::DictionaryValue> expected_shill_properties =
393 test_utils::ReadTestDictionary( 390 test_utils::ReadTestDictionary(
394 "policy/shill_policy_on_unmanaged_wifi1.json"); 391 "policy/shill_policy_on_unmanaged_wifi1.json");
395 392
396 EXPECT_CALL(mock_profile_client_, 393 EXPECT_CALL(*mock_profile_client_,
397 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _)); 394 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _));
398 395
399 EXPECT_CALL( 396 EXPECT_CALL(
400 mock_profile_client_, 397 *mock_profile_client_,
401 GetEntry(dbus::ObjectPath(kUser1ProfilePath), "old_entry_path", _, _)); 398 GetEntry(dbus::ObjectPath(kUser1ProfilePath), "old_entry_path", _, _));
402 399
403 EXPECT_CALL( 400 EXPECT_CALL(
404 mock_profile_client_, 401 *mock_profile_client_,
405 DeleteEntry(dbus::ObjectPath(kUser1ProfilePath), "old_entry_path", _, _)); 402 DeleteEntry(dbus::ObjectPath(kUser1ProfilePath), "old_entry_path", _, _));
406 403
407 EXPECT_CALL(mock_manager_client_, 404 EXPECT_CALL(*mock_manager_client_,
408 ConfigureServiceForProfile( 405 ConfigureServiceForProfile(
409 dbus::ObjectPath(kUser1ProfilePath), 406 dbus::ObjectPath(kUser1ProfilePath),
410 IsEqualTo(expected_shill_properties.get()), 407 IsEqualTo(expected_shill_properties.get()),
411 _, _)); 408 _, _));
412 409
413 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc"); 410 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc");
414 message_loop_.RunUntilIdle(); 411 message_loop_.RunUntilIdle();
415 } 412 }
416 413
417 // Old ChromeOS versions may not have used the UIData property 414 // Old ChromeOS versions may not have used the UIData property
418 TEST_F(ManagedNetworkConfigurationHandlerTest, 415 TEST_F(ManagedNetworkConfigurationHandlerTest,
419 SetPolicyManageUnmanagedWithoutUIData) { 416 SetPolicyManageUnmanagedWithoutUIData) {
420 InitializeStandardProfiles(); 417 InitializeStandardProfiles();
421 SetUpEntry("policy/shill_unmanaged_wifi1.json", 418 SetUpEntry("policy/shill_unmanaged_wifi1.json",
422 kUser1ProfilePath, 419 kUser1ProfilePath,
423 "old_entry_path"); 420 "old_entry_path");
424 421
425 scoped_ptr<base::DictionaryValue> expected_shill_properties = 422 scoped_ptr<base::DictionaryValue> expected_shill_properties =
426 test_utils::ReadTestDictionary( 423 test_utils::ReadTestDictionary(
427 "policy/shill_policy_on_unmanaged_wifi1.json"); 424 "policy/shill_policy_on_unmanaged_wifi1.json");
428 425
429 EXPECT_CALL(mock_profile_client_, 426 EXPECT_CALL(*mock_profile_client_,
430 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _)); 427 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _));
431 428
432 EXPECT_CALL( 429 EXPECT_CALL(
433 mock_profile_client_, 430 *mock_profile_client_,
434 GetEntry(dbus::ObjectPath(kUser1ProfilePath), "old_entry_path", _, _)); 431 GetEntry(dbus::ObjectPath(kUser1ProfilePath), "old_entry_path", _, _));
435 432
436 EXPECT_CALL( 433 EXPECT_CALL(
437 mock_profile_client_, 434 *mock_profile_client_,
438 DeleteEntry(dbus::ObjectPath(kUser1ProfilePath), "old_entry_path", _, _)); 435 DeleteEntry(dbus::ObjectPath(kUser1ProfilePath), "old_entry_path", _, _));
439 436
440 EXPECT_CALL(mock_manager_client_, 437 EXPECT_CALL(*mock_manager_client_,
441 ConfigureServiceForProfile( 438 ConfigureServiceForProfile(
442 dbus::ObjectPath(kUser1ProfilePath), 439 dbus::ObjectPath(kUser1ProfilePath),
443 IsEqualTo(expected_shill_properties.get()), 440 IsEqualTo(expected_shill_properties.get()),
444 _, _)); 441 _, _));
445 442
446 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc"); 443 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc");
447 message_loop_.RunUntilIdle(); 444 message_loop_.RunUntilIdle();
448 } 445 }
449 446
450 TEST_F(ManagedNetworkConfigurationHandlerTest, SetPolicyUpdateManagedNewGUID) { 447 TEST_F(ManagedNetworkConfigurationHandlerTest, SetPolicyUpdateManagedNewGUID) {
451 InitializeStandardProfiles(); 448 InitializeStandardProfiles();
452 SetUpEntry("policy/shill_managed_wifi1.json", 449 SetUpEntry("policy/shill_managed_wifi1.json",
453 kUser1ProfilePath, 450 kUser1ProfilePath,
454 "old_entry_path"); 451 "old_entry_path");
455 452
456 scoped_ptr<base::DictionaryValue> expected_shill_properties = 453 scoped_ptr<base::DictionaryValue> expected_shill_properties =
457 test_utils::ReadTestDictionary( 454 test_utils::ReadTestDictionary(
458 "policy/shill_policy_on_unmanaged_wifi1.json"); 455 "policy/shill_policy_on_unmanaged_wifi1.json");
459 456
460 // The passphrase isn't sent again, because it's configured by the user and 457 // The passphrase isn't sent again, because it's configured by the user and
461 // Shill doesn't sent it on GetProperties calls. 458 // Shill doesn't sent it on GetProperties calls.
462 expected_shill_properties->RemoveWithoutPathExpansion( 459 expected_shill_properties->RemoveWithoutPathExpansion(
463 shill::kPassphraseProperty, NULL); 460 shill::kPassphraseProperty, NULL);
464 461
465 EXPECT_CALL(mock_profile_client_, 462 EXPECT_CALL(*mock_profile_client_,
466 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _)); 463 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _));
467 464
468 EXPECT_CALL( 465 EXPECT_CALL(
469 mock_profile_client_, 466 *mock_profile_client_,
470 GetEntry(dbus::ObjectPath(kUser1ProfilePath), "old_entry_path", _, _)); 467 GetEntry(dbus::ObjectPath(kUser1ProfilePath), "old_entry_path", _, _));
471 468
472 EXPECT_CALL( 469 EXPECT_CALL(
473 mock_profile_client_, 470 *mock_profile_client_,
474 DeleteEntry(dbus::ObjectPath(kUser1ProfilePath), "old_entry_path", _, _)); 471 DeleteEntry(dbus::ObjectPath(kUser1ProfilePath), "old_entry_path", _, _));
475 472
476 EXPECT_CALL(mock_manager_client_, 473 EXPECT_CALL(*mock_manager_client_,
477 ConfigureServiceForProfile( 474 ConfigureServiceForProfile(
478 dbus::ObjectPath(kUser1ProfilePath), 475 dbus::ObjectPath(kUser1ProfilePath),
479 IsEqualTo(expected_shill_properties.get()), 476 IsEqualTo(expected_shill_properties.get()),
480 _, _)); 477 _, _));
481 478
482 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc"); 479 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc");
483 message_loop_.RunUntilIdle(); 480 message_loop_.RunUntilIdle();
484 } 481 }
485 482
486 TEST_F(ManagedNetworkConfigurationHandlerTest, SetPolicyReapplyToManaged) { 483 TEST_F(ManagedNetworkConfigurationHandlerTest, SetPolicyReapplyToManaged) {
487 InitializeStandardProfiles(); 484 InitializeStandardProfiles();
488 SetUpEntry("policy/shill_policy_on_unmanaged_wifi1.json", 485 SetUpEntry("policy/shill_policy_on_unmanaged_wifi1.json",
489 kUser1ProfilePath, 486 kUser1ProfilePath,
490 "old_entry_path"); 487 "old_entry_path");
491 488
492 scoped_ptr<base::DictionaryValue> expected_shill_properties = 489 scoped_ptr<base::DictionaryValue> expected_shill_properties =
493 test_utils::ReadTestDictionary( 490 test_utils::ReadTestDictionary(
494 "policy/shill_policy_on_unmanaged_wifi1.json"); 491 "policy/shill_policy_on_unmanaged_wifi1.json");
495 492
496 // The passphrase isn't sent again, because it's configured by the user and 493 // The passphrase isn't sent again, because it's configured by the user and
497 // Shill doesn't sent it on GetProperties calls. 494 // Shill doesn't sent it on GetProperties calls.
498 expected_shill_properties->RemoveWithoutPathExpansion( 495 expected_shill_properties->RemoveWithoutPathExpansion(
499 shill::kPassphraseProperty, NULL); 496 shill::kPassphraseProperty, NULL);
500 497
501 EXPECT_CALL(mock_profile_client_, 498 EXPECT_CALL(*mock_profile_client_,
502 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _)); 499 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _));
503 500
504 EXPECT_CALL( 501 EXPECT_CALL(
505 mock_profile_client_, 502 *mock_profile_client_,
506 GetEntry(dbus::ObjectPath(kUser1ProfilePath), "old_entry_path", _, _)); 503 GetEntry(dbus::ObjectPath(kUser1ProfilePath), "old_entry_path", _, _));
507 504
508 EXPECT_CALL(mock_manager_client_, 505 EXPECT_CALL(*mock_manager_client_,
509 ConfigureServiceForProfile( 506 ConfigureServiceForProfile(
510 dbus::ObjectPath(kUser1ProfilePath), 507 dbus::ObjectPath(kUser1ProfilePath),
511 IsEqualTo(expected_shill_properties.get()), 508 IsEqualTo(expected_shill_properties.get()),
512 _, _)); 509 _, _));
513 510
514 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc"); 511 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc");
515 message_loop_.RunUntilIdle(); 512 message_loop_.RunUntilIdle();
516 VerifyAndClearExpectations(); 513 VerifyAndClearExpectations();
517 514
518 // If we apply the policy again, without change, then the Shill profile will 515 // If we apply the policy again, without change, then the Shill profile will
519 // not be modified. 516 // not be modified.
520 EXPECT_CALL(mock_profile_client_, 517 EXPECT_CALL(*mock_profile_client_,
521 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _)); 518 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _));
522 519
523 EXPECT_CALL( 520 EXPECT_CALL(
524 mock_profile_client_, 521 *mock_profile_client_,
525 GetEntry(dbus::ObjectPath(kUser1ProfilePath), "old_entry_path", _, _)); 522 GetEntry(dbus::ObjectPath(kUser1ProfilePath), "old_entry_path", _, _));
526 523
527 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc"); 524 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc");
528 message_loop_.RunUntilIdle(); 525 message_loop_.RunUntilIdle();
529 } 526 }
530 527
531 TEST_F(ManagedNetworkConfigurationHandlerTest, SetPolicyUnmanageManaged) { 528 TEST_F(ManagedNetworkConfigurationHandlerTest, SetPolicyUnmanageManaged) {
532 InitializeStandardProfiles(); 529 InitializeStandardProfiles();
533 SetUpEntry("policy/shill_policy_on_unmanaged_wifi1.json", 530 SetUpEntry("policy/shill_policy_on_unmanaged_wifi1.json",
534 kUser1ProfilePath, 531 kUser1ProfilePath,
535 "old_entry_path"); 532 "old_entry_path");
536 533
537 EXPECT_CALL(mock_profile_client_, 534 EXPECT_CALL(*mock_profile_client_,
538 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _)); 535 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _));
539 536
540 EXPECT_CALL(mock_profile_client_, 537 EXPECT_CALL(*mock_profile_client_,
541 GetEntry(dbus::ObjectPath(kUser1ProfilePath), 538 GetEntry(dbus::ObjectPath(kUser1ProfilePath),
542 "old_entry_path", 539 "old_entry_path",
543 _, _)); 540 _, _));
544 541
545 EXPECT_CALL(mock_profile_client_, 542 EXPECT_CALL(*mock_profile_client_,
546 DeleteEntry(dbus::ObjectPath(kUser1ProfilePath), 543 DeleteEntry(dbus::ObjectPath(kUser1ProfilePath),
547 "old_entry_path", 544 "old_entry_path",
548 _, _)); 545 _, _));
549 546
550 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, ""); 547 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "");
551 message_loop_.RunUntilIdle(); 548 message_loop_.RunUntilIdle();
552 } 549 }
553 550
554 TEST_F(ManagedNetworkConfigurationHandlerTest, SetEmptyPolicyIgnoreUnmanaged) { 551 TEST_F(ManagedNetworkConfigurationHandlerTest, SetEmptyPolicyIgnoreUnmanaged) {
555 InitializeStandardProfiles(); 552 InitializeStandardProfiles();
556 SetUpEntry("policy/shill_unmanaged_wifi1.json", 553 SetUpEntry("policy/shill_unmanaged_wifi1.json",
557 kUser1ProfilePath, 554 kUser1ProfilePath,
558 "old_entry_path"); 555 "old_entry_path");
559 556
560 EXPECT_CALL(mock_profile_client_, 557 EXPECT_CALL(*mock_profile_client_,
561 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _)); 558 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _));
562 559
563 EXPECT_CALL(mock_profile_client_, 560 EXPECT_CALL(*mock_profile_client_,
564 GetEntry(dbus::ObjectPath(kUser1ProfilePath), 561 GetEntry(dbus::ObjectPath(kUser1ProfilePath),
565 "old_entry_path", 562 "old_entry_path",
566 _, _)); 563 _, _));
567 564
568 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, ""); 565 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "");
569 message_loop_.RunUntilIdle(); 566 message_loop_.RunUntilIdle();
570 } 567 }
571 568
572 TEST_F(ManagedNetworkConfigurationHandlerTest, SetPolicyIgnoreUnmanaged) { 569 TEST_F(ManagedNetworkConfigurationHandlerTest, SetPolicyIgnoreUnmanaged) {
573 InitializeStandardProfiles(); 570 InitializeStandardProfiles();
574 SetUpEntry("policy/shill_unmanaged_wifi2.json", 571 SetUpEntry("policy/shill_unmanaged_wifi2.json",
575 kUser1ProfilePath, 572 kUser1ProfilePath,
576 "wifi2_entry_path"); 573 "wifi2_entry_path");
577 574
578 EXPECT_CALL(mock_profile_client_, 575 EXPECT_CALL(*mock_profile_client_,
579 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _)); 576 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _));
580 577
581 EXPECT_CALL( 578 EXPECT_CALL(
582 mock_profile_client_, 579 *mock_profile_client_,
583 GetEntry(dbus::ObjectPath(kUser1ProfilePath), "wifi2_entry_path", _, _)); 580 GetEntry(dbus::ObjectPath(kUser1ProfilePath), "wifi2_entry_path", _, _));
584 581
585 scoped_ptr<base::DictionaryValue> expected_shill_properties = 582 scoped_ptr<base::DictionaryValue> expected_shill_properties =
586 test_utils::ReadTestDictionary( 583 test_utils::ReadTestDictionary(
587 "policy/shill_policy_on_unconfigured_wifi1.json"); 584 "policy/shill_policy_on_unconfigured_wifi1.json");
588 585
589 EXPECT_CALL(mock_manager_client_, 586 EXPECT_CALL(*mock_manager_client_,
590 ConfigureServiceForProfile( 587 ConfigureServiceForProfile(
591 dbus::ObjectPath(kUser1ProfilePath), 588 dbus::ObjectPath(kUser1ProfilePath),
592 IsEqualTo(expected_shill_properties.get()), 589 IsEqualTo(expected_shill_properties.get()),
593 _, _)); 590 _, _));
594 591
595 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc"); 592 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc");
596 message_loop_.RunUntilIdle(); 593 message_loop_.RunUntilIdle();
597 } 594 }
598 595
599 TEST_F(ManagedNetworkConfigurationHandlerTest, AutoConnectDisallowed) { 596 TEST_F(ManagedNetworkConfigurationHandlerTest, AutoConnectDisallowed) {
600 InitializeStandardProfiles(); 597 InitializeStandardProfiles();
601 SetUpEntry("policy/shill_unmanaged_wifi2.json", 598 SetUpEntry("policy/shill_unmanaged_wifi2.json",
602 kUser1ProfilePath, 599 kUser1ProfilePath,
603 "wifi2_entry_path"); 600 "wifi2_entry_path");
604 601
605 EXPECT_CALL(mock_profile_client_, 602 EXPECT_CALL(*mock_profile_client_,
606 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _)); 603 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _));
607 604
608 EXPECT_CALL( 605 EXPECT_CALL(
609 mock_profile_client_, 606 *mock_profile_client_,
610 GetEntry(dbus::ObjectPath(kUser1ProfilePath), "wifi2_entry_path", _, _)); 607 GetEntry(dbus::ObjectPath(kUser1ProfilePath), "wifi2_entry_path", _, _));
611 608
612 scoped_ptr<base::DictionaryValue> expected_shill_properties = 609 scoped_ptr<base::DictionaryValue> expected_shill_properties =
613 test_utils::ReadTestDictionary( 610 test_utils::ReadTestDictionary(
614 "policy/shill_disallow_autoconnect_on_unmanaged_wifi2.json"); 611 "policy/shill_disallow_autoconnect_on_unmanaged_wifi2.json");
615 612
616 EXPECT_CALL(mock_manager_client_, 613 EXPECT_CALL(*mock_manager_client_,
617 ConfigureServiceForProfile( 614 ConfigureServiceForProfile(
618 dbus::ObjectPath(kUser1ProfilePath), 615 dbus::ObjectPath(kUser1ProfilePath),
619 IsEqualTo(expected_shill_properties.get()), 616 IsEqualTo(expected_shill_properties.get()),
620 _, _)); 617 _, _));
621 618
622 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, 619 SetPolicy(::onc::ONC_SOURCE_USER_POLICY,
623 kUser1, 620 kUser1,
624 "policy/policy_disallow_autoconnect.onc"); 621 "policy/policy_disallow_autoconnect.onc");
625 message_loop_.RunUntilIdle(); 622 message_loop_.RunUntilIdle();
626 } 623 }
627 624
628 TEST_F(ManagedNetworkConfigurationHandlerTest, LateProfileLoading) { 625 TEST_F(ManagedNetworkConfigurationHandlerTest, LateProfileLoading) {
629 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc"); 626 SetPolicy(::onc::ONC_SOURCE_USER_POLICY, kUser1, "policy/policy_wifi1.onc");
630 627
631 message_loop_.RunUntilIdle(); 628 message_loop_.RunUntilIdle();
632 VerifyAndClearExpectations(); 629 VerifyAndClearExpectations();
633 630
634 scoped_ptr<base::DictionaryValue> expected_shill_properties = 631 scoped_ptr<base::DictionaryValue> expected_shill_properties =
635 test_utils::ReadTestDictionary( 632 test_utils::ReadTestDictionary(
636 "policy/shill_policy_on_unconfigured_wifi1.json"); 633 "policy/shill_policy_on_unconfigured_wifi1.json");
637 634
638 EXPECT_CALL(mock_profile_client_, 635 EXPECT_CALL(*mock_profile_client_,
639 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _)); 636 GetProperties(dbus::ObjectPath(kUser1ProfilePath), _, _));
640 637
641 EXPECT_CALL(mock_manager_client_, 638 EXPECT_CALL(*mock_manager_client_,
642 ConfigureServiceForProfile( 639 ConfigureServiceForProfile(
643 dbus::ObjectPath(kUser1ProfilePath), 640 dbus::ObjectPath(kUser1ProfilePath),
644 IsEqualTo(expected_shill_properties.get()), 641 IsEqualTo(expected_shill_properties.get()),
645 _, _)); 642 _, _));
646 643
647 InitializeStandardProfiles(); 644 InitializeStandardProfiles();
648 message_loop_.RunUntilIdle(); 645 message_loop_.RunUntilIdle();
649 } 646 }
650 647
651 } // namespace chromeos 648 } // namespace chromeos
OLDNEW
« no previous file with comments | « chromeos/disks/disk_mount_manager_unittest.cc ('k') | chromeos/network/network_configuration_handler_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698