summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOmar El Ayach <oelayach@google.com>2018-11-01 22:05:04 -0700
committerOmar El Ayach <oelayach@google.com>2018-11-08 06:17:19 +0000
commit7c2d016513405145b4c184e713fee9403099a14a (patch)
treef28fcf75873e07e0fe8b6f3bc3e7eac14b4f010e
parent5e5ee839f903e6105440b14650d3061e2a3872f7 (diff)
downloadplatform_tools_test_connectivity-7c2d016513405145b4c184e713fee9403099a14a.tar.gz
platform_tools_test_connectivity-7c2d016513405145b4c184e713fee9403099a14a.tar.bz2
platform_tools_test_connectivity-7c2d016513405145b4c184e713fee9403099a14a.zip
Temporarily navigate to a backup_url when intended URL is unreachable
am: 26a62588d7 Test: Done Bug: 65563975 Change-Id: I6716ea3adc0e2e22e1d425e4aa08e055dfacc074 (cherry picked from commit d8f8575d01b7b050e750a645d0e859a84c63c052)
-rw-r--r--acts/framework/acts/test_utils/wifi/wifi_retail_ap.py20
1 files changed, 15 insertions, 5 deletions
diff --git a/acts/framework/acts/test_utils/wifi/wifi_retail_ap.py b/acts/framework/acts/test_utils/wifi/wifi_retail_ap.py
index 8949bb1b54..6efa6af248 100644
--- a/acts/framework/acts/test_utils/wifi/wifi_retail_ap.py
+++ b/acts/framework/acts/test_utils/wifi/wifi_retail_ap.py
@@ -126,7 +126,11 @@ class BlockingBrowser(splinter.driver.webdriver.chrome.WebDriver):
self.quit()
self.__enter__()
- def visit_persistent(self, url, page_load_timeout, num_tries):
+ def visit_persistent(self,
+ url,
+ page_load_timeout,
+ num_tries,
+ backup_url="about:blank"):
"""Method to visit webpages and retry upon failure.
The function visits a web page and checks the the resulting URL matches
@@ -136,15 +140,20 @@ class BlockingBrowser(splinter.driver.webdriver.chrome.WebDriver):
url: the intended url
page_load_timeout: timeout for page visits
num_tries: number of tries before url is declared unreachable
+ backup_url: url to visit if first url is not reachable. This can be
+ use to simply refresh the browser and try again or to re-login to
+ the AP
"""
self.driver.set_page_load_timeout(page_load_timeout)
for idx in range(num_tries):
try:
self.visit(url)
+ if self.url.split("/")[-1] == url.split("/")[-1]:
+ break
+ else:
+ self.visit(backup_url)
except:
self.restart()
- if self.url.split("/")[-1] == url.split("/")[-1]:
- break
if idx == num_tries - 1:
self.log.error("URL unreachable. Current URL: {}".format(
self.url))
@@ -479,7 +488,7 @@ class NetgearR7000AP(WifiRetailAP):
# Visit URL
browser.visit_persistent(self.config_page, BROWSER_WAIT_MED, 10)
browser.visit_persistent(self.config_page_nologin,
- BROWSER_WAIT_MED, 10)
+ BROWSER_WAIT_MED, 10, self.config_page)
# Update region, and power/bandwidth for each network
for key, value in self.config_page_fields.items():
@@ -815,7 +824,7 @@ class NetgearR7500AP(WifiRetailAP):
browser.visit_persistent(self.config_page, BROWSER_WAIT_MED, 10)
browser.visit_persistent(self.config_page_advanced,
BROWSER_WAIT_MED, 10)
- time.sleep(BROWSER_WAIT_SHORT)
+ time.sleep(BROWSER_WAIT_MED)
wireless_button = browser.find_by_id("advanced_bt").first
wireless_button.click()
time.sleep(BROWSER_WAIT_SHORT)
@@ -853,6 +862,7 @@ class NetgearR7500AP(WifiRetailAP):
browser.visit_persistent(self.config_page, BROWSER_WAIT_MED, 10)
browser.visit_persistent(self.config_page_advanced,
BROWSER_WAIT_MED, 10)
+ time.sleep(BROWSER_WAIT_MED)
wireless_button = browser.find_by_id("advanced_bt").first
wireless_button.click()
time.sleep(BROWSER_WAIT_SHORT)