seleniumbase 4.33.2__py3-none-any.whl → 4.33.3__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,2 +1,2 @@
1
1
  # seleniumbase package
2
- __version__ = "4.33.2"
2
+ __version__ = "4.33.3"
@@ -606,6 +606,9 @@ def uc_open_with_cdp_mode(driver, url=None):
606
606
  cdp.click_nth_element = CDPM.click_nth_element
607
607
  cdp.click_nth_visible_element = CDPM.click_nth_visible_element
608
608
  cdp.click_link = CDPM.click_link
609
+ cdp.go_back = CDPM.go_back
610
+ cdp.go_forward = CDPM.go_forward
611
+ cdp.get_navigation_history = CDPM.get_navigation_history
609
612
  cdp.tile_windows = CDPM.tile_windows
610
613
  cdp.get_all_cookies = CDPM.get_all_cookies
611
614
  cdp.set_all_cookies = CDPM.set_all_cookies
@@ -1419,11 +1422,8 @@ def _uc_gui_handle_captcha_(driver, frame="iframe", ctype=None):
1419
1422
  page_actions.switch_to_window(
1420
1423
  driver, driver.current_window_handle, 2, uc_lock=False
1421
1424
  )
1422
- if (
1423
- IS_WINDOWS
1424
- and hasattr(pyautogui, "getActiveWindowTitle")
1425
- ):
1426
- py_a_g_title = pyautogui.getActiveWindowTitle()
1425
+ if IS_WINDOWS and hasattr(pyautogui, "getActiveWindowTitle"):
1426
+ py_a_g_title = pyautogui.getActiveWindowTitle() or ""
1427
1427
  window_title = driver.get_title()
1428
1428
  if not py_a_g_title.startswith(window_title):
1429
1429
  window_rect = driver.get_window_rect()
@@ -289,6 +289,15 @@ class CDPMethods():
289
289
  def click_link(self, link_text):
290
290
  self.find_elements_by_text(link_text, "a")[0].click()
291
291
 
292
+ def go_back(self):
293
+ self.loop.run_until_complete(self.page.back())
294
+
295
+ def go_forward(self):
296
+ self.loop.run_until_complete(self.page.forward())
297
+
298
+ def get_navigation_history(self):
299
+ return self.loop.run_until_complete(self.page.get_navigation_history())
300
+
292
301
  def __clear_input(self, element):
