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

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

Issue 23684042: Eliminate NetworkManagerChanged (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 7 years, 3 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 24 matching lines...) Expand all
35 const std::string kShillManagerClientStubWireless2 = "wifi2"; 35 const std::string kShillManagerClientStubWireless2 = "wifi2";
36 const std::string kShillManagerClientStubCellular = "cellular1"; 36 const std::string kShillManagerClientStubCellular = "cellular1";
37 37
38 using chromeos::NetworkState; 38 using chromeos::NetworkState;
39 using chromeos::NetworkStateHandler; 39 using chromeos::NetworkStateHandler;
40 40
41 class TestObserver : public chromeos::NetworkStateHandlerObserver { 41 class TestObserver : public chromeos::NetworkStateHandlerObserver {
42 public: 42 public:
43 explicit TestObserver(NetworkStateHandler* handler) 43 explicit TestObserver(NetworkStateHandler* handler)
44 : handler_(handler), 44 : handler_(handler),
45 manager_changed_count_(0), 45 device_list_changed_count_(0),
46 network_count_(0), 46 network_count_(0),
47 default_network_change_count_(0), 47 default_network_change_count_(0),
48 favorite_count_(0) { 48 favorite_count_(0) {
49 } 49 }
50 50
51 virtual ~TestObserver() { 51 virtual ~TestObserver() {
52 } 52 }
53 53
54 virtual void NetworkManagerChanged() OVERRIDE { 54 virtual void DeviceListChanged() OVERRIDE {
55 ++manager_changed_count_; 55 ++device_list_changed_count_;
56 } 56 }
57 57
58 virtual void NetworkListChanged() OVERRIDE { 58 virtual void NetworkListChanged() OVERRIDE {
59 NetworkStateHandler::NetworkStateList networks; 59 NetworkStateHandler::NetworkStateList networks;
60 handler_->GetNetworkList(&networks); 60 handler_->GetNetworkList(&networks);
61 network_count_ = networks.size(); 61 network_count_ = networks.size();
62 if (network_count_ == 0) { 62 if (network_count_ == 0) {
63 default_network_ = ""; 63 default_network_ = "";
64 default_network_connection_state_ = ""; 64 default_network_connection_state_ = "";
65 } 65 }
(...skipping 13 matching lines...) Expand all
79 const NetworkState* network) OVERRIDE { 79 const NetworkState* network) OVERRIDE {
80 network_connection_state_[network->path()] = network->connection_state(); 80 network_connection_state_[network->path()] = network->connection_state();
81 connection_state_changes_[network->path()]++; 81 connection_state_changes_[network->path()]++;
82 } 82 }
83 83
84 virtual void NetworkPropertiesUpdated(const NetworkState* network) OVERRIDE { 84 virtual void NetworkPropertiesUpdated(const NetworkState* network) OVERRIDE {
85 DCHECK(network); 85 DCHECK(network);
86 property_updates_[network->path()]++; 86 property_updates_[network->path()]++;
87 } 87 }
88 88
89 size_t manager_changed_count() { return manager_changed_count_; } 89 size_t device_list_changed_count() { return device_list_changed_count_; }
90 size_t network_count() { return network_count_; } 90 size_t network_count() { return network_count_; }
91 size_t default_network_change_count() { 91 size_t default_network_change_count() {
92 return default_network_change_count_; 92 return default_network_change_count_;
93 } 93 }
94 std::string default_network() { return default_network_; } 94 std::string default_network() { return default_network_; }
95 std::string default_network_connection_state() { 95 std::string default_network_connection_state() {
96 return default_network_connection_state_; 96 return default_network_connection_state_;
97 } 97 }
98 size_t favorite_count() { return favorite_count_; } 98 size_t favorite_count() { return favorite_count_; }
99 99
100 int PropertyUpdatesForService(const std::string& service_path) { 100 int PropertyUpdatesForService(const std::string& service_path) {
101 return property_updates_[service_path]; 101 return property_updates_[service_path];
102 } 102 }
103 103
104 int ConnectionStateChangesForService(const std::string& service_path) { 104 int ConnectionStateChangesForService(const std::string& service_path) {
105 return connection_state_changes_[service_path]; 105 return connection_state_changes_[service_path];
106 } 106 }
107 107
108 std::string NetworkConnectionStateForService( 108 std::string NetworkConnectionStateForService(
109 const std::string& service_path) { 109 const std::string& service_path) {
110 return network_connection_state_[service_path]; 110 return network_connection_state_[service_path];
111 } 111 }
112 112
113 private: 113 private:
114 NetworkStateHandler* handler_; 114 NetworkStateHandler* handler_;
115 size_t manager_changed_count_; 115 size_t device_list_changed_count_;
116 size_t network_count_; 116 size_t network_count_;
117 size_t default_network_change_count_; 117 size_t default_network_change_count_;
118 std::string default_network_; 118 std::string default_network_;
119 std::string default_network_connection_state_; 119 std::string default_network_connection_state_;
120 size_t favorite_count_; 120 size_t favorite_count_;
121 std::map<std::string, int> property_updates_; 121 std::map<std::string, int> property_updates_;
122 std::map<std::string, int> connection_state_changes_; 122 std::map<std::string, int> connection_state_changes_;
123 std::map<std::string, std::string> network_connection_state_; 123 std::map<std::string, std::string> network_connection_state_;
124 124
125 DISALLOW_COPY_AND_ASSIGN(TestObserver); 125 DISALLOW_COPY_AND_ASSIGN(TestObserver);
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
214 flimflam::kTypeEthernet)->path()); 214 flimflam::kTypeEthernet)->path());
215 EXPECT_EQ(kShillManagerClientStubDefaultWireless, 215 EXPECT_EQ(kShillManagerClientStubDefaultWireless,
216 network_state_handler_->ConnectedNetworkByType( 216 network_state_handler_->ConnectedNetworkByType(
217 NetworkStateHandler::kMatchTypeWireless)->path()); 217 NetworkStateHandler::kMatchTypeWireless)->path());
218 EXPECT_EQ(flimflam::kStateOnline, 218 EXPECT_EQ(flimflam::kStateOnline,
219 test_observer_->default_network_connection_state()); 219 test_observer_->default_network_connection_state());
220 } 220 }
221 221
222 TEST_F(NetworkStateHandlerTest, TechnologyChanged) { 222 TEST_F(NetworkStateHandlerTest, TechnologyChanged) {
223 // There may be several manager changes during initialization. 223 // There may be several manager changes during initialization.
224 size_t initial_changed_count = test_observer_->manager_changed_count(); 224 size_t initial_changed_count = test_observer_->device_list_changed_count();
225 // Disable a technology. 225 // Disable a technology.
226 network_state_handler_->SetTechnologyEnabled( 226 network_state_handler_->SetTechnologyEnabled(
227 flimflam::kTypeWimax, false, network_handler::ErrorCallback()); 227 flimflam::kTypeWimax, false, network_handler::ErrorCallback());
228 EXPECT_NE(NetworkStateHandler::TECHNOLOGY_ENABLED, 228 EXPECT_NE(NetworkStateHandler::TECHNOLOGY_ENABLED,
229 network_state_handler_->GetTechnologyState(flimflam::kTypeWimax)); 229 network_state_handler_->GetTechnologyState(flimflam::kTypeWimax));
230 EXPECT_EQ(initial_changed_count + 1, test_observer_->manager_changed_count()); 230 EXPECT_EQ(initial_changed_count + 1,
231 test_observer_->device_list_changed_count());
231 // Enable a technology. 232 // Enable a technology.
232 network_state_handler_->SetTechnologyEnabled( 233 network_state_handler_->SetTechnologyEnabled(
233 flimflam::kTypeWimax, true, network_handler::ErrorCallback()); 234 flimflam::kTypeWimax, true, network_handler::ErrorCallback());
234 // The technology state should immediately change to ENABLING and we should 235 // The technology state should immediately change to ENABLING and we should
235 // receive a manager changed callback. 236 // receive a manager changed callback.
236 EXPECT_EQ(initial_changed_count + 2, test_observer_->manager_changed_count()); 237 EXPECT_EQ(initial_changed_count + 2,
238 test_observer_->device_list_changed_count());
237 EXPECT_EQ(NetworkStateHandler::TECHNOLOGY_ENABLING, 239 EXPECT_EQ(NetworkStateHandler::TECHNOLOGY_ENABLING,
238 network_state_handler_->GetTechnologyState(flimflam::kTypeWimax)); 240 network_state_handler_->GetTechnologyState(flimflam::kTypeWimax));
239 message_loop_.RunUntilIdle(); 241 message_loop_.RunUntilIdle();
240 // Ensure we receive 2 manager changed callbacks when the technology becomes 242 // Ensure we receive 2 manager changed callbacks when the technology becomes
241 // avalable and enabled. 243 // avalable and enabled.
242 EXPECT_EQ(initial_changed_count + 4, test_observer_->manager_changed_count()); 244 EXPECT_EQ(initial_changed_count + 4,
245 test_observer_->device_list_changed_count());
243 EXPECT_EQ(NetworkStateHandler::TECHNOLOGY_ENABLED, 246 EXPECT_EQ(NetworkStateHandler::TECHNOLOGY_ENABLED,
244 network_state_handler_->GetTechnologyState(flimflam::kTypeWimax)); 247 network_state_handler_->GetTechnologyState(flimflam::kTypeWimax));
245 } 248 }
246 249
247 TEST_F(NetworkStateHandlerTest, TechnologyState) { 250 TEST_F(NetworkStateHandlerTest, TechnologyState) {
248 ShillManagerClient::TestInterface* manager_test = 251 ShillManagerClient::TestInterface* manager_test =
249 DBusThreadManager::Get()->GetShillManagerClient()->GetTestInterface(); 252 DBusThreadManager::Get()->GetShillManagerClient()->GetTestInterface();
250 manager_test->RemoveTechnology(flimflam::kTypeWimax); 253 manager_test->RemoveTechnology(flimflam::kTypeWimax);
251 message_loop_.RunUntilIdle(); 254 message_loop_.RunUntilIdle();
252 EXPECT_EQ(NetworkStateHandler::TECHNOLOGY_UNAVAILABLE, 255 EXPECT_EQ(NetworkStateHandler::TECHNOLOGY_UNAVAILABLE,
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after
391 // Other networks should have 2 updates (inital + request). 394 // Other networks should have 2 updates (inital + request).
392 EXPECT_EQ(2, test_observer_->PropertyUpdatesForService( 395 EXPECT_EQ(2, test_observer_->PropertyUpdatesForService(
393 kShillManagerClientStubDefaultService)); 396 kShillManagerClientStubDefaultService));
394 EXPECT_EQ(2, test_observer_->PropertyUpdatesForService( 397 EXPECT_EQ(2, test_observer_->PropertyUpdatesForService(
395 kShillManagerClientStubWireless2)); 398 kShillManagerClientStubWireless2));
396 EXPECT_EQ(2, test_observer_->PropertyUpdatesForService( 399 EXPECT_EQ(2, test_observer_->PropertyUpdatesForService(
397 kShillManagerClientStubCellular)); 400 kShillManagerClientStubCellular));
398 } 401 }
399 402
400 } // namespace chromeos 403 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698