Skip to content

Commit ffdbf03

Browse files
authored
[tests] SeleniumTestMixin: use own find_element method and pass driver
1 parent 9f3639a commit ffdbf03

2 files changed

Lines changed: 14 additions & 8 deletions

File tree

openwisp_utils/tests/selenium.py

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -367,26 +367,32 @@ def login(self, username=None, password=None, driver=None):
367367
driver.get(f"{self.live_server_url}/admin/login/")
368368
self._wait_until_page_ready(driver=driver)
369369
if "admin/login" in driver.current_url:
370-
driver.find_element(by=By.NAME, value="username").send_keys(username)
371-
driver.find_element(by=By.NAME, value="password").send_keys(password)
372-
driver.find_element(by=By.XPATH, value='//input[@type="submit"]').click()
370+
self.find_element(by=By.NAME, value="username", driver=driver).send_keys(
371+
username
372+
)
373+
self.find_element(by=By.NAME, value="password", driver=driver).send_keys(
374+
password
375+
)
376+
self.find_element(
377+
by=By.XPATH, value='//input[@type="submit"]', driver=driver
378+
).click()
373379
self._wait_until_page_ready(driver=driver)
374380

375381
def logout(self, driver=None):
376382
driver = driver or self.web_driver
377-
self.web_driver.find_element(By.CSS_SELECTOR, ".account-button").click()
378-
self.web_driver.find_element(By.CSS_SELECTOR, "#logout-form button").click()
383+
self.find_element(By.CSS_SELECTOR, ".account-button", driver=driver).click()
384+
self.find_element(By.CSS_SELECTOR, "#logout-form button", driver=driver).click()
379385

380386
def find_element(self, by, value, timeout=2, driver=None, wait_for="visibility"):
381387
driver = driver or self.web_driver
382388
method = f"wait_for_{wait_for}"
383-
getattr(self, method)(by, value, timeout)
389+
getattr(self, method)(by, value, timeout, driver=driver)
384390
return driver.find_element(by=by, value=value)
385391

386392
def find_elements(self, by, value, timeout=2, driver=None, wait_for="visibility"):
387393
driver = driver or self.web_driver
388394
method = f"wait_for_{wait_for}"
389-
getattr(self, method)(by, value, timeout)
395+
getattr(self, method)(by, value, timeout, driver=driver)
390396
return driver.find_elements(by=by, value=value)
391397

392398
def wait_for_visibility(self, by, value, timeout=2, driver=None):

requirements-test.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# For testing Dependency loaders
2-
openwisp_controller @ https://github.com/openwisp/openwisp-controller/tarball/master
2+
openwisp_controller @ https://github.com/openwisp/openwisp-controller/archive/refs/heads/master.tar.gz
33
freezegun
44
pytest
55
pytest-mock

0 commit comments

Comments
 (0)