seleniumbase 4.32.10__py3-none-any.whl → 4.32.10a2__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- seleniumbase/__version__.py +1 -1
- seleniumbase/core/browser_launcher.py +9 -27
- seleniumbase/core/sb_cdp.py +10 -32
- seleniumbase/core/sb_driver.py +2 -5
- seleniumbase/fixtures/base_case.py +8 -23
- seleniumbase/fixtures/constants.py +0 -1
- seleniumbase/fixtures/js_utils.py +5 -1
- seleniumbase/fixtures/page_actions.py +2 -0
- seleniumbase/fixtures/shared_utils.py +0 -11
- {seleniumbase-4.32.10.dist-info → seleniumbase-4.32.10a2.dist-info}/METADATA +2 -2
- {seleniumbase-4.32.10.dist-info → seleniumbase-4.32.10a2.dist-info}/RECORD +15 -15
- {seleniumbase-4.32.10.dist-info → seleniumbase-4.32.10a2.dist-info}/LICENSE +0 -0
- {seleniumbase-4.32.10.dist-info → seleniumbase-4.32.10a2.dist-info}/WHEEL +0 -0
- {seleniumbase-4.32.10.dist-info → seleniumbase-4.32.10a2.dist-info}/entry_points.txt +0 -0
- {seleniumbase-4.32.10.dist-info → seleniumbase-4.32.10a2.dist-info}/top_level.txt +0 -0
seleniumbase/__version__.py
CHANGED
@@ -1,2 +1,2 @@
|
|
1
1
|
# seleniumbase package
|
2
|
-
__version__ = "4.32.
|
2
|
+
__version__ = "4.32.10a2"
|
@@ -544,8 +544,6 @@ def uc_open_with_cdp_mode(driver, url=None):
|
|
544
544
|
)
|
545
545
|
loop.run_until_complete(driver.cdp_base.wait(0))
|
546
546
|
|
547
|
-
gui_lock = fasteners.InterProcessLock(constants.MultiBrowser.PYAUTOGUILOCK)
|
548
|
-
|
549
547
|
if (
|
550
548
|
"chrome-extension://" in str(driver.cdp_base.main_tab)
|
551
549
|
and len(driver.cdp_base.tabs) >= 2
|
@@ -555,8 +553,7 @@ def uc_open_with_cdp_mode(driver, url=None):
|
|
555
553
|
|
556
554
|
for tab in driver.cdp_base.tabs[-1::-1]:
|
557
555
|
if "chrome-extension://" not in str(tab):
|
558
|
-
|
559
|
-
loop.run_until_complete(tab.activate())
|
556
|
+
loop.run_until_complete(tab.activate())
|
560
557
|
break
|
561
558
|
|
562
559
|
page_tab = None
|
@@ -569,20 +566,14 @@ def uc_open_with_cdp_mode(driver, url=None):
|
|
569
566
|
break
|
570
567
|
if page_tab:
|
571
568
|
loop.run_until_complete(page_tab.aopen())
|
572
|
-
|
573
|
-
loop.run_until_complete(page_tab.activate())
|
569
|
+
loop.run_until_complete(page_tab.activate())
|
574
570
|
|
575
571
|
loop.run_until_complete(driver.cdp_base.update_targets())
|
576
572
|
page = loop.run_until_complete(driver.cdp_base.get(url))
|
577
|
-
|
578
|
-
loop.run_until_complete(page.activate())
|
573
|
+
loop.run_until_complete(page.activate())
|
579
574
|
loop.run_until_complete(page.wait())
|
580
575
|
if not safe_url:
|
581
576
|
time.sleep(constants.UC.CDP_MODE_OPEN_WAIT)
|
582
|
-
if IS_WINDOWS:
|
583
|
-
time.sleep(constants.UC.EXTRA_WINDOWS_WAIT)
|
584
|
-
else:
|
585
|
-
time.sleep(0.012)
|
586
577
|
cdp = types.SimpleNamespace()
|
587
578
|
CDPM = sb_cdp.CDPMethods(loop, page, driver)
|
588
579
|
cdp.get = CDPM.get
|
@@ -618,6 +609,7 @@ def uc_open_with_cdp_mode(driver, url=None):
|
|
618
609
|
cdp.remove_element = CDPM.remove_element
|
619
610
|
cdp.remove_from_dom = CDPM.remove_from_dom
|
620
611
|
cdp.remove_elements = CDPM.remove_elements
|
612
|
+
cdp.scroll_into_view = CDPM.scroll_into_view
|
621
613
|
cdp.send_keys = CDPM.send_keys
|
622
614
|
cdp.press_keys = CDPM.press_keys
|
623
615
|
cdp.type = CDPM.type
|
@@ -688,12 +680,8 @@ def uc_open_with_cdp_mode(driver, url=None):
|
|
688
680
|
cdp.assert_title = CDPM.assert_title
|
689
681
|
cdp.assert_text = CDPM.assert_text
|
690
682
|
cdp.assert_exact_text = CDPM.assert_exact_text
|
691
|
-
cdp.scroll_into_view = CDPM.scroll_into_view
|
692
|
-
cdp.scroll_to_y = CDPM.scroll_to_y
|
693
|
-
cdp.scroll_to_top = CDPM.scroll_to_top
|
694
|
-
cdp.scroll_to_bottom = CDPM.scroll_to_bottom
|
695
|
-
cdp.scroll_up = CDPM.scroll_up
|
696
683
|
cdp.scroll_down = CDPM.scroll_down
|
684
|
+
cdp.scroll_up = CDPM.scroll_up
|
697
685
|
cdp.save_screenshot = CDPM.save_screenshot
|
698
686
|
cdp.page = page # async world
|
699
687
|
cdp.driver = driver.cdp_base # async world
|
@@ -1257,18 +1245,12 @@ def _uc_gui_click_captcha(
|
|
1257
1245
|
return
|
1258
1246
|
if x and y:
|
1259
1247
|
sb_config._saved_cf_x_y = (x, y)
|
1260
|
-
if
|
1261
|
-
|
1262
|
-
|
1263
|
-
|
1264
|
-
)
|
1265
|
-
else:
|
1266
|
-
driver.disconnect()
|
1248
|
+
if driver.is_element_present(".footer .clearfix .ray-id"):
|
1249
|
+
driver.uc_open_with_disconnect(driver.get_current_url(), 3.8)
|
1250
|
+
else:
|
1251
|
+
driver.disconnect()
|
1267
1252
|
with suppress(Exception):
|
1268
1253
|
_uc_gui_click_x_y(driver, x, y, timeframe=0.32)
|
1269
|
-
if __is_cdp_swap_needed(driver):
|
1270
|
-
time.sleep(float(constants.UC.RECONNECT_TIME) / 2.0)
|
1271
|
-
return
|
1272
1254
|
reconnect_time = (float(constants.UC.RECONNECT_TIME) / 2.0) + 0.6
|
1273
1255
|
if IS_LINUX:
|
1274
1256
|
reconnect_time = constants.UC.RECONNECT_TIME + 0.2
|
seleniumbase/core/sb_cdp.py
CHANGED
@@ -89,10 +89,6 @@ class CDPMethods():
|
|
89
89
|
safe_url = False
|
90
90
|
if not safe_url:
|
91
91
|
time.sleep(constants.UC.CDP_MODE_OPEN_WAIT)
|
92
|
-
if shared_utils.is_windows():
|
93
|
-
time.sleep(constants.UC.EXTRA_WINDOWS_WAIT)
|
94
|
-
else:
|
95
|
-
time.sleep(0.012)
|
96
92
|
self.__slow_mode_pause_if_set()
|
97
93
|
self.loop.run_until_complete(self.page.wait())
|
98
94
|
|
@@ -582,6 +578,9 @@ class CDPMethods():
|
|
582
578
|
with suppress(Exception):
|
583
579
|
self.loop.run_until_complete(self.page.evaluate(js_code))
|
584
580
|
|
581
|
+
def scroll_into_view(self, selector):
|
582
|
+
self.find_element(selector).scroll_into_view()
|
583
|
+
|
585
584
|
def send_keys(self, selector, text, timeout=settings.SMALL_TIMEOUT):
|
586
585
|
self.__slow_mode_pause_if_set()
|
587
586
|
element = self.select(selector, timeout=timeout)
|
@@ -1522,36 +1521,15 @@ class CDPMethods():
|
|
1522
1521
|
% (text, element.text_all, selector)
|
1523
1522
|
)
|
1524
1523
|
|
1525
|
-
def
|
1526
|
-
self.
|
1527
|
-
|
1528
|
-
|
1529
|
-
def scroll_to_y(self, y):
|
1530
|
-
y = int(y)
|
1531
|
-
js_code = "window.scrollTo(0, %s);" % y
|
1532
|
-
with suppress(Exception):
|
1533
|
-
self.loop.run_until_complete(self.page.evaluate(js_code))
|
1534
|
-
self.loop.run_until_complete(self.page.wait())
|
1535
|
-
|
1536
|
-
def scroll_to_top(self):
|
1537
|
-
js_code = "window.scrollTo(0, 0);"
|
1538
|
-
with suppress(Exception):
|
1539
|
-
self.loop.run_until_complete(self.page.evaluate(js_code))
|
1540
|
-
self.loop.run_until_complete(self.page.wait())
|
1541
|
-
|
1542
|
-
def scroll_to_bottom(self):
|
1543
|
-
js_code = "window.scrollTo(0, 10000);"
|
1544
|
-
with suppress(Exception):
|
1545
|
-
self.loop.run_until_complete(self.page.evaluate(js_code))
|
1546
|
-
self.loop.run_until_complete(self.page.wait())
|
1524
|
+
def scroll_down(self, amount=25):
|
1525
|
+
self.loop.run_until_complete(
|
1526
|
+
self.page.scroll_down(amount)
|
1527
|
+
)
|
1547
1528
|
|
1548
1529
|
def scroll_up(self, amount=25):
|
1549
|
-
self.loop.run_until_complete(
|
1550
|
-
|
1551
|
-
|
1552
|
-
def scroll_down(self, amount=25):
|
1553
|
-
self.loop.run_until_complete(self.page.scroll_down(amount))
|
1554
|
-
self.loop.run_until_complete(self.page.wait())
|
1530
|
+
self.loop.run_until_complete(
|
1531
|
+
self.page.scroll_up(amount)
|
1532
|
+
)
|
1555
1533
|
|
1556
1534
|
def save_screenshot(self, name, folder=None, selector=None):
|
1557
1535
|
filename = name
|
seleniumbase/core/sb_driver.py
CHANGED
@@ -249,11 +249,8 @@ class DriverMethods():
|
|
249
249
|
selector = kwargs["selector"]
|
250
250
|
else:
|
251
251
|
selector = args[0]
|
252
|
-
|
253
|
-
|
254
|
-
return
|
255
|
-
else:
|
256
|
-
self.driver.connect()
|
252
|
+
self.driver.cdp.highlight(selector)
|
253
|
+
return
|
257
254
|
if "scroll" in kwargs:
|
258
255
|
kwargs.pop("scroll")
|
259
256
|
w_args = kwargs.copy()
|
@@ -6144,9 +6144,6 @@ class BaseCase(unittest.TestCase):
|
|
6144
6144
|
original_selector = selector
|
6145
6145
|
original_by = by
|
6146
6146
|
selector, by = self.__recalculate_selector(selector, by)
|
6147
|
-
if self.__is_cdp_swap_needed() and ":contains(" not in selector:
|
6148
|
-
self.cdp.scroll_into_view(selector)
|
6149
|
-
return
|
6150
6147
|
element = self.wait_for_element_visible(
|
6151
6148
|
original_selector, by=original_by, timeout=timeout
|
6152
6149
|
)
|
@@ -6193,36 +6190,24 @@ class BaseCase(unittest.TestCase):
|
|
6193
6190
|
def scroll_to_top(self):
|
6194
6191
|
"""Scroll to the top of the page."""
|
6195
6192
|
self.__check_scope()
|
6196
|
-
if self.__is_cdp_swap_needed():
|
6197
|
-
self.cdp.scroll_to_top()
|
6198
|
-
return
|
6199
6193
|
scroll_script = "window.scrollTo(0, 0);"
|
6200
|
-
|
6194
|
+
try:
|
6201
6195
|
self.execute_script(scroll_script)
|
6202
6196
|
time.sleep(0.012)
|
6197
|
+
return True
|
6198
|
+
except Exception:
|
6199
|
+
return False
|
6203
6200
|
|
6204
6201
|
def scroll_to_bottom(self):
|
6205
6202
|
"""Scroll to the bottom of the page."""
|
6206
6203
|
self.__check_scope()
|
6207
|
-
if self.__is_cdp_swap_needed():
|
6208
|
-
self.cdp.scroll_to_bottom()
|
6209
|
-
return
|
6210
6204
|
scroll_script = "window.scrollTo(0, 10000);"
|
6211
|
-
|
6212
|
-
self.execute_script(scroll_script)
|
6213
|
-
time.sleep(0.012)
|
6214
|
-
|
6215
|
-
def scroll_to_y(self, y):
|
6216
|
-
"""Scroll to y position on the page."""
|
6217
|
-
self.__check_scope()
|
6218
|
-
y = int(y)
|
6219
|
-
if self.__is_cdp_swap_needed():
|
6220
|
-
self.cdp.scroll_to_y(y)
|
6221
|
-
return
|
6222
|
-
scroll_script = "window.scrollTo(0, %s);" % y
|
6223
|
-
with suppress(Exception):
|
6205
|
+
try:
|
6224
6206
|
self.execute_script(scroll_script)
|
6225
6207
|
time.sleep(0.012)
|
6208
|
+
return True
|
6209
|
+
except Exception:
|
6210
|
+
return False
|
6226
6211
|
|
6227
6212
|
def click_xpath(self, xpath):
|
6228
6213
|
"""Technically, self.click() automatically detects xpath selectors,
|
@@ -10,7 +10,6 @@ from seleniumbase import config as sb_config
|
|
10
10
|
from seleniumbase.config import settings
|
11
11
|
from seleniumbase.fixtures import constants
|
12
12
|
from seleniumbase.fixtures import css_to_xpath
|
13
|
-
from seleniumbase.fixtures import shared_utils
|
14
13
|
from seleniumbase.fixtures import xpath_to_css
|
15
14
|
|
16
15
|
|
@@ -25,6 +24,9 @@ def wait_for_ready_state_complete(driver, timeout=settings.LARGE_TIMEOUT):
|
|
25
24
|
(Previously, tests would fail immediately if exceeding the timeout.)"""
|
26
25
|
if hasattr(settings, "SKIP_JS_WAITS") and settings.SKIP_JS_WAITS:
|
27
26
|
return
|
27
|
+
if sb_config.time_limit and not sb_config.recorder_mode:
|
28
|
+
from seleniumbase.fixtures import shared_utils
|
29
|
+
|
28
30
|
start_ms = time.time() * 1000.0
|
29
31
|
stop_ms = start_ms + (timeout * 1000.0)
|
30
32
|
for x in range(int(timeout * 10)):
|
@@ -241,6 +243,8 @@ def escape_quotes_if_needed(string):
|
|
241
243
|
def is_in_frame(driver):
|
242
244
|
# Returns True if the driver has switched to a frame.
|
243
245
|
# Returns False if the driver was on default content.
|
246
|
+
from seleniumbase.fixtures import shared_utils
|
247
|
+
|
244
248
|
if shared_utils.is_cdp_swap_needed(driver):
|
245
249
|
return False
|
246
250
|
in_basic_frame = driver.execute_script(
|
@@ -1555,6 +1555,8 @@ def _reconnect_if_disconnected(driver):
|
|
1555
1555
|
if (
|
1556
1556
|
hasattr(driver, "_is_using_uc")
|
1557
1557
|
and driver._is_using_uc
|
1558
|
+
and hasattr(driver, "_is_connected")
|
1559
|
+
and not driver._is_connected
|
1558
1560
|
and hasattr(driver, "is_connected")
|
1559
1561
|
and not driver.is_connected()
|
1560
1562
|
):
|
@@ -84,17 +84,6 @@ def fix_url_as_needed(url):
|
|
84
84
|
return url
|
85
85
|
|
86
86
|
|
87
|
-
def reconnect_if_disconnected(driver):
|
88
|
-
if (
|
89
|
-
hasattr(driver, "_is_using_uc")
|
90
|
-
and driver._is_using_uc
|
91
|
-
and hasattr(driver, "is_connected")
|
92
|
-
and not driver.is_connected()
|
93
|
-
):
|
94
|
-
with suppress(Exception):
|
95
|
-
driver.connect()
|
96
|
-
|
97
|
-
|
98
87
|
def is_cdp_swap_needed(driver):
|
99
88
|
"""
|
100
89
|
When someone is using CDP Mode with a disconnected webdriver,
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: seleniumbase
|
3
|
-
Version: 4.32.
|
3
|
+
Version: 4.32.10a2
|
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
|
@@ -127,7 +127,7 @@ Requires-Dist: allure-behave>=2.13.5; extra == "allure"
|
|
127
127
|
Provides-Extra: coverage
|
128
128
|
Requires-Dist: coverage>=7.6.1; python_version < "3.9" and extra == "coverage"
|
129
129
|
Requires-Dist: pytest-cov>=5.0.0; python_version < "3.9" and extra == "coverage"
|
130
|
-
Requires-Dist: coverage>=7.6.
|
130
|
+
Requires-Dist: coverage>=7.6.4; python_version >= "3.9" and extra == "coverage"
|
131
131
|
Requires-Dist: pytest-cov>=6.0.0; python_version >= "3.9" and extra == "coverage"
|
132
132
|
Provides-Extra: flake8
|
133
133
|
Requires-Dist: mccabe==0.7.0; extra == "flake8"
|
@@ -3,7 +3,7 @@ sbase/__main__.py,sha256=G0bVB1-DM4PGwQ1KyOupaWCs4ePbChZNNWuX2htim5U,647
|
|
3
3
|
sbase/steps.py,sha256=bKT_u5bJkKzYWEuAXi9NVVRYYxQRCM1_YJUrNFFRVPY,42865
|
4
4
|
seleniumbase/__init__.py,sha256=OtJh8nGKL4xtZpw8KPqmn7Q6R-86t4cWUDyVF5MbMTo,2398
|
5
5
|
seleniumbase/__main__.py,sha256=dn1p6dgCchmcH1zzTzzQvFwwdQQqnTGH6ULV9m4hv24,654
|
6
|
-
seleniumbase/__version__.py,sha256=
|
6
|
+
seleniumbase/__version__.py,sha256=DhXDI1N_CDARJMnRISb4c1sjUq05uNArv7Z4T6iANno,49
|
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=1oAA4wFzVboNhIFDwJLD3jgy9RuoavywKQG7R67bNZE,10908
|
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=
|
39
|
+
seleniumbase/core/browser_launcher.py,sha256=fsq6Ip_2C5Ih_TsOr5-5kU1gPS0mSwG_2DkJbMB_Is0,219081
|
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,8 +50,8 @@ 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=
|
54
|
-
seleniumbase/core/sb_driver.py,sha256=
|
53
|
+
seleniumbase/core/sb_cdp.py,sha256=CPQvyJ8v_xozVdGt5g9JFjo0aYsLaOEm9gnthpysrOc,59586
|
54
|
+
seleniumbase/core/sb_driver.py,sha256=Yd9BpjnOUuZqYRGmsERVKc1W-e8qwTt7SAytLatkXPA,12070
|
55
55
|
seleniumbase/core/session_helper.py,sha256=s9zD3PVZEWVzG2h81cCUskbNWLfdjC_LwwQjKptHCak,558
|
56
56
|
seleniumbase/core/settings_parser.py,sha256=KokVXpCiGZhJ-D4Bo-hizPz5r-iefzWoiTANu9zNaq4,7504
|
57
57
|
seleniumbase/core/style_sheet.py,sha256=tPpJ1xl6Kuw425Z-3Y0OgVRLGXk_ciBDREZjXk_NuPE,11395
|
@@ -65,14 +65,14 @@ 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=
|
69
|
-
seleniumbase/fixtures/constants.py,sha256=
|
68
|
+
seleniumbase/fixtures/base_case.py,sha256=ad--jkCZk2CTzXXk4_ncrI8nqWgHhGPjVmS3vHhnplQ,712849
|
69
|
+
seleniumbase/fixtures/constants.py,sha256=XYYMpB-ZDI756LvfhSK9RxdqQ_qO9fJVXgBqBYlQNkk,13609
|
70
70
|
seleniumbase/fixtures/css_to_xpath.py,sha256=9ouDB1xl4MJ2os6JOgTIAyHKOQfuxtxvXC3O5hSnEKA,1954
|
71
71
|
seleniumbase/fixtures/errors.py,sha256=KyxuEVx_e3MPhVrJfNIa_3ltMpbCFxfy_jxK8RFNTns,555
|
72
|
-
seleniumbase/fixtures/js_utils.py,sha256=
|
73
|
-
seleniumbase/fixtures/page_actions.py,sha256=
|
72
|
+
seleniumbase/fixtures/js_utils.py,sha256=5o4CTLcCyd717lJ_atOYcC6kPRiZFx-LJIlixRrP_cE,51061
|
73
|
+
seleniumbase/fixtures/page_actions.py,sha256=fOCb2NB2PpEaE8gpAVu-73VjwLzfwP1R9HsRkix_z6s,66634
|
74
74
|
seleniumbase/fixtures/page_utils.py,sha256=5m7iXpikLs80TJoRO6_gEfXE1AKeQgcH1aFbR8o1C9A,12034
|
75
|
-
seleniumbase/fixtures/shared_utils.py,sha256=
|
75
|
+
seleniumbase/fixtures/shared_utils.py,sha256=MwCrt58YAv_XrfNfYjo_quUTWfYArlnf-aexSZGIyRs,7271
|
76
76
|
seleniumbase/fixtures/unittest_helper.py,sha256=sfZ92rZeBAn_sF_yQ3I6_I7h3lyU5-cV_UMegBNoEm8,1294
|
77
77
|
seleniumbase/fixtures/words.py,sha256=FOA4mAYvl3EPVpBTvgvK6YwCL8BdlRCmed685kEe7Vg,7827
|
78
78
|
seleniumbase/fixtures/xpath_to_css.py,sha256=lML56k656fElXJ4NJF07r35FjctrbgQkXUotNk7A-as,8876
|
@@ -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.32.
|
139
|
-
seleniumbase-4.32.
|
140
|
-
seleniumbase-4.32.
|
141
|
-
seleniumbase-4.32.
|
142
|
-
seleniumbase-4.32.
|
143
|
-
seleniumbase-4.32.
|
138
|
+
seleniumbase-4.32.10a2.dist-info/LICENSE,sha256=odSYtWibXBnQ1gBg6CnDZ82n8kLF_if5-2nbqnEyD8k,1085
|
139
|
+
seleniumbase-4.32.10a2.dist-info/METADATA,sha256=0JyQxemq40Q9x2UAb9NuhSv78XL2Kjg7VsnDCxvBhqw,86464
|
140
|
+
seleniumbase-4.32.10a2.dist-info/WHEEL,sha256=R06PA3UVYHThwHvxuRWMqaGcr-PuniXahwjmQRFMEkY,91
|
141
|
+
seleniumbase-4.32.10a2.dist-info/entry_points.txt,sha256=CNrh2EKNaHYEhO6pP1RJyVLB99LkDDYX7TnUK8xfjqk,623
|
142
|
+
seleniumbase-4.32.10a2.dist-info/top_level.txt,sha256=4N97aBOQ8ETCnDnokBsWb07lJfTaq3C1ZzYRxvLMxqU,19
|
143
|
+
seleniumbase-4.32.10a2.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|