e2e: add utility to wait for URL

This commit is contained in:
Jens Langhammer 2020-06-26 16:21:59 +02:00
parent cc7e4ad0e2
commit c1b2093cf7
2 changed files with 5 additions and 0 deletions

View File

@ -345,6 +345,7 @@ class TestEnroll(SeleniumTestCase):
self.wait.until(ec.presence_of_element_located((By.LINK_TEXT, "foo"))) self.wait.until(ec.presence_of_element_located((By.LINK_TEXT, "foo")))
self.driver.find_element(By.LINK_TEXT, "foo").click() self.driver.find_element(By.LINK_TEXT, "foo").click()
self.wait_for_url(self.url("passbook_core:user-settings"))
self.assertEqual( self.assertEqual(
self.driver.find_element(By.XPATH, "//a[contains(@href, '/-/user/')]").text, self.driver.find_element(By.XPATH, "//a[contains(@href, '/-/user/')]").text,
"foo", "foo",

View File

@ -66,6 +66,10 @@ class SeleniumTestCase(StaticLiveServerTestCase):
self.driver.quit() self.driver.quit()
super().tearDown() super().tearDown()
def wait_for_url(self, desired_url):
"""Wait until URL is `desired_url`."""
self.wait.until(lambda driver: driver.current_url == desired_url)
def url(self, view, **kwargs) -> str: def url(self, view, **kwargs) -> str:
"""reverse `view` with `**kwargs` into full URL using live_server_url""" """reverse `view` with `**kwargs` into full URL using live_server_url"""
return self.live_server_url + reverse(view, kwargs=kwargs) return self.live_server_url + reverse(view, kwargs=kwargs)