293
302
  return (
294
303
  self.loop.run_until_complete(element.clear_input_async())
@@ -1323,6 +1323,9 @@ class BaseCase(unittest.TestCase):
1323
1323
 
1324
1324
  def go_back(self):
1325
1325
  self.__check_scope()
1326
+ if self.__is_cdp_swap_needed():
1327
+ self.cdp.go_back()
1328
+ return
1326
1329
  if hasattr(self, "recorder_mode") and self.recorder_mode:
1327
1330
  self.save_recorded_actions()
1328
1331
  pre_action_url = None
@@ -1348,6 +1351,9 @@ class BaseCase(unittest.TestCase):
1348
1351
 
1349
1352
  def go_forward(self):
1350
1353
  self.__check_scope()
1354
+ if self.__is_cdp_swap_needed():
1355
+ self.cdp.go_forward()
1356
+ return
1351
1357
  if hasattr(self, "recorder_mode") and self.recorder_mode:
1352
1358
  self.save_recorded_actions()
1353
1359
  self.__last_page_load_url = None
@@ -1732,6 +1738,9 @@ class BaseCase(unittest.TestCase):
1732
1738
  if self.timeout_multiplier and timeout == settings.SMALL_TIMEOUT:
1733
1739
  timeout = self.__get_new_timeout(timeout)
1734
1740
  partial_link_text = self.__get_type_checked_text(partial_link_text)
1741
+ if self.__is_cdp_swap_needed():
1742
+ self.cdp.find_element(partial_link_text, timeout=timeout).click()
1743
+ return
1735
1744
  if not self.is_partial_link_text_present(partial_link_text):
1736
1745
  self.wait_for_partial_link_text_present(
1737
1746
  partial_link_text, timeout=timeout
@@ -8133,6 +8142,8 @@ class BaseCase(unittest.TestCase):
8133
8142
  def is_chromium(self):
8134
8143
  """Return True if the browser is Chrome or Edge."""
8135
8144
  self.__check_scope()
8145
+ if self.__is_cdp_swap_needed():
8146
+ return True
8136
8147
  chromium = False
8137
8148
  if (
8138
8149
  "chrome" in self.driver.capabilities
@@ -636,6 +636,10 @@ class Tab(Connection):
636
636
  """History forward"""
637
637
  await self.send(cdp.runtime.evaluate("window.history.forward()"))
638
638
 
639
+ async def get_navigation_history(self):
640
+ """Get Navigation History"""
641
+ return await self.send(cdp.page.get_navigation_history())
642
+
639
643
  async def reload(
640
644
  self,
641
645
  ignore_cache: Optional[bool] = True,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: seleniumbase
3
- Version: 4.33.2
3
+ Version: 4.33.3
4
4
  Summary: A complete web automation framework for end-to-end testing.
5
5
  Home-page: https://github.com/seleniumbase/SeleniumBase
6
6
  Author: Michael Mintz
@@ -105,7 +105,7 @@ Requires-Dist: execnet==2.1.1
105
105
  Requires-Dist: iniconfig==2.0.0
106
106
  Requires-Dist: pluggy==1.5.0
107
107
  Requires-Dist: py==1.11.0
108
- Requires-Dist: pytest==8.3.3
108
+ Requires-Dist: pytest==8.3.4
109
109
  Requires-Dist: pytest-html==2.0.1
110
110
  Requires-Dist: pytest-metadata==3.1.1
111
111
  Requires-Dist: pytest-ordering==0.6
@@ -3,7 +3,7 @@ sbase/__main__.py,sha256=G0bVB1-DM4PGwQ1KyOupaWCs4ePbChZNNWuX2htim5U,647
3
3
  sbase/steps.py,sha256=_WvAjydKqZfTdnZW9LPKkRty-g-lfdUPmLqnZj6ulcs,43013
4
4
  seleniumbase/__init__.py,sha256=OtJh8nGKL4xtZpw8KPqmn7Q6R-86t4cWUDyVF5MbMTo,2398
5
5
  seleniumbase/__main__.py,sha256=dn1p6dgCchmcH1zzTzzQvFwwdQQqnTGH6ULV9m4hv24,654
6
- seleniumbase/__version__.py,sha256=DurPep4UOAZOSzAkCBAp_MZg2c7IdEU_tHzobaEV4lE,46
6
+ seleniumbase/__version__.py,sha256=b9CFhb2bSkJaSVPoCfXxUM8ff_Ki-2b4bCUxhDAADOc,46
7
7
  seleniumbase/behave/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
8
  seleniumbase/behave/behave_helper.py,sha256=elkl8P9eLulRAioLstE9baYNM9N_PHBmAOcajX-pH_Y,24198
9
9
  seleniumbase/behave/behave_sb.py,sha256=-hza7Nx2U41mSObYiPMi48v3JlPh3sJO3yzP0kqZ1Gk,59174
@@ -36,7 +36,7 @@ seleniumbase/console_scripts/sb_print.py,sha256=tNy-bMDgwHJO3bZxMpmo9weSE8uhbH0C
36
36
  seleniumbase/console_scripts/sb_recorder.py,sha256=fnHb5-kh11Hit-E9Ha-e4QXzqLcZvtij6mb5qNd4B1Q,11032
37
37
  seleniumbase/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
38
38
  seleniumbase/core/application_manager.py,sha256=e_0sjtI8cjY5BNyZj1QBR0j6_oCScxGmSXYEpcYwuZE,576
39
- seleniumbase/core/browser_launcher.py,sha256=9FDfk76brTw5nC9LNFfPn8JoYD0cY92omQJyo1FPiwg,221002
39
+ seleniumbase/core/browser_launcher.py,sha256=ua9a6UfYWzKMFG-R4Jvrk1gkh4RPt7IOTGyp_siCYjQ,221101
40
40
  seleniumbase/core/capabilities_parser.py,sha256=meIS2uHapTCq2ldfNAToC7r0cKmZDRXuYNKExM1GHDY,6038
41
41
  seleniumbase/core/colored_traceback.py,sha256=DrRWfg7XEnKcgY59Xj7Jdk09H-XqHYBSUpB-DiZt6iY,2020
42
42
  seleniumbase/core/create_db_tables.sql,sha256=VWPtrdiW_HQ6yETHjqTu-VIrTwvd8I8o1NfBeaVSHpU,972
@@ -50,7 +50,7 @@ seleniumbase/core/proxy_helper.py,sha256=cXhu8ErK9Vjdm82RMaQj7hEq_yUWizSp6LyiD50
50
50
  seleniumbase/core/recorder_helper.py,sha256=fNGjbapXmEsht54x1o6Igk198QdnPxDDnjUOzQxNhNQ,25055
51
51
  seleniumbase/core/report_helper.py,sha256=AIl6Qava2yW1uSzbLpJBlPlYDz0KE-rVhogh8hsGWBo,12201
52
52
  seleniumbase/core/s3_manager.py,sha256=bkeI8I4y19ebWuQG1oEZV5qJbotC6eN8vin31OCNWJk,3521
53
- seleniumbase/core/sb_cdp.py,sha256=T5QkG7tiZs6XLra_vxUeIfsYhg1i7oxEkLDmpG6LLmE,67361
53
+ seleniumbase/core/sb_cdp.py,sha256=NyiooRREzeRQYITMiE9b0WwcH3-u8tMsy-cLJSnxerc,67644
54
54
  seleniumbase/core/sb_driver.py,sha256=NGa4adi8OAi2WFtFkEguXg3JCd1p-JuZweIpGNifEfU,13488
55
55
  seleniumbase/core/session_helper.py,sha256=s9zD3PVZEWVzG2h81cCUskbNWLfdjC_LwwQjKptHCak,558
56
56
  seleniumbase/core/settings_parser.py,sha256=KokVXpCiGZhJ-D4Bo-hizPz5r-iefzWoiTANu9zNaq4,7504
@@ -65,7 +65,7 @@ seleniumbase/extensions/disable_csp.zip,sha256=YMifIIgEBiLrEFrS1sfW4Exh4br1V4oK1
65
65
  seleniumbase/extensions/recorder.zip,sha256=OOyzF-Ize2cSRu1CqhzSAq5vusI9hqLLd2OIApUHesI,11918
66
66
  seleniumbase/extensions/sbase_ext.zip,sha256=3s1N8zrVaMz8RQEOIoBzC3KDjtmHwVZRvVsX25Odr_s,8175
67
67
  seleniumbase/fixtures/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
68
- seleniumbase/fixtures/base_case.py,sha256=uxJcSytEc0dOxiSp03I58hcGmxGaFTSSBoro1-O-JLk,717061
68
+ seleniumbase/fixtures/base_case.py,sha256=qitMs026hzMdVlWxhN9WNvqR2W9h6q2Ofmorycq4I-Q,717445
69
69
  seleniumbase/fixtures/constants.py,sha256=e1LppavlrAcI4XBJMq7u5j8SffaQ7SPQps1y0YvZYfY,13649
70
70
  seleniumbase/fixtures/css_to_xpath.py,sha256=9ouDB1xl4MJ2os6JOgTIAyHKOQfuxtxvXC3O5hSnEKA,1954
71
71
  seleniumbase/fixtures/errors.py,sha256=KyxuEVx_e3MPhVrJfNIa_3ltMpbCFxfy_jxK8RFNTns,555
@@ -120,7 +120,7 @@ seleniumbase/undetected/cdp_driver/cdp_util.py,sha256=YhtD2Tm6PLIy9VKbgk8lHdGniS
120
120
  seleniumbase/undetected/cdp_driver/config.py,sha256=Rjvde7V-XJ0ihZdTmOmHEVWSuDWm3SprQ3njg8SN3Go,12087
121
121
  seleniumbase/undetected/cdp_driver/connection.py,sha256=sOTUGjbUqKA2hPvDcRCdqw1VQjVGJs7mbgVvzS7ldtE,23360
122
122
  seleniumbase/undetected/cdp_driver/element.py,sha256=wEHtuF9oiny7cb4QMMjdtD5Yf1z3WOs2_NHEWcscusM,40289
123
- seleniumbase/undetected/cdp_driver/tab.py,sha256=wUNF8GHrbhaUqg57A9ZTYHKhNPjZIcOHwrz3pj1SAg0,50526
123
+ seleniumbase/undetected/cdp_driver/tab.py,sha256=cmSUg9fRnIVYgeqs-t8Tcg1FrSVIrM5IBQmCMzvl4OQ,50678
124
124
  seleniumbase/utilities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
125
125
  seleniumbase/utilities/selenium_grid/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
126
126
  seleniumbase/utilities/selenium_grid/download_selenium_server.py,sha256=ZdoInIbhtmdKCIPxxtJHhd2sqotqcNXWMYbwWrkh9O0,1727
@@ -135,9 +135,9 @@ seleniumbase/utilities/selenium_grid/start-grid-hub.bat,sha256=Ftq-GrAKRYH2ssDPr
135
135
  seleniumbase/utilities/selenium_grid/start-grid-hub.sh,sha256=KADv0RUHONLL2_I443QFK8PryBpDmKn5Gy0s4o0vDSM,106
136
136
  seleniumbase/utilities/selenium_ide/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
137
137
  seleniumbase/utilities/selenium_ide/convert_ide.py,sha256=pZFnqEJQEKZPyNFjkLD29s2HPQgCrWW9XJWpCPhWOoM,31691
138
- seleniumbase-4.33.2.dist-info/LICENSE,sha256=odSYtWibXBnQ1gBg6CnDZ82n8kLF_if5-2nbqnEyD8k,1085
139
- seleniumbase-4.33.2.dist-info/METADATA,sha256=nFoS4vqUdYDMBwy1VzYwDe8CFN_M5rqdzrM4nwgHo6Y,86554
140
- seleniumbase-4.33.2.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
141
- seleniumbase-4.33.2.dist-info/entry_points.txt,sha256=CNrh2EKNaHYEhO6pP1RJyVLB99LkDDYX7TnUK8xfjqk,623
142
- seleniumbase-4.33.2.dist-info/top_level.txt,sha256=4N97aBOQ8ETCnDnokBsWb07lJfTaq3C1ZzYRxvLMxqU,19
143
- seleniumbase-4.33.2.dist-info/RECORD,,
138
+ seleniumbase-4.33.3.dist-info/LICENSE,sha256=odSYtWibXBnQ1gBg6CnDZ82n8kLF_if5-2nbqnEyD8k,1085
139
+ seleniumbase-4.33.3.dist-info/METADATA,sha256=3YY_YaHTz2H48ee9t80yTk55JOJY7pIuZwoucYGEx3U,86554
140
+ seleniumbase-4.33.3.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
141
+ seleniumbase-4.33.3.dist-info/entry_points.txt,sha256=CNrh2EKNaHYEhO6pP1RJyVLB99LkDDYX7TnUK8xfjqk,623
142
+ seleniumbase-4.33.3.dist-info/top_level.txt,sha256=4N97aBOQ8ETCnDnokBsWb07lJfTaq3C1ZzYRxvLMxqU,19
143
+ seleniumbase-4.33.3.dist-info/RECORD,,