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

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

Issue 175243004: Chrome OS: Use Manager.DefaultService for Default Network (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 6 years, 10 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) 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 "chromeos/network/network_state_handler.h" 5 #include "chromeos/network/network_state_handler.h"
6 6
7 #include <map> 7 #include <map>
8 #include <set> 8 #include <set>
9 #include <string> 9 #include <string>
10 10
(...skipping 340 matching lines...) Expand 10 before | Expand all | Expand 10 after
351 } 351 }
352 352
353 TEST_F(NetworkStateHandlerTest, DefaultServiceChanged) { 353 TEST_F(NetworkStateHandlerTest, DefaultServiceChanged) {
354 ShillManagerClient::TestInterface* manager_test = 354 ShillManagerClient::TestInterface* manager_test =
355 DBusThreadManager::Get()->GetShillManagerClient()->GetTestInterface(); 355 DBusThreadManager::Get()->GetShillManagerClient()->GetTestInterface();
356 ASSERT_TRUE(manager_test); 356 ASSERT_TRUE(manager_test);
357 ShillServiceClient::TestInterface* service_test = 357 ShillServiceClient::TestInterface* service_test =
358 DBusThreadManager::Get()->GetShillServiceClient()->GetTestInterface(); 358 DBusThreadManager::Get()->GetShillServiceClient()->GetTestInterface();
359 ASSERT_TRUE(service_test); 359 ASSERT_TRUE(service_test);
360 360
361 // Change the default network by changing the state of eth1 to Idle which
362 // should re-sort Manager.Services.
363 const std::string eth1 = kShillManagerClientStubDefaultService; 361 const std::string eth1 = kShillManagerClientStubDefaultService;
362 // The default service should be eth1. There should have been one initial plus
363 // one additional default network change signal.
364 EXPECT_EQ(eth1, test_observer_->default_network());
365 EXPECT_EQ(2u, test_observer_->default_network_change_count());
366
367 // Change the default network by changing Manager.DefaultService.
364 const std::string wifi1 = kShillManagerClientStubDefaultWireless; 368 const std::string wifi1 = kShillManagerClientStubDefaultWireless;
365 base::StringValue connection_state_idle_value(shill::kStateIdle); 369 base::StringValue wifi1_value(wifi1);
366 service_test->SetServiceProperty(eth1, shill::kStateProperty, 370 manager_test->SetManagerProperty(shill::kDefaultServiceProperty, wifi1_value);
367 connection_state_idle_value);
368 message_loop_.RunUntilIdle(); 371 message_loop_.RunUntilIdle();
369 EXPECT_EQ(wifi1, test_observer_->default_network()); 372 EXPECT_EQ(wifi1, test_observer_->default_network());
370 EXPECT_EQ(shill::kStateOnline, 373 EXPECT_EQ(3u, test_observer_->default_network_change_count());
374
375 // Change the state of the default network.
376 base::StringValue connection_state_ready_value(shill::kStateReady);
377 service_test->SetServiceProperty(wifi1, shill::kStateProperty,
378 connection_state_ready_value);
379 message_loop_.RunUntilIdle();
380 EXPECT_EQ(shill::kStateReady,
371 test_observer_->default_network_connection_state()); 381 test_observer_->default_network_connection_state());
372 // We should have seen 2 default network updates - for the default 382 EXPECT_EQ(4u, test_observer_->default_network_change_count());
pneubeck (no reviews) 2014/02/24 09:22:58 nit: instead of counting indefinitely upwards, cou
stevenjb 2014/02/24 23:59:42 Done.
373 // service change, and for the state change.
374 EXPECT_EQ(2u, test_observer_->default_network_change_count());
375 383
376 // Updating a property on the default network should trigger 384 // Updating a property on the default network should trigger
377 // a default network change. 385 // a default network change.
378 DBusThreadManager::Get()->GetShillServiceClient()->SetProperty( 386 DBusThreadManager::Get()->GetShillServiceClient()->SetProperty(
379 dbus::ObjectPath(wifi1), 387 dbus::ObjectPath(wifi1),
380 shill::kSecurityProperty, base::StringValue("TestSecurity"), 388 shill::kSecurityProperty, base::StringValue("TestSecurity"),
381 base::Bind(&base::DoNothing), base::Bind(&ErrorCallbackFunction)); 389 base::Bind(&base::DoNothing), base::Bind(&ErrorCallbackFunction));
382 message_loop_.RunUntilIdle(); 390 message_loop_.RunUntilIdle();
383 EXPECT_EQ(3u, test_observer_->default_network_change_count()); 391 EXPECT_EQ(5u, test_observer_->default_network_change_count());
384 392
385 // No default network updates for signal strength changes. 393 // No default network updates for signal strength changes.
386 DBusThreadManager::Get()->GetShillServiceClient()->SetProperty( 394 DBusThreadManager::Get()->GetShillServiceClient()->SetProperty(
387 dbus::ObjectPath(wifi1), 395 dbus::ObjectPath(wifi1),
388 shill::kSignalStrengthProperty, base::FundamentalValue(32), 396 shill::kSignalStrengthProperty, base::FundamentalValue(32),
389 base::Bind(&base::DoNothing), base::Bind(&ErrorCallbackFunction)); 397 base::Bind(&base::DoNothing), base::Bind(&ErrorCallbackFunction));
390 message_loop_.RunUntilIdle(); 398 message_loop_.RunUntilIdle();
391 EXPECT_EQ(3u, test_observer_->default_network_change_count()); 399 EXPECT_EQ(5u, test_observer_->default_network_change_count());
392 } 400 }
393 401
394 TEST_F(NetworkStateHandlerTest, RequestUpdate) { 402 TEST_F(NetworkStateHandlerTest, RequestUpdate) {
395 // Request an update for kShillManagerClientStubDefaultWireless. 403 // Request an update for kShillManagerClientStubDefaultWireless.
396 EXPECT_EQ(1, test_observer_->PropertyUpdatesForService( 404 EXPECT_EQ(1, test_observer_->PropertyUpdatesForService(
397 kShillManagerClientStubDefaultWireless)); 405 kShillManagerClientStubDefaultWireless));
398 network_state_handler_->RequestUpdateForNetwork( 406 network_state_handler_->RequestUpdateForNetwork(
399 kShillManagerClientStubDefaultWireless); 407 kShillManagerClientStubDefaultWireless);
400 message_loop_.RunUntilIdle(); 408 message_loop_.RunUntilIdle();
401 EXPECT_EQ(2, test_observer_->PropertyUpdatesForService( 409 EXPECT_EQ(2, test_observer_->PropertyUpdatesForService(
402 kShillManagerClientStubDefaultWireless)); 410 kShillManagerClientStubDefaultWireless));
403 411
404 // Request an update for all networks. 412 // Request an update for all networks.
405 network_state_handler_->RequestUpdateForAllNetworks(); 413 network_state_handler_->RequestUpdateForAllNetworks();
406 message_loop_.RunUntilIdle(); 414 message_loop_.RunUntilIdle();
407 // kShillManagerClientStubDefaultWireless should now have 3 updates 415 // kShillManagerClientStubDefaultWireless should now have 3 updates
408 EXPECT_EQ(3, test_observer_->PropertyUpdatesForService( 416 EXPECT_EQ(3, test_observer_->PropertyUpdatesForService(
409 kShillManagerClientStubDefaultWireless)); 417 kShillManagerClientStubDefaultWireless));
410 // Other networks should have 2 updates (inital + request). 418 // Other networks should have 2 updates (inital + request).
411 EXPECT_EQ(2, test_observer_->PropertyUpdatesForService( 419 EXPECT_EQ(2, test_observer_->PropertyUpdatesForService(
412 kShillManagerClientStubDefaultService)); 420 kShillManagerClientStubDefaultService));
413 EXPECT_EQ(2, test_observer_->PropertyUpdatesForService( 421 EXPECT_EQ(2, test_observer_->PropertyUpdatesForService(
414 kShillManagerClientStubWireless2)); 422 kShillManagerClientStubWireless2));
415 EXPECT_EQ(2, test_observer_->PropertyUpdatesForService( 423 EXPECT_EQ(2, test_observer_->PropertyUpdatesForService(
416 kShillManagerClientStubCellular)); 424 kShillManagerClientStubCellular));
417 } 425 }
418 426
419 } // namespace chromeos 427 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698