Skip to content

Commit 22a5a69

Browse files
authored
Merge pull request #482 from seleniumbase/improve-select-methods
Improve select_option_by_*() methods
2 parents 42afc74 + 9b4eb64 commit 22a5a69

File tree

3 files changed

+10
-7
lines changed

3 files changed

+10
-7
lines changed

requirements.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
pip>=19.3.1
22
setuptools>=44.0.0;python_version<"3"
33
setuptools>=45.0.0;python_version>="3"
4-
setuptools-scm>=3.3.3
4+
setuptools-scm>=3.4.0
55
wheel>=0.33.6
66
six==1.14.0
77
nose==1.3.7
@@ -14,7 +14,7 @@ selenium==3.141.0
1414
pluggy>=0.13.1
1515
attrs>=19.3.0
1616
pytest>=4.6.9;python_version<"3"
17-
pytest>=5.3.2;python_version>="3"
17+
pytest>=5.3.3;python_version>="3"
1818
pytest-cov>=2.8.1
1919
pytest-forked>=1.1.3
2020
pytest-html==1.22.1;python_version<"3.6"

seleniumbase/fixtures/base_case.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1223,9 +1223,12 @@ def __select_option(self, dropdown_selector, option,
12231223
timeout = self.__get_new_timeout(timeout)
12241224
if page_utils.is_xpath_selector(dropdown_selector):
12251225
dropdown_by = By.XPATH
1226-
element = self.wait_for_element_visible(
1226+
self.wait_for_ready_state_complete()
1227+
element = self.wait_for_element_present(
12271228
dropdown_selector, by=dropdown_by, timeout=timeout)
1228-
self.__demo_mode_highlight_if_active(dropdown_selector, dropdown_by)
1229+
if self.is_element_visible(dropdown_selector, by=dropdown_by):
1230+
self.__demo_mode_highlight_if_active(
1231+
dropdown_selector, dropdown_by)
12291232
pre_action_url = self.driver.current_url
12301233
try:
12311234
if option_by == "index":
@@ -1237,7 +1240,7 @@ def __select_option(self, dropdown_selector, option,
12371240
except (StaleElementReferenceException, ENI_Exception):
12381241
self.wait_for_ready_state_complete()
12391242
time.sleep(0.05)
1240-
element = self.wait_for_element_visible(
1243+
element = self.wait_for_element_present(
12411244
dropdown_selector, by=dropdown_by, timeout=timeout)
12421245
if option_by == "index":
12431246
Select(element).select_by_index(option)

setup.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545

4646
setup(
4747
name='seleniumbase',
48-
version='1.34.21',
48+
version='1.34.22',
4949
description='Fast, Easy, and Reliable Browser Automation & Testing.',
5050
long_description=long_description,
5151
long_description_content_type='text/markdown',
@@ -96,7 +96,7 @@
9696
'pluggy>=0.13.1',
9797
'attrs>=19.3.0',
9898
'pytest>=4.6.9;python_version<"3"', # For Python 2 compatibility
99-
'pytest>=5.3.2;python_version>="3"',
99+
'pytest>=5.3.3;python_version>="3"',
100100
'pytest-cov>=2.8.1',
101101
'pytest-forked>=1.1.3',
102102
'pytest-html==1.22.1;python_version<"3.6"',

0 commit comments

Comments
 (0)