diff options
Diffstat (limited to 'server/site_tests/network_WiFi_LinkMonitorFailure/network_WiFi_LinkMonitorFailure.py')
-rw-r--r-- | server/site_tests/network_WiFi_LinkMonitorFailure/network_WiFi_LinkMonitorFailure.py | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/server/site_tests/network_WiFi_LinkMonitorFailure/network_WiFi_LinkMonitorFailure.py b/server/site_tests/network_WiFi_LinkMonitorFailure/network_WiFi_LinkMonitorFailure.py deleted file mode 100644 index 69dc13baa1..0000000000 --- a/server/site_tests/network_WiFi_LinkMonitorFailure/network_WiFi_LinkMonitorFailure.py +++ /dev/null @@ -1,77 +0,0 @@ -# Copyright 2015 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -import logging -import time - -from autotest_lib.client.common_lib import error -from autotest_lib.client.common_lib.cros.network import xmlrpc_datatypes -from autotest_lib.server.cros.network import hostap_config -from autotest_lib.server.cros.network import wifi_cell_test_base - - -class network_WiFi_LinkMonitorFailure(wifi_cell_test_base.WiFiCellTestBase): - """Test how a DUT behaves when the network link disappears. - - Connects a DUT to an AP, then silently change the gateway IP on the AP - to simulate network link disappearance. Determine the time the DUT take - to detect link failure and the time for the subsequent reassociation - request. - - """ - - version = 1 - - # Passive link monitor takes 25 seconds to fail, active link monitor - # takes upto 50 seconds to fail (unicast ARP failures doesn't count since - # unicast ARP gateway support is not established). - LINK_FAILURE_MAX_SECONDS = 80 - REASSOCIATE_TIMEOUT_SECONDS = 10 - - def run_once(self): - """Body of the test.""" - # Establish a connection with an AP. - ap_config = hostap_config.HostapConfig(channel=1) - self.context.configure(ap_config) - ssid = self.context.router.get_ssid() - client_config = xmlrpc_datatypes.AssociationParameters(ssid=ssid) - self.context.assert_connect_wifi(client_config) - self.context.assert_ping_from_dut() - - with self.context.client.iw_runner.get_event_logger() as logger: - logger.start() - - # Restart local server with a different address index. This will - # simulate the disappearance of the network link from the client's - # point of view. - logging.info("Restart local server with different address") - self.context.router.change_server_address_index() - - # wait for the timeout seconds for link failure and reassociation - # to complete. - time.sleep(self.LINK_FAILURE_MAX_SECONDS + - self.REASSOCIATE_TIMEOUT_SECONDS) - logger.stop() - - # Link failure detection time. - link_failure_time = logger.get_time_to_disconnected() - if link_failure_time is None: - # Some drivers perform a true Reassociation, without disconnect. - # See also https://crbug.com/990012. - logging.info('Failed to disconnect within timeout; ' - 'this is expected for some drivers') - elif link_failure_time > self.LINK_FAILURE_MAX_SECONDS: - raise error.TestFail( - 'Failed to detect link failure within given timeout') - else: - logging.info('Link failure detection time: %.2f seconds', - link_failure_time) - - # Reassociation time. - reassociate_time = logger.get_reassociation_time() - if (reassociate_time is None or - reassociate_time > self.REASSOCIATE_TIMEOUT_SECONDS): - raise error.TestFail( - 'Failed to reassociate within given timeout') - logging.info('Reassociate time: %.2f seconds', reassociate_time) |