diff options
author | Omar El Ayach <oelayach@google.com> | 2018-11-01 22:05:04 -0700 |
---|---|---|
committer | Omar El Ayach <oelayach@google.com> | 2018-11-08 06:17:19 +0000 |
commit | 7c2d016513405145b4c184e713fee9403099a14a (patch) | |
tree | f28fcf75873e07e0fe8b6f3bc3e7eac14b4f010e | |
parent | 5e5ee839f903e6105440b14650d3061e2a3872f7 (diff) | |
download | platform_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.py | 20 |
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) |