Skip to content

Commit 2beac7d

Browse files
authored
Merge pull request #1805 from seleniumbase/toggles-translations-and-dependencies
Toggles, Translations, and Dependencies
2 parents 0bf9533 + 560e4cd commit 2beac7d

File tree

15 files changed

+183
-28
lines changed

15 files changed

+183
-28
lines changed

mkdocs_build/requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ cssselect2==0.7.0
2727
tinycss2==1.2.1
2828
defusedxml==0.7.1
2929
mkdocs==1.4.2
30-
mkdocs-material==9.1.2
30+
mkdocs-material==9.1.3
3131
mkdocs-exclude-search==0.6.5
3232
mkdocs-simple-hooks==0.1.5
3333
mkdocs-material-extensions==1.1.1

requirements.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@ tomli>=2.0.1;python_version>="3.7"
1111
tqdm>=4.64.1;python_version<"3.7"
1212
tqdm>=4.65.0;python_version>="3.7"
1313
wheel>=0.37.1;python_version<"3.7"
14-
wheel>=0.38.4;python_version>="3.7"
14+
wheel>=0.40.0;python_version>="3.7"
1515
attrs==22.1.0;python_version<"3.7"
1616
attrs>=22.2.0;python_version>="3.7"
1717
PyYAML>=6.0
1818
certifi>=2022.12.7
1919
filelock>=3.4.1;python_version<"3.7"
20-
filelock>=3.9.0;python_version>="3.7"
20+
filelock>=3.9.1;python_version>="3.7"
2121
platformdirs>=2.4.0;python_version<"3.7"
2222
platformdirs>=3.1.1;python_version>="3.7"
2323
pyparsing>=3.0.7;python_version<"3.7"
@@ -41,7 +41,7 @@ sniffio==1.3.0;python_version>="3.7"
4141
h11==0.14.0;python_version>="3.7"
4242
outcome==1.2.0;python_version>="3.7"
4343
trio==0.22.0;python_version>="3.7"
44-
trio-websocket==0.9.2;python_version>="3.7"
44+
trio-websocket==0.10.0;python_version>="3.7"
4545
websockets==10.4;python_version>="3.7"
4646
pyopenssl==23.0.0;python_version>="3.7"
4747
wsproto==1.2.0;python_version>="3.7"
@@ -84,7 +84,7 @@ tabcompleter==1.1.0
8484
pdbp==1.2.8
8585
colorama==0.4.5;python_version<"3.7"
8686
colorama==0.4.6;python_version>="3.7"
87-
exceptiongroup==1.1.0;python_version>="3.7"
87+
exceptiongroup==1.1.1;python_version>="3.7"
8888
importlib-metadata==4.2.0;python_version<"3.8"
8989
pycparser==2.21
9090
pyotp==2.7.0;python_version<"3.7"

seleniumbase/__version__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
# seleniumbase package
2-
__version__ = "4.13.13"
2+
__version__ = "4.13.14"

seleniumbase/fixtures/base_case.py

Lines changed: 54 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2257,10 +2257,33 @@ def check_if_unchecked(self, selector, by="css selector"):
22572257
if self.is_element_visible(selector, by=by):
22582258
self.click(selector, by=by)
22592259
else:
2260-
selector = self.convert_to_css_selector(selector, by=by)
2261-
self.__dont_record_js_click = True
2262-
self.js_click(selector, by="css selector")
2263-
self.__dont_record_js_click = False
2260+
element = self.wait_for_element_present(selector, by=by)
2261+
opacity = self.execute_script(
2262+
'return arguments[0].style.opacity;', element
2263+
)
2264+
# Handle switches that sit on checkboxes with zero opacity:
2265+
# Change the opacity a bit to allow the click to succeed.
2266+
try:
2267+
self.execute_script(
2268+
'arguments[0].style.opacity="0.001";', element
2269+
)
2270+
except Exception:
2271+
pass
2272+
if self.is_element_visible(selector, by=by):
2273+
self.click(selector, by=by)
2274+
else:
2275+
selector = self.convert_to_css_selector(selector, by=by)
2276+
self.__dont_record_js_click = True
2277+
self.js_click(selector, by="css selector")
2278+
self.__dont_record_js_click = False
2279+
try:
2280+
self.execute_script(
2281+
'arguments[0].style.opacity="arguments[1]";',
2282+
element,
2283+
opacity,
2284+
)
2285+
except Exception:
2286+
pass
22642287

