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

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

Issue 2819383002: [CrOS Tether] Update NetworkState to include tether properties and integrate into NetworkStateHandl… (Closed)
Patch Set: stevenjb@ comment. Created 3 years, 8 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
« no previous file with comments | « chromeos/network/network_state_handler.cc ('k') | chromeos/network/network_state_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 <stddef.h> 7 #include <stddef.h>
8 8
9 #include <map> 9 #include <map>
10 #include <memory> 10 #include <memory>
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
47 const char kShillManagerClientStubWifi2[] = "/service/wifi2"; 47 const char kShillManagerClientStubWifi2[] = "/service/wifi2";
48 const char kShillManagerClientStubCellular[] = "/service/cellular1"; 48 const char kShillManagerClientStubCellular[] = "/service/cellular1";
49 49
50 const char kWifiGuid1[] = "wifi1"; 50 const char kWifiGuid1[] = "wifi1";
51 const char kWifiName1[] = "WiFi 1"; 51 const char kWifiName1[] = "WiFi 1";
52 52
53 const char kTetherGuid1[] = "tether1"; 53 const char kTetherGuid1[] = "tether1";
54 const char kTetherGuid2[] = "tether2"; 54 const char kTetherGuid2[] = "tether2";
55 const char kTetherName1[] = "Device1"; 55 const char kTetherName1[] = "Device1";
56 const char kTetherName2[] = "Device2"; 56 const char kTetherName2[] = "Device2";
57 const char kTetherCarrier1[] = "Carrier1";
58 const char kTetherCarrier2[] = "Carrier2";
59 const int kTetherBatteryPercentage1 = 85;
60 const int kTetherBatteryPercentage2 = 90;
61 const int kTetherSignalStrength1 = 75;
62 const int kTetherSignalStrength2 = 80;
57 63
58 using chromeos::DeviceState; 64 using chromeos::DeviceState;
59 using chromeos::NetworkState; 65 using chromeos::NetworkState;
60 using chromeos::NetworkStateHandler; 66 using chromeos::NetworkStateHandler;
61 67
62 class TestObserver : public chromeos::NetworkStateHandlerObserver { 68 class TestObserver : public chromeos::NetworkStateHandlerObserver {
63 public: 69 public:
64 explicit TestObserver(NetworkStateHandler* handler) 70 explicit TestObserver(NetworkStateHandler* handler)
65 : handler_(handler), 71 : handler_(handler),
66 device_list_changed_count_(0), 72 device_list_changed_count_(0),
(...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after
268 void UpdateManagerProperties() { base::RunLoop().RunUntilIdle(); } 274 void UpdateManagerProperties() { base::RunLoop().RunUntilIdle(); }
269 275
270 void SetServiceProperty(const std::string& service_path, 276 void SetServiceProperty(const std::string& service_path,
271 const std::string& key, 277 const std::string& key,
272 const base::Value& value) { 278 const base::Value& value) {
273 DBusThreadManager::Get()->GetShillServiceClient()->SetProperty( 279 DBusThreadManager::Get()->GetShillServiceClient()->SetProperty(
274 dbus::ObjectPath(service_path), key, value, 280 dbus::ObjectPath(service_path), key, value,
275 base::Bind(&base::DoNothing), base::Bind(&ErrorCallbackFunction)); 281 base::Bind(&base::DoNothing), base::Bind(&ErrorCallbackFunction));
276 } 282 }
277 283
284 void GetTetherNetworkList(int limit,
285 NetworkStateHandler::NetworkStateList* list) {
286 network_state_handler_->GetTetherNetworkList(limit, list);
287 }
288
278 base::MessageLoopForUI message_loop_; 289 base::MessageLoopForUI message_loop_;
279 std::unique_ptr<NetworkStateHandler> network_state_handler_; 290 std::unique_ptr<NetworkStateHandler> network_state_handler_;
280 std::unique_ptr<TestObserver> test_observer_; 291 std::unique_ptr<TestObserver> test_observer_;
281 ShillDeviceClient::TestInterface* device_test_; 292 ShillDeviceClient::TestInterface* device_test_;
282 ShillManagerClient::TestInterface* manager_test_; 293 ShillManagerClient::TestInterface* manager_test_;
283 ShillProfileClient::TestInterface* profile_test_; 294 ShillProfileClient::TestInterface* profile_test_;
284 ShillServiceClient::TestInterface* service_test_; 295 ShillServiceClient::TestInterface* service_test_;
285 296
286 private: 297 private:
287 DISALLOW_COPY_AND_ASSIGN(NetworkStateHandlerTest); 298 DISALLOW_COPY_AND_ASSIGN(NetworkStateHandlerTest);
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
332 shill::kTypeWifi, 343 shill::kTypeWifi,
333 shill::kStateIdle, 344 shill::kStateIdle,
334 false /* add_to_visible */); 345 false /* add_to_visible */);
335 profile_test_->AddProfile(profile, "" /* userhash */); 346 profile_test_->AddProfile(profile, "" /* userhash */);
336 EXPECT_TRUE(profile_test_->AddService(profile, wifi_favorite_path)); 347 EXPECT_TRUE(profile_test_->AddService(profile, wifi_favorite_path));
337 UpdateManagerProperties(); 348 UpdateManagerProperties();
338 base::RunLoop().RunUntilIdle(); 349 base::RunLoop().RunUntilIdle();
339 EXPECT_EQ(kNumShillManagerClientStubImplServices + 1, 350 EXPECT_EQ(kNumShillManagerClientStubImplServices + 1,
340 test_observer_->network_count()); 351 test_observer_->network_count());
341 352
353 // Add two Tether networks.
354 const size_t kNumTetherNetworks = 2;
355 network_state_handler_->AddTetherNetworkState(
356 kTetherGuid1, kTetherName1, kTetherCarrier1, kTetherBatteryPercentage1,
357 kTetherSignalStrength1);
358 network_state_handler_->AddTetherNetworkState(
359 kTetherGuid2, kTetherName2, kTetherCarrier2, kTetherBatteryPercentage2,
360 kTetherSignalStrength2);
361 EXPECT_EQ(kNumShillManagerClientStubImplServices + 3,
362 test_observer_->network_count());
363
342 // Get all networks. 364 // Get all networks.
343 NetworkStateHandler::NetworkStateList networks; 365 NetworkStateHandler::NetworkStateList networks;
344 network_state_handler_->GetNetworkListByType(NetworkTypePattern::Default(), 366 network_state_handler_->GetNetworkListByType(NetworkTypePattern::Default(),
345 false /* configured_only */, 367 false /* configured_only */,
346 false /* visible_only */, 368 false /* visible_only */,
347 0 /* no limit */, 369 0 /* no limit */,
348 &networks); 370 &networks);
349 EXPECT_EQ(kNumShillManagerClientStubImplServices + 1, networks.size()); 371 EXPECT_EQ(kNumShillManagerClientStubImplServices + kNumTetherNetworks + 1,
350 // Limit number of results. 372 networks.size());
373 // Limit number of results, including only tether networks.
351 network_state_handler_->GetNetworkListByType(NetworkTypePattern::Default(), 374 network_state_handler_->GetNetworkListByType(NetworkTypePattern::Default(),
352 false /* configured_only */, 375 false /* configured_only */,
353 false /* visible_only */, 376 false /* visible_only */,
354 2 /* limit */, 377 2 /* limit */,
355 &networks); 378 &networks);
356 EXPECT_EQ(2u, networks.size()); 379 EXPECT_EQ(2u, networks.size());
380 // Limit number of results, including more than only tether networks.
381 network_state_handler_->GetNetworkListByType(
382 NetworkTypePattern::Default(), false /* configured_only */,
383 false /* visible_only */, 4 /* limit */, &networks);
384 EXPECT_EQ(4u, networks.size());
385 // Get all tether networks.
386 network_state_handler_->GetNetworkListByType(
387 NetworkTypePattern::Tether(), false /* configured_only */,
388 false /* visible_only */, 0 /* no limit */, &networks);
389 EXPECT_EQ(2u, networks.size());
357 // Get all wifi networks. 390 // Get all wifi networks.
358 network_state_handler_->GetNetworkListByType(NetworkTypePattern::WiFi(), 391 network_state_handler_->GetNetworkListByType(NetworkTypePattern::WiFi(),
359 false /* configured_only */, 392 false /* configured_only */,
360 false /* visible_only */, 393 false /* visible_only */,
361 0 /* no limit */, 394 0 /* no limit */,
362 &networks); 395 &networks);
363 EXPECT_EQ(3u, networks.size()); 396 EXPECT_EQ(3u, networks.size());
364 // Get visible networks. 397 // Get visible networks.
365 network_state_handler_->GetNetworkListByType(NetworkTypePattern::Default(), 398 network_state_handler_->GetNetworkListByType(NetworkTypePattern::Default(),
366 false /* configured_only */, 399 false /* configured_only */,
367 true /* visible_only */, 400 true /* visible_only */,
368 0 /* no limit */, 401 0 /* no limit */,
369 &networks); 402 &networks);
370 EXPECT_EQ(kNumShillManagerClientStubImplServices, networks.size()); 403 EXPECT_EQ(kNumShillManagerClientStubImplServices + kNumTetherNetworks,
404 networks.size());
371 network_state_handler_->GetVisibleNetworkList(&networks); 405 network_state_handler_->GetVisibleNetworkList(&networks);
372 EXPECT_EQ(kNumShillManagerClientStubImplServices, networks.size()); 406 EXPECT_EQ(kNumShillManagerClientStubImplServices + kNumTetherNetworks,
407 networks.size());
373 // Get configured (profile) networks. 408 // Get configured (profile) networks.
374 network_state_handler_->GetNetworkListByType(NetworkTypePattern::Default(), 409 network_state_handler_->GetNetworkListByType(NetworkTypePattern::Default(),
375 true /* configured_only */, 410 true /* configured_only */,
376 false /* visible_only */, 411 false /* visible_only */,
377 0 /* no limit */, 412 0 /* no limit */,
378 &networks); 413 &networks);
379 EXPECT_EQ(1u, networks.size()); 414 EXPECT_EQ(kNumTetherNetworks + 1u, networks.size());
380 } 415 }
381 416
382 TEST_F(NetworkStateHandlerTest, GetTetherNetworkList) { 417 TEST_F(NetworkStateHandlerTest, GetTetherNetworkList) {
383 NetworkStateHandler::NetworkStateList tether_networks; 418 NetworkStateHandler::NetworkStateList tether_networks;
384 419
385 network_state_handler_->GetTetherNetworkList(0 /* no limit */, 420 GetTetherNetworkList(0 /* no limit */, &tether_networks);
386 &tether_networks);
387 EXPECT_EQ(0u, tether_networks.size()); 421 EXPECT_EQ(0u, tether_networks.size());
388 422
389 network_state_handler_->AddTetherNetworkState(kTetherGuid1, kTetherName1); 423 network_state_handler_->AddTetherNetworkState(
424 kTetherGuid1, kTetherName1, kTetherCarrier1, kTetherBatteryPercentage1,
425 kTetherSignalStrength1);
390 426
391 network_state_handler_->GetTetherNetworkList(0 /* no limit */, 427 GetTetherNetworkList(0 /* no limit */, &tether_networks);
392 &tether_networks);
393 EXPECT_EQ(1u, tether_networks.size()); 428 EXPECT_EQ(1u, tether_networks.size());
394 429
395 network_state_handler_->AddTetherNetworkState(kTetherGuid2, kTetherName2); 430 network_state_handler_->AddTetherNetworkState(
431 kTetherGuid2, kTetherName2, kTetherCarrier2, kTetherBatteryPercentage2,
432 kTetherSignalStrength2);
396 433
397 network_state_handler_->GetTetherNetworkList(0 /* no limit */, 434 GetTetherNetworkList(0 /* no limit */, &tether_networks);
398 &tether_networks);
399 EXPECT_EQ(2u, tether_networks.size()); 435 EXPECT_EQ(2u, tether_networks.size());
400 436
401 network_state_handler_->GetTetherNetworkList(1 /* no limit */, 437 GetTetherNetworkList(1 /* no limit */, &tether_networks);
402 &tether_networks);
403 EXPECT_EQ(1u, tether_networks.size()); 438 EXPECT_EQ(1u, tether_networks.size());
404 } 439 }
405 440
406 TEST_F(NetworkStateHandlerTest, NetworkListChanged) { 441 TEST_F(NetworkStateHandlerTest, NetworkListChanged) {
407 size_t stub_network_count = test_observer_->network_count(); 442 size_t stub_network_count = test_observer_->network_count();
408 // Set up two additional visible networks. 443 // Set up two additional visible networks.
409 const std::string wifi3 = "/service/wifi3"; 444 const std::string wifi3 = "/service/wifi3";
410 const std::string wifi4 = "/service/wifi4"; 445 const std::string wifi4 = "/service/wifi4";
411 service_test_->SetServiceProperties( 446 service_test_->SetServiceProperties(
412 wifi3, "wifi3_guid", "wifi3", 447 wifi3, "wifi3_guid", "wifi3",
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
585 620
586 // Remove the service, verify that there is no longer a NetworkState for it. 621 // Remove the service, verify that there is no longer a NetworkState for it.
587 service_test_->RemoveService(wifi_path); 622 service_test_->RemoveService(wifi_path);
588 UpdateManagerProperties(); 623 UpdateManagerProperties();
589 EXPECT_FALSE(network_state_handler_->GetNetworkState(wifi_path)); 624 EXPECT_FALSE(network_state_handler_->GetNetworkState(wifi_path));
590 } 625 }
591 626
592 TEST_F(NetworkStateHandlerTest, TetherNetworkState) { 627 TEST_F(NetworkStateHandlerTest, TetherNetworkState) {
593 EXPECT_EQ(0u, test_observer_->network_list_changed_count()); 628 EXPECT_EQ(0u, test_observer_->network_list_changed_count());
594 629
595 network_state_handler_->AddTetherNetworkState(kTetherGuid1, kTetherName1); 630 network_state_handler_->AddTetherNetworkState(
631 kTetherGuid1, kTetherName1, kTetherCarrier1, kTetherBatteryPercentage1,
632 kTetherSignalStrength1);
596 633
597 EXPECT_EQ(1u, test_observer_->network_list_changed_count()); 634 EXPECT_EQ(1u, test_observer_->network_list_changed_count());
598 635
599 const NetworkState* tether_network = 636 const NetworkState* tether_network =
600 network_state_handler_->GetNetworkStateFromGuid(kTetherGuid1); 637 network_state_handler_->GetNetworkStateFromGuid(kTetherGuid1);
601 ASSERT_TRUE(tether_network); 638 ASSERT_TRUE(tether_network);
602 EXPECT_EQ(kTetherName1, tether_network->name()); 639 EXPECT_EQ(kTetherName1, tether_network->name());
603 EXPECT_EQ(kTetherGuid1, tether_network->path()); 640 EXPECT_EQ(kTetherGuid1, tether_network->path());
641 EXPECT_EQ(kTetherCarrier1, tether_network->carrier());
642 EXPECT_EQ(kTetherBatteryPercentage1, tether_network->battery_percentage());
643 EXPECT_EQ(kTetherSignalStrength1, tether_network->signal_strength());
644
645 // Update the tether properties and verify the changes.
646 EXPECT_TRUE(network_state_handler_->UpdateTetherNetworkProperties(
647 kTetherGuid1, "NewCarrier", 5 /* battery_percentage */,
648 10 /* signal_strength */));
649
650 EXPECT_EQ(2u, test_observer_->network_list_changed_count());
651
652 tether_network =
653 network_state_handler_->GetNetworkStateFromGuid(kTetherGuid1);
654 ASSERT_TRUE(tether_network);
655 EXPECT_EQ(kTetherName1, tether_network->name());
656 EXPECT_EQ(kTetherGuid1, tether_network->path());
657 EXPECT_EQ("NewCarrier", tether_network->carrier());
658 EXPECT_EQ(5, tether_network->battery_percentage());
659 EXPECT_EQ(10, tether_network->signal_strength());
604 660
605 network_state_handler_->RemoveTetherNetworkState(kTetherGuid1); 661 network_state_handler_->RemoveTetherNetworkState(kTetherGuid1);
606 662
607 EXPECT_EQ(2u, test_observer_->network_list_changed_count()); 663 EXPECT_EQ(3u, test_observer_->network_list_changed_count());
608 664
609 ASSERT_FALSE(network_state_handler_->GetNetworkStateFromGuid(kTetherGuid1)); 665 ASSERT_FALSE(network_state_handler_->GetNetworkStateFromGuid(kTetherGuid1));
666
667 // Updating tether properties should fail since the network was removed.
668 EXPECT_FALSE(network_state_handler_->UpdateTetherNetworkProperties(
669 kTetherGuid1, "NewNewCarrier", 15 /* battery_percentage */,
670 20 /* signal_strength */));
610 } 671 }
611 672
612 TEST_F(NetworkStateHandlerTest, TetherNetworkStateAssociation) { 673 TEST_F(NetworkStateHandlerTest, TetherNetworkStateAssociation) {
613 EXPECT_EQ(0u, test_observer_->network_list_changed_count()); 674 EXPECT_EQ(0u, test_observer_->network_list_changed_count());
614 675
615 const std::string profile = "/profile/profile1"; 676 const std::string profile = "/profile/profile1";
616 const std::string wifi_path = "/service/wifi_with_guid"; 677 const std::string wifi_path = "/service/wifi_with_guid";
617 AddService(wifi_path, kWifiGuid1, kWifiName1, shill::kTypeWifi, 678 AddService(wifi_path, kWifiGuid1, kWifiName1, shill::kTypeWifi,
618 shill::kStateOnline); 679 shill::kStateOnline);
619 profile_test_->AddProfile(profile, "" /* userhash */); 680 profile_test_->AddProfile(profile, "" /* userhash */);
620 EXPECT_TRUE(profile_test_->AddService(profile, wifi_path)); 681 EXPECT_TRUE(profile_test_->AddService(profile, wifi_path));
621 UpdateManagerProperties(); 682 UpdateManagerProperties();
622 683
623 EXPECT_EQ(1u, test_observer_->network_list_changed_count()); 684 EXPECT_EQ(1u, test_observer_->network_list_changed_count());
624 685
625 network_state_handler_->AddTetherNetworkState(kTetherGuid1, kTetherName1); 686 network_state_handler_->AddTetherNetworkState(
687 kTetherGuid1, kTetherName1, kTetherCarrier1, kTetherBatteryPercentage1,
688 kTetherSignalStrength1);
626 689
627 EXPECT_EQ(2u, test_observer_->network_list_changed_count()); 690 EXPECT_EQ(2u, test_observer_->network_list_changed_count());
628 691
629 EXPECT_TRUE( 692 EXPECT_TRUE(
630 network_state_handler_->AssociateTetherNetworkStateWithWifiNetwork( 693 network_state_handler_->AssociateTetherNetworkStateWithWifiNetwork(
631 kTetherGuid1, kWifiGuid1)); 694 kTetherGuid1, kWifiGuid1));
632 695
633 EXPECT_EQ(3u, test_observer_->network_list_changed_count()); 696 EXPECT_EQ(3u, test_observer_->network_list_changed_count());
634 697
635 const NetworkState* wifi_network = 698 const NetworkState* wifi_network =
(...skipping 14 matching lines...) Expand all
650 713
651 TEST_F(NetworkStateHandlerTest, TetherNetworkStateAssociationWifiRemoved) { 714 TEST_F(NetworkStateHandlerTest, TetherNetworkStateAssociationWifiRemoved) {
652 const std::string profile = "/profile/profile1"; 715 const std::string profile = "/profile/profile1";
653 const std::string wifi_path = "/service/wifi_with_guid"; 716 const std::string wifi_path = "/service/wifi_with_guid";
654 AddService(wifi_path, kWifiGuid1, kWifiName1, shill::kTypeWifi, 717 AddService(wifi_path, kWifiGuid1, kWifiName1, shill::kTypeWifi,
655 shill::kStateOnline); 718 shill::kStateOnline);
656 profile_test_->AddProfile(profile, "" /* userhash */); 719 profile_test_->AddProfile(profile, "" /* userhash */);
657 EXPECT_TRUE(profile_test_->AddService(profile, wifi_path)); 720 EXPECT_TRUE(profile_test_->AddService(profile, wifi_path));
658 UpdateManagerProperties(); 721 UpdateManagerProperties();
659 722
660 network_state_handler_->AddTetherNetworkState(kTetherGuid1, kTetherName1); 723 network_state_handler_->AddTetherNetworkState(
724 kTetherGuid1, kTetherName1, kTetherCarrier1, kTetherBatteryPercentage1,
725 kTetherSignalStrength1);
661 EXPECT_TRUE( 726 EXPECT_TRUE(
662 network_state_handler_->AssociateTetherNetworkStateWithWifiNetwork( 727 network_state_handler_->AssociateTetherNetworkStateWithWifiNetwork(
663 kTetherGuid1, kWifiGuid1)); 728 kTetherGuid1, kWifiGuid1));
664 729
665 const NetworkState* wifi_network = 730 const NetworkState* wifi_network =
666 network_state_handler_->GetNetworkStateFromGuid(kWifiGuid1); 731 network_state_handler_->GetNetworkStateFromGuid(kWifiGuid1);
667 EXPECT_EQ(kTetherGuid1, wifi_network->tether_guid()); 732 EXPECT_EQ(kTetherGuid1, wifi_network->tether_guid());
668 733
669 const NetworkState* tether_network = 734 const NetworkState* tether_network =
670 network_state_handler_->GetNetworkStateFromGuid(kTetherGuid1); 735 network_state_handler_->GetNetworkStateFromGuid(kTetherGuid1);
671 EXPECT_EQ(kWifiGuid1, tether_network->tether_guid()); 736 EXPECT_EQ(kWifiGuid1, tether_network->tether_guid());
672 737
673 service_test_->RemoveService(wifi_path); 738 service_test_->RemoveService(wifi_path);
674 UpdateManagerProperties(); 739 UpdateManagerProperties();
675 740
676 tether_network = 741 tether_network =
677 network_state_handler_->GetNetworkStateFromGuid(kTetherGuid1); 742 network_state_handler_->GetNetworkStateFromGuid(kTetherGuid1);
678 ASSERT_TRUE(tether_network->tether_guid().empty()); 743 ASSERT_TRUE(tether_network->tether_guid().empty());
679 } 744 }
680 745
681 TEST_F(NetworkStateHandlerTest, TetherNetworkStateAssociation_NoWifiNetwork) { 746 TEST_F(NetworkStateHandlerTest, TetherNetworkStateAssociation_NoWifiNetwork) {
682 network_state_handler_->AddTetherNetworkState(kTetherGuid1, kTetherName1); 747 network_state_handler_->AddTetherNetworkState(
748 kTetherGuid1, kTetherName1, kTetherCarrier1, kTetherBatteryPercentage1,
749 kTetherSignalStrength1);
683 750
684 EXPECT_FALSE( 751 EXPECT_FALSE(
685 network_state_handler_->AssociateTetherNetworkStateWithWifiNetwork( 752 network_state_handler_->AssociateTetherNetworkStateWithWifiNetwork(
686 kTetherGuid1, kWifiGuid1)); 753 kTetherGuid1, kWifiGuid1));
687 } 754 }
688 755
689 TEST_F(NetworkStateHandlerTest, TetherNetworkStateAssociation_NoTetherNetwork) { 756 TEST_F(NetworkStateHandlerTest, TetherNetworkStateAssociation_NoTetherNetwork) {
690 const std::string profile = "/profile/profile1"; 757 const std::string profile = "/profile/profile1";
691 const std::string wifi_path = "/service/wifi_with_guid"; 758 const std::string wifi_path = "/service/wifi_with_guid";
692 AddService(wifi_path, kWifiGuid1, kWifiName1, shill::kTypeWifi, 759 AddService(wifi_path, kWifiGuid1, kWifiName1, shill::kTypeWifi,
693 shill::kStateOnline); 760 shill::kStateOnline);
694 profile_test_->AddProfile(profile, "" /* userhash */); 761 profile_test_->AddProfile(profile, "" /* userhash */);
695 EXPECT_TRUE(profile_test_->AddService(profile, wifi_path)); 762 EXPECT_TRUE(profile_test_->AddService(profile, wifi_path));
696 UpdateManagerProperties(); 763 UpdateManagerProperties();
697 764
698 ASSERT_FALSE( 765 ASSERT_FALSE(
699 network_state_handler_->AssociateTetherNetworkStateWithWifiNetwork( 766 network_state_handler_->AssociateTetherNetworkStateWithWifiNetwork(
700 kTetherGuid1, kWifiGuid1)); 767 kTetherGuid1, kWifiGuid1));
701 } 768 }
702 769
703 TEST_F(NetworkStateHandlerTest, SetTetherNetworkStateConnectionState) { 770 TEST_F(NetworkStateHandlerTest, SetTetherNetworkStateConnectionState) {
704 network_state_handler_->AddTetherNetworkState(kTetherGuid1, kTetherName1); 771 network_state_handler_->AddTetherNetworkState(
772 kTetherGuid1, kTetherName1, kTetherCarrier1, kTetherBatteryPercentage1,
773 kTetherSignalStrength1);
774
775 // Add corresponding Wi-Fi network.
776 const std::string profile = "/profile/profile1";
777 const std::string wifi_path = "/service/wifi_with_guid";
778 AddService(wifi_path, kWifiGuid1, kWifiName1, shill::kTypeWifi,
779 shill::kStateOnline);
780 profile_test_->AddProfile(profile, "" /* userhash */);
781 EXPECT_TRUE(profile_test_->AddService(profile, wifi_path));
782 UpdateManagerProperties();
783
784 // Associate tether and Wi-Fi networks.
785 network_state_handler_->AssociateTetherNetworkStateWithWifiNetwork(
786 kTetherGuid1, kWifiGuid1);
705 787
706 const NetworkState* tether_network = 788 const NetworkState* tether_network =
707 network_state_handler_->GetNetworkStateFromGuid(kTetherGuid1); 789 network_state_handler_->GetNetworkStateFromGuid(kTetherGuid1);
708 790
709 EXPECT_FALSE(tether_network->IsConnectingState()); 791 EXPECT_FALSE(tether_network->IsConnectingState());
710 EXPECT_FALSE(tether_network->IsConnectedState()); 792 EXPECT_FALSE(tether_network->IsConnectedState());
711 793
712 network_state_handler_->SetTetherNetworkStateConnecting(kTetherGuid1); 794 network_state_handler_->SetTetherNetworkStateConnecting(kTetherGuid1);
713 EXPECT_TRUE(tether_network->IsConnectingState()); 795 EXPECT_TRUE(tether_network->IsConnectingState());
714 796
(...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after
973 shill::kIPConfigProperty, 1055 shill::kIPConfigProperty,
974 base::Value(kIPConfigPath)); 1056 base::Value(kIPConfigPath));
975 UpdateManagerProperties(); 1057 UpdateManagerProperties();
976 EXPECT_EQ(1, test_observer_->PropertyUpdatesForDevice( 1058 EXPECT_EQ(1, test_observer_->PropertyUpdatesForDevice(
977 kShillManagerClientStubWifiDevice)); 1059 kShillManagerClientStubWifiDevice));
978 EXPECT_EQ(1, test_observer_->PropertyUpdatesForService( 1060 EXPECT_EQ(1, test_observer_->PropertyUpdatesForService(
979 kShillManagerClientStubDefaultWifi)); 1061 kShillManagerClientStubDefaultWifi));
980 } 1062 }
981 1063
982 } // namespace chromeos 1064 } // namespace chromeos
OLDNEW
« no previous file with comments | « chromeos/network/network_state_handler.cc ('k') | chromeos/network/network_state_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698