summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordeepakg@google.com <deepakg@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-22 02:17:46 +0000
committerdeepakg@google.com <deepakg@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-22 02:17:46 +0000
commit5c5517c3df6ea2944338065e28ede8707b5136c5 (patch)
tree4c2cdd09d044e60d102434d9e24af4b93fc17096
parent50e4f009a00cc0fd3d49f49d3a38e7743706fcd7 (diff)
downloadchromium_src-5c5517c3df6ea2944338065e28ede8707b5136c5.zip
chromium_src-5c5517c3df6ea2944338065e28ede8707b5136c5.tar.gz
chromium_src-5c5517c3df6ea2944338065e28ede8707b5136c5.tar.bz2
Added 4 new pyauto tests.
Review URL: http://codereview.chromium.org/8586013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111079 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/test/functional/chromeos_wifi_functional.py115
1 files changed, 112 insertions, 3 deletions
diff --git a/chrome/test/functional/chromeos_wifi_functional.py b/chrome/test/functional/chromeos_wifi_functional.py
index e8c836d..3de27c3 100644
--- a/chrome/test/functional/chromeos_wifi_functional.py
+++ b/chrome/test/functional/chromeos_wifi_functional.py
@@ -17,10 +17,14 @@ class ChromeosWifiFunctional(chromeos_network.PyNetworkUITest):
routers are attached.
"""
- def _LoginDevice(self):
- """Logs into the device and cleans up flimflam profile."""
+ def _LoginDevice(self, test_account='test_google_account'):
+ """Logs into the device and cleans up flimflam profile.
+
+ Args:
+ test_account: The account used to login to the device.
+ """
if not self.GetLoginInfo()['is_logged_in']:
- credentials = self.GetPrivateInfo()['test_google_account']
+ credentials = self.GetPrivateInfo()[test_account]
self.Login(credentials['username'], credentials['password'])
login_info = self.GetLoginInfo()
self.assertTrue(login_info['is_logged_in'], msg='Login failed.')
@@ -58,6 +62,36 @@ class ChromeosWifiFunctional(chromeos_network.PyNetworkUITest):
is_hidden=router.get('hidden'))
return router
+ def _VerifyIfConnectedToNetwork(self, network_ssid, status='Online state'):
+ """Verify if we are connected to the network.
+
+ The test calling this function will fail for one of these three reasons:
+ 1. The server path for the SSID is not found.
+ 2. If we are not connected to the network.
+ 3. If we did not find the network in the wifi_networks list.
+
+ Args:
+ newtork_ssid: The network to which we are supposed to be connected to.
+ status: The status that we expect the network to have, by default it
+ would be 'Online state'.
+ """
+ service_path = self.GetServicePath(network_ssid)
+ self.assertTrue(service_path is not None,
+ msg='Could not find a service path for the given ssid %s.' %
+ network_ssid)
+ wifi_network = self.NetworkScan()['wifi_networks']
+ for path in wifi_network:
+ if path == service_path:
+ self.assertTrue(
+ wifi_network[path]['status'] == status,
+ msg='Unexpected network status %s, Network %s should have '
+ 'status %s.' % (wifi_network[path]['status'],
+ network_ssid, status))
+ break;
+ else:
+ self.fail(msg='Did not find the network %s in the '
+ 'wifi_networks list.' % network_ssid)
+
def testConnectShareEncryptedNetwork(self):
"""A shared encrypted network can connect and is remembered.
@@ -96,6 +130,81 @@ class ChromeosWifiFunctional(chromeos_network.PyNetworkUITest):
self.assertFalse(service_path in self.GetNetworkInfo()['remembered_wifi'],
'Connected wifi was not removed from the remembered list.')
+ def testConnectToSharedOpenNetwork(self):
+ """Can connect to a shared open network.
+
+ Verify that the connected network is in the remembered network list
+ for all the users.
+ """
+ router_name = 'Trendnet_639gr_4'
+ self._LoginDevice()
+ router = self._SetupRouter(router_name)
+ error = self.ConnectToWifiRouter(router_name)
+ self.assertFalse(error, msg='Failed to connect to wifi network %s. '
+ 'Reason: %s.' % (router['ssid'], error))
+ service_path = self.GetServicePath(router['ssid'])
+ self.assertTrue(service_path in self.GetNetworkInfo()['remembered_wifi'],
+ msg='Open wifi is not remembered for the current user.')
+ self.Logout()
+ self._LoginDevice(test_account='test_google_account_2')
+ self.assertTrue(service_path in self.NetworkScan()['remembered_wifi'],
+ msg='Open network is not shared with other users.')
+
+ def testConnectToSharedHiddenNetwork(self):
+ """Can connect to shared hidden network and verify that it's shared."""
+ router_name = 'Netgear_WGR614'
+ self._LoginDevice()
+ router = self._SetupRouter(router_name)
+ error = self.ConnectToWifiRouter(router_name)
+ self.assertFalse(error, msg='Failed to connect to hidden network %s. '
+ 'Reason: %s.' % (router['ssid'], error))
+ service_path = self.GetServicePath(router['ssid'])
+ self.assertTrue(service_path in self.NetworkScan()['remembered_wifi'],
+ msg='Hidden network is not added to the remembered list.')
+ self.Logout()
+ self._LoginDevice(test_account='test_google_account_2')
+ self.assertTrue(service_path in self.NetworkScan()['remembered_wifi'],
+ msg='Shared hidden network is not in other user\'s '
+ 'remembered list.')
+
+ def testConnectToNonSharedHiddenNetwork(self):
+ """Can connect to a non-shared hidden network.
+
+ Verify that it is not shared with other users.
+ """
+ router_name = 'Linksys_WRT54GL'
+ self._LoginDevice()
+ router = self._SetupRouter(router_name)
+ error = self.ConnectToWifiRouter(router_name, shared=False)
+ self.assertFalse(error, msg='Failed to connect to hidden network %s. '
+ 'Reason: %s.' % (router['ssid'], error))
+ service_path = self.GetServicePath(router['ssid'])
+ self.assertTrue(service_path in self.NetworkScan()['remembered_wifi'],
+ msg='Hidden network is not added to the remembered list.')
+ self.Logout()
+ self._LoginDevice(test_account='test_google_account_2')
+ self.assertFalse(service_path in self.NetworkScan()['remembered_wifi'],
+ msg='Non-shared hidden network %s is shared.'
+ % router['ssid'])
+
+ def testConnectToEncryptedNetworkInLoginScreen(self):
+ """Can connect to encrypted network in login screen.
+
+ Verify that this network is in the remembered list after login.
+ """
+ router_name = 'Belkin_G'
+ if self.GetLoginInfo()['is_logged_in']:
+ self.Logout()
+ router = self._SetupRouter(router_name)
+ error = self.ConnectToWifiRouter(router_name)
+ self.assertFalse(error, 'Failed to connect to wifi network %s. '
+ 'Reason: %s.' % (router['ssid'], error))
+ service_path = self.GetServicePath(router['ssid'])
+ self._VerifyIfConnectedToNetwork(router['ssid'], 'Connected')
+ self._LoginDevice()
+ self.assertTrue(service_path in self.NetworkScan()['remembered_wifi'],
+ msg='Network is not added to the remembered list.')
+
if __name__ == '__main__':
pyauto_functional.Main()