22652288
def select_if_unselected(self, selector, by="css selector"):
22662289
"""Same as check_if_unchecked()"""
@@ -2274,10 +2297,33 @@ def uncheck_if_checked(self, selector, by="css selector"):
22742297
if self.is_element_visible(selector, by=by):
22752298
self.click(selector, by=by)
22762299
else:
2277-
selector = self.convert_to_css_selector(selector, by=by)
2278-
self.__dont_record_js_click = True
2279-
self.js_click(selector, by="css selector")
2280-
self.__dont_record_js_click = False
2300+
element = self.wait_for_element_present(selector, by=by)
2301+
opacity = self.execute_script(
2302+
'return arguments[0].style.opacity;', element
2303+
)
2304+
# Handle switches that sit on checkboxes with zero opacity:
2305+
# Change the opacity a bit to allow the click to succeed.
2306+
try:
2307+
self.execute_script(
2308+
'arguments[0].style.opacity="0.001";', element
2309+
)
2310+
except Exception:
2311+
pass
2312+
if self.is_element_visible(selector, by=by):
2313+
self.click(selector, by=by)
2314+
else:
2315+
selector = self.convert_to_css_selector(selector, by=by)
2316+
self.__dont_record_js_click = True
2317+
self.js_click(selector, by="css selector")
2318+
self.__dont_record_js_click = False
2319+
try:
2320+
self.execute_script(
2321+
'arguments[0].style.opacity="arguments[1]";',
2322+
element,
2323+
opacity,
2324+
)
2325+
except Exception:
2326+
pass
22812327

22822328
def unselect_if_selected(self, selector, by="css selector"):
22832329
"""Same as uncheck_if_checked()"""

seleniumbase/translate/chinese.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,10 @@ def 双击(self, *args, **kwargs):
2424
# double_click(selector)
2525
return self.double_click(*args, **kwargs)
2626

27+
def 上下文点击(self, *args, **kwargs):
28+
# context_click(selector)
29+
return self.context_click(*args, **kwargs)
30+
2731
def 慢单击(self, *args, **kwargs):
2832
# slow_click(selector)
2933
return self.slow_click(*args, **kwargs)
@@ -357,10 +361,14 @@ def 滚动到底部(self, *args, **kwargs):
357361
# scroll_to_bottom()
358362
return self.scroll_to_bottom(*args, **kwargs)
359363

360-
def 悬停并单击(self, *args, **kwargs):
364+
def 鼠标悬停并单击(self, *args, **kwargs):
361365
# hover_and_click(hover_selector, click_selector)
362366
return self.hover_and_click(*args, **kwargs)
363367

368+
def 鼠标悬停(self, *args, **kwargs):
369+
# hover(selector)
370+
return self.hover(*args, **kwargs)
371+
364372
def 是否被选中(self, *args, **kwargs):
365373
# is_selected(selector)
366374
return self.is_selected(*args, **kwargs)

seleniumbase/translate/dutch.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,10 @@ def dubbelklik(self, *args, **kwargs):
2424
# double_click(selector)
2525
return self.double_click(*args, **kwargs)
2626

27+
def contextklik(self, *args, **kwargs):
28+
# context_click(selector)
29+
return self.context_click(*args, **kwargs)
30+
2731
def klik_langzaam(self, *args, **kwargs):
2832
# slow_click(selector)
2933
return self.slow_click(*args, **kwargs)
@@ -361,6 +365,10 @@ def zweven_en_klik(self, *args, **kwargs):
361365
# hover_and_click(hover_selector, click_selector)
362366
return self.hover_and_click(*args, **kwargs)
363367

368+
def zweven(self, *args, **kwargs):
369+
# hover(selector)
370+
return self.hover(*args, **kwargs)
371+
364372
def is_het_geselecteerd(self, *args, **kwargs):
365373
# is_selected(selector)
366374
return self.is_selected(*args, **kwargs)

seleniumbase/translate/french.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,10 @@ def double_cliquer(self, *args, **kwargs):
2424
# double_click(selector)
2525
return self.double_click(*args, **kwargs)
2626

27+
def contextuel_cliquer(self, *args, **kwargs):
28+
# context_click(selector)
29+
return self.context_click(*args, **kwargs)
30+
2731
def cliquer_lentement(self, *args, **kwargs):
2832
# slow_click(selector)
2933
return self.slow_click(*args, **kwargs)
@@ -357,10 +361,14 @@ def faites_défiler_vers_le_bas(self, *args, **kwargs):
357361
# scroll_to_bottom()
358362
return self.scroll_to_bottom(*args, **kwargs)
359363

