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

Side by Side Diff: chrome/browser/chromeos/login/network_screen_browsertest.cc

Issue 2010001: Refactor WifiNetwork, CellularNetwork, and EthernetNetwork into classes to ma... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 10 years, 7 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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 <string> 5 #include <string>
6 6
7 #include "app/combobox_model.h" 7 #include "app/combobox_model.h"
8 #include "app/l10n_util.h" 8 #include "app/l10n_util.h"
9 #include "base/message_loop.h" 9 #include "base/message_loop.h"
10 #include "base/scoped_ptr.h" 10 #include "base/scoped_ptr.h"
(...skipping 19 matching lines...) Expand all
30 using ::testing::AnyNumber; 30 using ::testing::AnyNumber;
31 using ::testing::InvokeWithoutArgs; 31 using ::testing::InvokeWithoutArgs;
32 using ::testing::Return; 32 using ::testing::Return;
33 using ::testing::ReturnRef; 33 using ::testing::ReturnRef;
34 using ::testing::_; 34 using ::testing::_;
35 using ::testing::A; 35 using ::testing::A;
36 36
37 class NetworkScreenTest : public WizardInProcessBrowserTest { 37 class NetworkScreenTest : public WizardInProcessBrowserTest {
38 public: 38 public:
39 NetworkScreenTest(): WizardInProcessBrowserTest("network") { 39 NetworkScreenTest(): WizardInProcessBrowserTest("network") {
40 cellular_.name = "Cellular network"; 40 cellular_.set_name("Cellular network");
41 wifi_.ssid = "WiFi network"; 41 wifi_.set_name("WiFi network");
42 } 42 }
43 43
44 protected: 44 protected:
45 virtual void SetUpInProcessBrowserTestFixture() { 45 virtual void SetUpInProcessBrowserTestFixture() {
46 InitStatusAreaMocks(); 46 InitStatusAreaMocks();
47 47
48 mock_login_library_ = new MockLoginLibrary(); 48 mock_login_library_ = new MockLoginLibrary();
49 test_api()->SetLoginLibrary(mock_login_library_, true); 49 test_api()->SetLoginLibrary(mock_login_library_, true);
50 EXPECT_CALL(*mock_login_library_, EmitLoginPromptReady()) 50 EXPECT_CALL(*mock_login_library_, EmitLoginPromptReady())
51 .Times(1); 51 .Times(1);
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 EXPECT_CALL(*mock_network_library_, wifi_connected()) 91 EXPECT_CALL(*mock_network_library_, wifi_connected())
92 .Times(1) 92 .Times(1)
93 .WillOnce((Return(connected))); 93 .WillOnce((Return(connected)));
94 EXPECT_CALL(*mock_network_library_, wifi_connecting()) 94 EXPECT_CALL(*mock_network_library_, wifi_connecting())
95 .Times(1) 95 .Times(1)
96 .WillOnce((Return(connecting))); 96 .WillOnce((Return(connecting)));
97 } 97 }
98 98
99 void SetupWifiNetwork(bool connected, bool connecting) { 99 void SetupWifiNetwork(bool connected, bool connecting) {
100 wifi_networks_.clear(); 100 wifi_networks_.clear();
101 wifi_.connected = connected; 101 wifi_.set_connected(connected);
102 wifi_.connecting = connecting; 102 wifi_.set_connecting(connecting);
103 wifi_networks_.push_back(wifi_); 103 wifi_networks_.push_back(wifi_);
104 } 104 }
105 105
106 void SetupCellularNetwork(bool connected, bool connecting) { 106 void SetupCellularNetwork(bool connected, bool connecting) {
107 cellular_networks_.clear(); 107 cellular_networks_.clear();
108 cellular_.connected = connected; 108 cellular_.set_connected(connected);
109 cellular_.connecting = connecting; 109 cellular_.set_connecting(connecting);
110 cellular_networks_.push_back(cellular_); 110 cellular_networks_.push_back(cellular_);
111 } 111 }
112 112
113 void CellularExpectations(bool connected, bool connecting) { 113 void CellularExpectations(bool connected, bool connecting) {
114 EXPECT_CALL(*mock_network_library_, cellular_connected()) 114 EXPECT_CALL(*mock_network_library_, cellular_connected())
115 .Times(1) 115 .Times(1)
116 .WillOnce((Return(connected))); 116 .WillOnce((Return(connected)));
117 EXPECT_CALL(*mock_network_library_, cellular_connecting()) 117 EXPECT_CALL(*mock_network_library_, cellular_connecting())
118 .Times(1) 118 .Times(1)
119 .WillOnce((Return(connecting))); 119 .WillOnce((Return(connecting)));
120 } 120 }
121 121
122 void WifiCellularNetworksExpectations() { 122 void WifiCellularNetworksExpectations() {
123 EXPECT_CALL(*mock_network_library_, wifi_networks()) 123 EXPECT_CALL(*mock_network_library_, wifi_networks())
124 .Times(1) 124 .Times(1)
125 .WillOnce((ReturnRef(wifi_networks_))); 125 .WillOnce((ReturnRef(wifi_networks_)));
126 EXPECT_CALL(*mock_network_library_, cellular_networks()) 126 EXPECT_CALL(*mock_network_library_, cellular_networks())
127 .Times(1) 127 .Times(1)
128 .WillOnce((ReturnRef(cellular_networks_))); 128 .WillOnce((ReturnRef(cellular_networks_)));
129 } 129 }
130 130
131 void WifiSsidExpectation(const std::string& ssid) { 131 void WifiSsidExpectation(const std::string& ssid) {
132 EXPECT_CALL(*mock_network_library_, wifi_ssid()) 132 EXPECT_CALL(*mock_network_library_, wifi_name())
133 .Times(1) 133 .Times(1)
134 .WillOnce((ReturnRef(ssid))); 134 .WillOnce((ReturnRef(ssid)));
135 } 135 }
136 136
137 void CellularNameExpectation(const std::string& name) { 137 void CellularNameExpectation(const std::string& name) {
138 EXPECT_CALL(*mock_network_library_, cellular_name()) 138 EXPECT_CALL(*mock_network_library_, cellular_name())
139 .Times(1) 139 .Times(1)
140 .WillOnce((ReturnRef(name))); 140 .WillOnce((ReturnRef(name)));
141 } 141 }
142 142
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
193 EXPECT_EQ(l10n_util::GetString(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET), 193 EXPECT_EQ(l10n_util::GetString(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET),
194 network_screen->GetItemAt(1)); 194 network_screen->GetItemAt(1));
195 195
196 // Ethernet - disconnected, WiFi & Cellular - connected. 196 // Ethernet - disconnected, WiFi & Cellular - connected.
197 EthernetExpectations(false, false); 197 EthernetExpectations(false, false);
198 SetupWifiNetwork(true, false); 198 SetupWifiNetwork(true, false);
199 WifiExpectations(true, false); 199 WifiExpectations(true, false);
200 SetupCellularNetwork(true, false); 200 SetupCellularNetwork(true, false);
201 CellularExpectations(true, false); 201 CellularExpectations(true, false);
202 WifiCellularNetworksExpectations(); 202 WifiCellularNetworksExpectations();
203 WifiSsidExpectation(wifi_.ssid); 203 WifiSsidExpectation(wifi_.name());
204 CellularNameExpectation(cellular_.name); 204 CellularNameExpectation(cellular_.name());
205 network_screen->NetworkChanged(network_library); 205 network_screen->NetworkChanged(network_library);
206 ASSERT_EQ(network_screen, controller()->current_screen()); 206 ASSERT_EQ(network_screen, controller()->current_screen());
207 ASSERT_EQ(3, network_screen->GetItemCount()); 207 ASSERT_EQ(3, network_screen->GetItemCount());
208 EXPECT_EQ(ASCIIToWide(wifi_.ssid), network_screen->GetItemAt(1)); 208 EXPECT_EQ(ASCIIToWide(wifi_.name()), network_screen->GetItemAt(1));
209 EXPECT_EQ(ASCIIToWide(cellular_.name), network_screen->GetItemAt(2)); 209 EXPECT_EQ(ASCIIToWide(cellular_.name()), network_screen->GetItemAt(2));
210 210
211 // Ethernet, WiFi & Cellular - connected. 211 // Ethernet, WiFi & Cellular - connected.
212 EthernetExpectations(true, false); 212 EthernetExpectations(true, false);
213 WifiExpectations(true, false); 213 WifiExpectations(true, false);
214 CellularExpectations(true, false); 214 CellularExpectations(true, false);
215 WifiCellularNetworksExpectations(); 215 WifiCellularNetworksExpectations();
216 WifiSsidExpectation(wifi_.ssid); 216 WifiSsidExpectation(wifi_.name());
217 CellularNameExpectation(cellular_.name); 217 CellularNameExpectation(cellular_.name());
218 network_screen->NetworkChanged(network_library); 218 network_screen->NetworkChanged(network_library);
219 ASSERT_EQ(network_screen, controller()->current_screen()); 219 ASSERT_EQ(network_screen, controller()->current_screen());
220 ASSERT_EQ(4, network_screen->GetItemCount()); 220 ASSERT_EQ(4, network_screen->GetItemCount());
221 EXPECT_EQ(l10n_util::GetString(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET), 221 EXPECT_EQ(l10n_util::GetString(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET),
222 network_screen->GetItemAt(1)); 222 network_screen->GetItemAt(1));
223 EXPECT_EQ(ASCIIToWide(wifi_.ssid), network_screen->GetItemAt(2)); 223 EXPECT_EQ(ASCIIToWide(wifi_.name()), network_screen->GetItemAt(2));
224 EXPECT_EQ(ASCIIToWide(cellular_.name), network_screen->GetItemAt(3)); 224 EXPECT_EQ(ASCIIToWide(cellular_.name()), network_screen->GetItemAt(3));
225 } 225 }
226 226
227 IN_PROC_BROWSER_TEST_F(NetworkScreenTest, EthernetSelected) { 227 IN_PROC_BROWSER_TEST_F(NetworkScreenTest, EthernetSelected) {
228 ASSERT_TRUE(controller()); 228 ASSERT_TRUE(controller());
229 NetworkLibrary* network_library = 229 NetworkLibrary* network_library =
230 chromeos::CrosLibrary::Get()->GetNetworkLibrary(); 230 chromeos::CrosLibrary::Get()->GetNetworkLibrary();
231 NetworkScreen* network_screen = controller()->GetNetworkScreen(); 231 NetworkScreen* network_screen = controller()->GetNetworkScreen();
232 ASSERT_TRUE(network_screen != NULL); 232 ASSERT_TRUE(network_screen != NULL);
233 NetworkSelectionView* network_view = network_screen->view(); 233 NetworkSelectionView* network_view = network_screen->view();
234 ASSERT_TRUE(network_view != NULL); 234 ASSERT_TRUE(network_view != NULL);
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
274 ASSERT_TRUE(network_screen != NULL); 274 ASSERT_TRUE(network_screen != NULL);
275 NetworkSelectionView* network_view = network_screen->view(); 275 NetworkSelectionView* network_view = network_screen->view();
276 ASSERT_TRUE(network_view != NULL); 276 ASSERT_TRUE(network_view != NULL);
277 277
278 EthernetExpectations(false, false); 278 EthernetExpectations(false, false);
279 SetupWifiNetwork(false, false); 279 SetupWifiNetwork(false, false);
280 WifiCellularNetworksExpectations(); 280 WifiCellularNetworksExpectations();
281 WifiSsidExpectation(std::string()); 281 WifiSsidExpectation(std::string());
282 network_screen->NetworkChanged(network_library); 282 network_screen->NetworkChanged(network_library);
283 ASSERT_EQ(2, network_screen->GetItemCount()); 283 ASSERT_EQ(2, network_screen->GetItemCount());
284 EXPECT_EQ(ASCIIToWide(wifi_.ssid), network_screen->GetItemAt(1)); 284 EXPECT_EQ(ASCIIToWide(wifi_.name()), network_screen->GetItemAt(1));
285 285
286 DummyComboboxModel combobox_model; 286 DummyComboboxModel combobox_model;
287 views::Combobox combobox(&combobox_model); 287 views::Combobox combobox(&combobox_model);
288 288
289 // Emulate combobox selection. 289 // Emulate combobox selection.
290 EthernetExpectations(false, false); 290 EthernetExpectations(false, false);
291 WifiCellularNetworksExpectations(); 291 WifiCellularNetworksExpectations();
292 WifiSsidExpectation(std::string()); 292 WifiSsidExpectation(std::string());
293 network_screen->ItemChanged(&combobox, 0, 1); 293 network_screen->ItemChanged(&combobox, 0, 1);
294 network_view->SetSelectedNetworkItem(1); 294 network_view->SetSelectedNetworkItem(1);
295 EXPECT_CALL(*mock_network_library_, 295 EXPECT_CALL(*mock_network_library_,
296 ConnectToWifiNetwork(A<WifiNetwork>(), string16(), string16(), 296 ConnectToWifiNetwork(A<WifiNetwork>(), string16(), string16(),
297 string16())) 297 string16()))
298 .Times(1); 298 .Times(1);
299 ui_test_utils::RunAllPendingInMessageLoop(); 299 ui_test_utils::RunAllPendingInMessageLoop();
300 ASSERT_EQ(2, network_screen->GetItemCount()); 300 ASSERT_EQ(2, network_screen->GetItemCount());
301 301
302 // Emulate connecting to WiFi network. 302 // Emulate connecting to WiFi network.
303 EthernetExpectations(false, false); 303 EthernetExpectations(false, false);
304 SetupWifiNetwork(false, true); 304 SetupWifiNetwork(false, true);
305 WifiExpectations(false, true); 305 WifiExpectations(false, true);
306 WifiCellularNetworksExpectations(); 306 WifiCellularNetworksExpectations();
307 WifiSsidExpectation(wifi_.ssid); 307 WifiSsidExpectation(wifi_.name());
308 network_screen->NetworkChanged(network_library); 308 network_screen->NetworkChanged(network_library);
309 ASSERT_EQ(network_screen, controller()->current_screen()); 309 ASSERT_EQ(network_screen, controller()->current_screen());
310 310
311 scoped_ptr<MockScreenObserver> mock_screen_observer(new MockScreenObserver()); 311 scoped_ptr<MockScreenObserver> mock_screen_observer(new MockScreenObserver());
312 EXPECT_CALL(*mock_screen_observer, 312 EXPECT_CALL(*mock_screen_observer,
313 OnExit(ScreenObserver::NETWORK_CONNECTED)) 313 OnExit(ScreenObserver::NETWORK_CONNECTED))
314 .Times(1); 314 .Times(1);
315 controller()->set_observer(mock_screen_observer.get()); 315 controller()->set_observer(mock_screen_observer.get());
316 316
317 // Emulate connected WiFi network. 317 // Emulate connected WiFi network.
318 EthernetExpectations(false, false); 318 EthernetExpectations(false, false);
319 SetupWifiNetwork(true, false); 319 SetupWifiNetwork(true, false);
320 WifiExpectations(true, false); 320 WifiExpectations(true, false);
321 WifiCellularNetworksExpectations(); 321 WifiCellularNetworksExpectations();
322 WifiSsidExpectation(wifi_.ssid); 322 WifiSsidExpectation(wifi_.name());
323 network_screen->NetworkChanged(network_library); 323 network_screen->NetworkChanged(network_library);
324 ui_test_utils::RunAllPendingInMessageLoop(); 324 ui_test_utils::RunAllPendingInMessageLoop();
325 controller()->set_observer(NULL); 325 controller()->set_observer(NULL);
326 } 326 }
327 327
328 IN_PROC_BROWSER_TEST_F(NetworkScreenTest, CellularSelected) { 328 IN_PROC_BROWSER_TEST_F(NetworkScreenTest, CellularSelected) {
329 ASSERT_TRUE(controller()); 329 ASSERT_TRUE(controller());
330 NetworkLibrary* network_library = 330 NetworkLibrary* network_library =
331 chromeos::CrosLibrary::Get()->GetNetworkLibrary(); 331 chromeos::CrosLibrary::Get()->GetNetworkLibrary();
332 NetworkScreen* network_screen = controller()->GetNetworkScreen(); 332 NetworkScreen* network_screen = controller()->GetNetworkScreen();
333 ASSERT_TRUE(network_screen != NULL); 333 ASSERT_TRUE(network_screen != NULL);
334 NetworkSelectionView* network_view = network_screen->view(); 334 NetworkSelectionView* network_view = network_screen->view();
335 ASSERT_TRUE(network_view != NULL); 335 ASSERT_TRUE(network_view != NULL);
336 336
337 EthernetExpectations(false, false); 337 EthernetExpectations(false, false);
338 SetupCellularNetwork(false, false); 338 SetupCellularNetwork(false, false);
339 WifiCellularNetworksExpectations(); 339 WifiCellularNetworksExpectations();
340 CellularNameExpectation(std::string()); 340 CellularNameExpectation(std::string());
341 network_screen->NetworkChanged(network_library); 341 network_screen->NetworkChanged(network_library);
342 ASSERT_EQ(2, network_screen->GetItemCount()); 342 ASSERT_EQ(2, network_screen->GetItemCount());
343 EXPECT_EQ(ASCIIToWide(cellular_.name), network_screen->GetItemAt(1)); 343 EXPECT_EQ(ASCIIToWide(cellular_.name()), network_screen->GetItemAt(1));
344 344
345 DummyComboboxModel combobox_model; 345 DummyComboboxModel combobox_model;
346 views::Combobox combobox(&combobox_model); 346 views::Combobox combobox(&combobox_model);
347 347
348 // Emulate combobox selection. 348 // Emulate combobox selection.
349 EthernetExpectations(false, false); 349 EthernetExpectations(false, false);
350 WifiCellularNetworksExpectations(); 350 WifiCellularNetworksExpectations();
351 CellularNameExpectation(std::string()); 351 CellularNameExpectation(std::string());
352 network_screen->ItemChanged(&combobox, 0, 1); 352 network_screen->ItemChanged(&combobox, 0, 1);
353 network_view->SetSelectedNetworkItem(1); 353 network_view->SetSelectedNetworkItem(1);
354 EXPECT_CALL(*mock_network_library_, ConnectToCellularNetwork(_)) 354 EXPECT_CALL(*mock_network_library_, ConnectToCellularNetwork(_))
355 .Times(1); 355 .Times(1);
356 ui_test_utils::RunAllPendingInMessageLoop(); 356 ui_test_utils::RunAllPendingInMessageLoop();
357 ASSERT_EQ(2, network_screen->GetItemCount()); 357 ASSERT_EQ(2, network_screen->GetItemCount());
358 358
359 // Emulate connecting to cellular network. 359 // Emulate connecting to cellular network.
360 EthernetExpectations(false, false); 360 EthernetExpectations(false, false);
361 SetupCellularNetwork(false, true); 361 SetupCellularNetwork(false, true);
362 CellularExpectations(false, true); 362 CellularExpectations(false, true);
363 WifiCellularNetworksExpectations(); 363 WifiCellularNetworksExpectations();
364 CellularNameExpectation(cellular_.name); 364 CellularNameExpectation(cellular_.name());
365 network_screen->NetworkChanged(network_library); 365 network_screen->NetworkChanged(network_library);
366 ASSERT_EQ(network_screen, controller()->current_screen()); 366 ASSERT_EQ(network_screen, controller()->current_screen());
367 367
368 scoped_ptr<MockScreenObserver> mock_screen_observer(new MockScreenObserver()); 368 scoped_ptr<MockScreenObserver> mock_screen_observer(new MockScreenObserver());
369 EXPECT_CALL(*mock_screen_observer, 369 EXPECT_CALL(*mock_screen_observer,
370 OnExit(ScreenObserver::NETWORK_CONNECTED)) 370 OnExit(ScreenObserver::NETWORK_CONNECTED))
371 .Times(1); 371 .Times(1);
372 controller()->set_observer(mock_screen_observer.get()); 372 controller()->set_observer(mock_screen_observer.get());
373 373
374 // Emulate connected cellular network. 374 // Emulate connected cellular network.
375 EthernetExpectations(false, false); 375 EthernetExpectations(false, false);
376 SetupCellularNetwork(true, false); 376 SetupCellularNetwork(true, false);
377 CellularExpectations(true, false); 377 CellularExpectations(true, false);
378 WifiCellularNetworksExpectations(); 378 WifiCellularNetworksExpectations();
379 CellularNameExpectation(cellular_.name); 379 CellularNameExpectation(cellular_.name());
380 network_screen->NetworkChanged(network_library); 380 network_screen->NetworkChanged(network_library);
381 ui_test_utils::RunAllPendingInMessageLoop(); 381 ui_test_utils::RunAllPendingInMessageLoop();
382 controller()->set_observer(NULL); 382 controller()->set_observer(NULL);
383 } 383 }
384 384
385 } // namespace chromeos 385 } // namespace chromeos
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/login/network_screen.cc ('k') | chrome/browser/chromeos/network_list.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698