360-
def planer_au_dessus_et_cliquer(self, *args, **kwargs):
364+
def passer_la_souris_et_cliquer(self, *args, **kwargs):
361365
# hover_and_click(hover_selector, click_selector)
362366
return self.hover_and_click(*args, **kwargs)
363367

368+
def survol_de_la_souris(self, *args, **kwargs):
369+
# hover(selector)
370+
return self.hover(*args, **kwargs)
371+
364372
def est_il_sélectionné(self, *args, **kwargs):
365373
# is_selected(selector)
366374
return self.is_selected(*args, **kwargs)

seleniumbase/translate/italian.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,10 @@ def doppio_clic(self, *args, **kwargs):
2424
# double_click(selector)
2525
return self.double_click(*args, **kwargs)
2626

27+
def clic_contestuale(self, *args, **kwargs):
28+
# context_click(selector)
29+
return self.context_click(*args, **kwargs)
30+
2731
def clic_lentamente(self, *args, **kwargs):
2832
# slow_click(selector)
2933
return self.slow_click(*args, **kwargs)
@@ -357,10 +361,14 @@ def scorri_verso_il_basso(self, *args, **kwargs):
357361
# scroll_to_bottom()
358362
return self.scroll_to_bottom(*args, **kwargs)
359363

360-
def passa_il_mouse_sopra_e_fai_clic(self, *args, **kwargs):
364+
def passare_il_mouse_e_fare_clic(self, *args, **kwargs):
361365
# hover_and_click(hover_selector, click_selector)
362366
return self.hover_and_click(*args, **kwargs)
363367

368+
def passaggio_del_mouse(self, *args, **kwargs):
369+
# hover(selector)
370+
return self.hover(*args, **kwargs)
371+
364372
def è_selezionato(self, *args, **kwargs):
365373
# is_selected(selector)
366374
return self.is_selected(*args, **kwargs)

seleniumbase/translate/japanese.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,10 @@ def ダブルクリックして(self, *args, **kwargs):
2424
# double_click(selector)
2525
return self.double_click(*args, **kwargs)
2626

27+
def コンテキストクリック(self, *args, **kwargs):
28+
# context_click(selector)
29+
return self.context_click(*args, **kwargs)
30+
2731
def ゆっくりクリックして(self, *args, **kwargs):
2832
# slow_click(selector)
2933
return self.slow_click(*args, **kwargs)
@@ -357,10 +361,14 @@ def 一番下までスクロール(self, *args, **kwargs):
357361
# scroll_to_bottom()
358362
return self.scroll_to_bottom(*args, **kwargs)
359363

360-
def 上にマウスを移動しクリック(self, *args, **kwargs):
364+
def マウスオーバーしてクリック(self, *args, **kwargs):
361365
# hover_and_click(hover_selector, click_selector)
362366
return self.hover_and_click(*args, **kwargs)
363367

368+
def マウスオーバー(self, *args, **kwargs):
369+
# hover(selector)
370+
return self.hover(*args, **kwargs)
371+
364372
def 選択されていることを(self, *args, **kwargs):
365373
# is_selected(selector)
366374
return self.is_selected(*args, **kwargs)

seleniumbase/translate/korean.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,10 @@ def 더블_클릭(self, *args, **kwargs):
2424
# double_click(selector)
2525
return self.double_click(*args, **kwargs)
2626

27+
def 컨텍스트_클릭(self, *args, **kwargs):
28+
# context_click(selector)
29+
return self.context_click(*args, **kwargs)
30+
2731
def 천천히_클릭(self, *args, **kwargs):
2832
# slow_click(selector)
2933
return self.slow_click(*args, **kwargs)
@@ -357,10 +361,14 @@ def 하단으로_스크롤(self, *args, **kwargs):
357361
# scroll_to_bottom()
358362
return self.scroll_to_bottom(*args, **kwargs)
359363

360-
def 위로_마우스를_이동하고_클릭(self, *args, **kwargs):
364+
def 마우스오버_및_클릭(self, *args, **kwargs):
361365
# hover_and_click(hover_selector, click_selector)
362366
return self.hover_and_click(*args, **kwargs)
363367

368+
def 마우스오버(self, *args, **kwargs):
369+
# hover(selector)
370+
return self.hover(*args, **kwargs)
371+
364372
def 선택되어_있는지(self, *args, **kwargs):
365373
# is_selected(selector)
366374
return self.is_selected(*args, **kwargs)

0 commit comments

Comments
 (0)