seleniumbase 4.33.15__py3-none-any.whl → 4.33.16a0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- seleniumbase/__version__.py +1 -1
- seleniumbase/console_scripts/sb_commander.py +5 -5
- seleniumbase/core/browser_launcher.py +26 -0
- seleniumbase/fixtures/base_case.py +23 -5
- seleniumbase/plugins/pytest_plugin.py +42 -0
- {seleniumbase-4.33.15.dist-info → seleniumbase-4.33.16a0.dist-info}/METADATA +6 -4
- {seleniumbase-4.33.15.dist-info → seleniumbase-4.33.16a0.dist-info}/RECORD +11 -11
- {seleniumbase-4.33.15.dist-info → seleniumbase-4.33.16a0.dist-info}/LICENSE +0 -0
- {seleniumbase-4.33.15.dist-info → seleniumbase-4.33.16a0.dist-info}/WHEEL +0 -0
- {seleniumbase-4.33.15.dist-info → seleniumbase-4.33.16a0.dist-info}/entry_points.txt +0 -0
- {seleniumbase-4.33.15.dist-info → seleniumbase-4.33.16a0.dist-info}/top_level.txt +0 -0
seleniumbase/__version__.py
CHANGED
@@ -1,2 +1,2 @@
|
|
1
1
|
# seleniumbase package
|
2
|
-
__version__ = "4.33.
|
2
|
+
__version__ = "4.33.16a0"
|
@@ -156,9 +156,9 @@ def do_pytest_run(
|
|
156
156
|
if save_screenshots:
|
157
157
|
full_run_command += " --screenshot"
|
158
158
|
|
159
|
-
|
160
|
-
if "
|
161
|
-
|
159
|
+
capture_needed = False
|
160
|
+
if "--capture" not in additional_options.split(" "):
|
161
|
+
capture_needed = True
|
162
162
|
|
163
163
|
additional_options = additional_options.strip()
|
164
164
|
if additional_options:
|
@@ -168,8 +168,8 @@ def do_pytest_run(
|
|
168
168
|
if verbose:
|
169
169
|
full_run_command += " -v"
|
170
170
|
|
171
|
-
if
|
172
|
-
full_run_command += " -
|
171
|
+
if capture_needed:
|
172
|
+
full_run_command += " --capture=tee-sys"
|
173
173
|
|
174
174
|
print(full_run_command)
|
175
175
|
subprocess.Popen(full_run_command, shell=True)
|
@@ -888,6 +888,13 @@ def __install_pyautogui_if_missing():
|
|
888
888
|
_xvfb_display.start()
|
889
889
|
sb_config._virtual_display = _xvfb_display
|
890
890
|
sb_config.headless_active = True
|
891
|
+
if (
|
892
|
+
hasattr(sb_config, "reuse_session")
|
893
|
+
and sb_config.reuse_session
|
894
|
+
and hasattr(sb_config, "_vd_list")
|
895
|
+
and isinstance(sb_config._vd_list, list)
|
896
|
+
):
|
897
|
+
sb_config._vd_list.append(_xvfb_display)
|
891
898
|
|
892
899
|
|
893
900
|
def install_pyautogui_if_missing(driver):
|
@@ -1217,6 +1224,13 @@ def _uc_gui_click_captcha(
|
|
1217
1224
|
and driver.is_element_present("#challenge-form div > div")
|
1218
1225
|
):
|
1219
1226
|
frame = "#challenge-form div > div"
|
1227
|
+
elif (
|
1228
|
+
driver.is_element_present('[name*="cf-turnstile-"]')
|
1229
|
+
and driver.is_element_present(
|
1230
|
+
'[style="display: grid;"] div div'
|
1231
|
+
)
|
1232
|
+
):
|
1233
|
+
frame = '[style="display: grid;"] div div'
|
1220
1234
|
elif (
|
1221
1235
|
driver.is_element_present('[name*="cf-turnstile-"]')
|
1222
1236
|
and driver.is_element_present("[class*=spacer] + div div")
|
@@ -3838,6 +3852,12 @@ def get_local_driver(
|
|
3838
3852
|
edge_options.add_argument("--guest")
|
3839
3853
|
if dark_mode:
|
3840
3854
|
edge_options.add_argument("--enable-features=WebContentsForceDark")
|
3855
|
+
if headless1:
|
3856
|
+
# developer.chrome.com/blog/removing-headless-old-from-chrome
|
3857
|
+
with suppress(Exception):
|
3858
|
+
if int(str(use_version).split(".")[0]) >= 132:
|
3859
|
+
headless1 = False
|
3860
|
+
headless2 = True
|
3841
3861
|
if headless2:
|
3842
3862
|
try:
|
3843
3863
|
if use_version == "latest" or int(use_version) >= 109:
|
@@ -4379,6 +4399,12 @@ def get_local_driver(
|
|
4379
4399
|
use_version = find_chromedriver_version_to_use(
|
4380
4400
|
use_version, driver_version
|
4381
4401
|
)
|
4402
|
+
if headless1:
|
4403
|
+
# developer.chrome.com/blog/removing-headless-old-from-chrome
|
4404
|
+
with suppress(Exception):
|
4405
|
+
if int(str(use_version).split(".")[0]) >= 132:
|
4406
|
+
headless1 = False
|
4407
|
+
headless2 = True
|
4382
4408
|
if headless2:
|
4383
4409
|
try:
|
4384
4410
|
if (
|
@@ -95,6 +95,7 @@ logging.getLogger("requests").setLevel(logging.ERROR)
|
|
95
95
|
logging.getLogger("urllib3").setLevel(logging.ERROR)
|
96
96
|
urllib3.disable_warnings()
|
97
97
|
LOGGER.setLevel(logging.WARNING)
|
98
|
+
is_linux = shared_utils.is_linux()
|
98
99
|
is_windows = shared_utils.is_windows()
|
99
100
|
python3_11_or_newer = False
|
100
101
|
if sys.version_info >= (3, 11):
|
@@ -4828,7 +4829,7 @@ class BaseCase(unittest.TestCase):
|
|
4828
4829
|
from seleniumbase.js_code.recorder_js import recorder_js
|
4829
4830
|
|
4830
4831
|
if not self.is_chromium():
|
4831
|
-
if
|
4832
|
+
if not is_linux:
|
4832
4833
|
c1 = colorama.Fore.BLUE + colorama.Back.LIGHTCYAN_EX
|
4833
4834
|
c2 = colorama.Fore.BLUE + colorama.Back.LIGHTGREEN_EX
|
4834
4835
|
cr = colorama.Style.RESET_ALL
|
@@ -5658,7 +5659,7 @@ class BaseCase(unittest.TestCase):
|
|
5658
5659
|
c1 = ""
|
5659
5660
|
c2 = ""
|
5660
5661
|
cr = ""
|
5661
|
-
if
|
5662
|
+
if not is_linux:
|
5662
5663
|
c1 = colorama.Fore.RED + colorama.Back.LIGHTYELLOW_EX
|
5663
5664
|
c2 = colorama.Fore.LIGHTRED_EX + colorama.Back.LIGHTYELLOW_EX
|
5664
5665
|
cr = colorama.Style.RESET_ALL
|
@@ -5760,7 +5761,7 @@ class BaseCase(unittest.TestCase):
|
|
5760
5761
|
c1 = ""
|
5761
5762
|
c2 = ""
|
5762
5763
|
cr = ""
|
5763
|
-
if
|
5764
|
+
if not is_linux:
|
5764
5765
|
c1 = colorama.Fore.RED + colorama.Back.LIGHTYELLOW_EX
|
5765
5766
|
c2 = colorama.Fore.LIGHTRED_EX + colorama.Back.LIGHTYELLOW_EX
|
5766
5767
|
cr = colorama.Style.RESET_ALL
|
@@ -14009,6 +14010,9 @@ class BaseCase(unittest.TestCase):
|
|
14009
14010
|
if not self.undetectable:
|
14010
14011
|
sb_config._virtual_display = self._xvfb_display
|
14011
14012
|
sb_config.headless_active = True
|
14013
|
+
if self._reuse_session and hasattr(sb_config, "_vd_list"):
|
14014
|
+
if isinstance(sb_config._vd_list, list):
|
14015
|
+
sb_config._vd_list.append(self._xvfb_display)
|
14012
14016
|
|
14013
14017
|
def __activate_virtual_display(self):
|
14014
14018
|
if self.undetectable and not (self.headless or self.headless2):
|
@@ -14033,6 +14037,9 @@ class BaseCase(unittest.TestCase):
|
|
14033
14037
|
self.__activate_standard_virtual_display()
|
14034
14038
|
else:
|
14035
14039
|
self.headless_active = True
|
14040
|
+
if self._reuse_session and hasattr(sb_config, "_vd_list"):
|
14041
|
+
if isinstance(sb_config._vd_list, list):
|
14042
|
+
sb_config._vd_list.append(self._xvfb_display)
|
14036
14043
|
except Exception as e:
|
14037
14044
|
if hasattr(e, "msg"):
|
14038
14045
|
print("\n" + str(e.msg))
|
@@ -14087,7 +14094,7 @@ class BaseCase(unittest.TestCase):
|
|
14087
14094
|
"""This is only needed on Linux.
|
14088
14095
|
The "--xvfb" arg is still useful, as it prevents headless mode,
|
14089
14096
|
which is the default mode on Linux unless using another arg."""
|
14090
|
-
if
|
14097
|
+
if is_linux and (not self.headed or self.xvfb):
|
14091
14098
|
pip_find_lock = fasteners.InterProcessLock(
|
14092
14099
|
constants.PipInstall.FINDLOCK
|
14093
14100
|
)
|
@@ -16604,7 +16611,11 @@ class BaseCase(unittest.TestCase):
|
|
16604
16611
|
# (Pynose / Behave / Pure Python) Close all open browser windows
|
16605
16612
|
self.__quit_all_drivers()
|
16606
16613
|
# Resume tearDown() for all test runners, (Pytest / Pynose / Behave)
|
16607
|
-
if
|
16614
|
+
if (
|
16615
|
+
hasattr(self, "_xvfb_display")
|
16616
|
+
and self._xvfb_display
|
16617
|
+
and not self._reuse_session
|
16618
|
+
):
|
16608
16619
|
# Stop the Xvfb virtual display launched from BaseCase
|
16609
16620
|
try:
|
16610
16621
|
if hasattr(self._xvfb_display, "stop"):
|
@@ -16619,6 +16630,13 @@ class BaseCase(unittest.TestCase):
|
|
16619
16630
|
hasattr(sb_config, "_virtual_display")
|
16620
16631
|
and sb_config._virtual_display
|
16621
16632
|
and hasattr(sb_config._virtual_display, "stop")
|
16633
|
+
and (
|
16634
|
+
not hasattr(sb_config, "reuse_session")
|
16635
|
+
or (
|
16636
|
+
hasattr(sb_config, "reuse_session")
|
16637
|
+
and not sb_config.reuse_session
|
16638
|
+
)
|
16639
|
+
)
|
16622
16640
|
):
|
16623
16641
|
# CDP Mode may launch a 2nd Xvfb virtual display
|
16624
16642
|
try:
|
@@ -1371,6 +1371,7 @@ def pytest_addoption(parser):
|
|
1371
1371
|
|
1372
1372
|
arg_join = " ".join(sys_argv)
|
1373
1373
|
sb_config._browser_shortcut = None
|
1374
|
+
sb_config._vd_list = []
|
1374
1375
|
|
1375
1376
|
# SeleniumBase does not support pytest-timeout due to hanging browsers.
|
1376
1377
|
for arg in sys_argv:
|
@@ -2017,6 +2018,13 @@ def pytest_runtest_teardown(item):
|
|
2017
2018
|
hasattr(self, "_xvfb_display")
|
2018
2019
|
and self._xvfb_display
|
2019
2020
|
and hasattr(self._xvfb_display, "stop")
|
2021
|
+
and (
|
2022
|
+
not hasattr(sb_config, "reuse_session")
|
2023
|
+
or (
|
2024
|
+
hasattr(sb_config, "reuse_session")
|
2025
|
+
and not sb_config.reuse_session
|
2026
|
+
)
|
2027
|
+
)
|
2020
2028
|
):
|
2021
2029
|
self.headless_active = False
|
2022
2030
|
sb_config.headless_active = False
|
@@ -2026,6 +2034,13 @@ def pytest_runtest_teardown(item):
|
|
2026
2034
|
hasattr(sb_config, "_virtual_display")
|
2027
2035
|
and sb_config._virtual_display
|
2028
2036
|
and hasattr(sb_config._virtual_display, "stop")
|
2037
|
+
and (
|
2038
|
+
not hasattr(sb_config, "reuse_session")
|
2039
|
+
or (
|
2040
|
+
hasattr(sb_config, "reuse_session")
|
2041
|
+
and not sb_config.reuse_session
|
2042
|
+
)
|
2043
|
+
)
|
2029
2044
|
):
|
2030
2045
|
sb_config._virtual_display.stop()
|
2031
2046
|
sb_config._virtual_display = None
|
@@ -2139,6 +2154,21 @@ def _perform_pytest_unconfigure_(config):
|
|
2139
2154
|
except Exception:
|
2140
2155
|
pass
|
2141
2156
|
sb_config.shared_driver = None
|
2157
|
+
with suppress(Exception):
|
2158
|
+
if (
|
2159
|
+
hasattr(sb_config, "_virtual_display")
|
2160
|
+
and sb_config._virtual_display
|
2161
|
+
and hasattr(sb_config._virtual_display, "stop")
|
2162
|
+
):
|
2163
|
+
sb_config._virtual_display.stop()
|
2164
|
+
sb_config._virtual_display = None
|
2165
|
+
sb_config.headless_active = False
|
2166
|
+
if hasattr(sb_config, "_vd_list") and sb_config._vd_list:
|
2167
|
+
if isinstance(sb_config._vd_list, list):
|
2168
|
+
for display in sb_config._vd_list:
|
2169
|
+
if display:
|
2170
|
+
with suppress(Exception):
|
2171
|
+
display.stop()
|
2142
2172
|
if hasattr(sb_config, "log_path") and sb_config.item_count > 0:
|
2143
2173
|
log_helper.archive_logs_if_set(
|
2144
2174
|
constants.Logs.LATEST + "/", sb_config.archive_logs
|
@@ -2193,6 +2223,9 @@ def _perform_pytest_unconfigure_(config):
|
|
2193
2223
|
the_html_r = the_html_r.replace(
|
2194
2224
|
ph_link, "%s and %s" % (sb_link, ph_link)
|
2195
2225
|
)
|
2226
|
+
the_html_r = the_html_r.replace(
|
2227
|
+
"findAll('.collapsible", "//findAll('.collapsible"
|
2228
|
+
)
|
2196
2229
|
the_html_r = the_html_r.replace(
|
2197
2230
|
"mediaName.innerText", "//mediaName.innerText"
|
2198
2231
|
)
|
@@ -2228,6 +2261,9 @@ def _perform_pytest_unconfigure_(config):
|
|
2228
2261
|
html_style = html_style.replace(
|
2229
2262
|
"- 80px);", "- 80px);\n margin-bottom: -42px;"
|
2230
2263
|
)
|
2264
|
+
html_style = html_style.replace(".collapsible", ".oldc")
|
2265
|
+
html_style = html_style.replace(" (hide details)", "")
|
2266
|
+
html_style = html_style.replace(" (show details)", "")
|
2231
2267
|
with open(assets_style, "w", encoding="utf-8") as f:
|
2232
2268
|
f.write(html_style)
|
2233
2269
|
with suppress(Exception):
|
@@ -2327,6 +2363,9 @@ def _perform_pytest_unconfigure_(config):
|
|
2327
2363
|
html_style = html_style.replace(
|
2328
2364
|
"- 80px);", "- 80px);\n margin-bottom: -42px;"
|
2329
2365
|
)
|
2366
|
+
html_style = html_style.replace(".collapsible", ".oldc")
|
2367
|
+
html_style = html_style.replace(" (hide details)", "")
|
2368
|
+
html_style = html_style.replace(" (show details)", "")
|
2330
2369
|
with open(assets_style, "w", encoding="utf-8") as f:
|
2331
2370
|
f.write(html_style)
|
2332
2371
|
with suppress(Exception):
|
@@ -2394,6 +2433,9 @@ def _perform_pytest_unconfigure_(config):
|
|
2394
2433
|
the_html_r = the_html_r.replace(
|
2395
2434
|
ph_link, "%s and %s" % (sb_link, ph_link)
|
2396
2435
|
)
|
2436
|
+
the_html_r = the_html_r.replace(
|
2437
|
+
"findAll('.collapsible", "//findAll('.collapsible"
|
2438
|
+
)
|
2397
2439
|
the_html_r = the_html_r.replace(
|
2398
2440
|
"mediaName.innerText", "//mediaName.innerText"
|
2399
2441
|
)
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: seleniumbase
|
3
|
-
Version: 4.33.
|
3
|
+
Version: 4.33.16a0
|
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
|
@@ -68,8 +68,9 @@ Requires-Dist: attrs>=24.3.0
|
|
68
68
|
Requires-Dist: certifi>=2024.12.14
|
69
69
|
Requires-Dist: exceptiongroup>=1.2.2
|
70
70
|
Requires-Dist: websockets~=13.1; python_version < "3.9"
|
71
|
-
Requires-Dist: websockets>=14.
|
72
|
-
Requires-Dist: filelock
|
71
|
+
Requires-Dist: websockets>=14.2; python_version >= "3.9"
|
72
|
+
Requires-Dist: filelock~=3.16.1; python_version < "3.9"
|
73
|
+
Requires-Dist: filelock>=3.17.0; python_version >= "3.9"
|
73
74
|
Requires-Dist: fasteners>=0.19
|
74
75
|
Requires-Dist: mycdp>=1.1.0
|
75
76
|
Requires-Dist: pynose>=1.5.3
|
@@ -102,7 +103,8 @@ Requires-Dist: trio==0.28.0; python_version >= "3.9"
|
|
102
103
|
Requires-Dist: trio-websocket==0.11.1
|
103
104
|
Requires-Dist: wsproto==1.2.0
|
104
105
|
Requires-Dist: websocket-client==1.8.0
|
105
|
-
Requires-Dist: selenium==4.27.1
|
106
|
+
Requires-Dist: selenium==4.27.1; python_version < "3.9"
|
107
|
+
Requires-Dist: selenium==4.28.0; python_version >= "3.9"
|
106
108
|
Requires-Dist: cssselect==1.2.0
|
107
109
|
Requires-Dist: sortedcontainers==2.4.0
|
108
110
|
Requires-Dist: execnet==2.1.1
|
@@ -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=
|
6
|
+
seleniumbase/__version__.py,sha256=w5nhncFHUMDRcAGa9Oi3T4P6zamp95RMBhMKFQQBawI,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
|
@@ -24,7 +24,7 @@ seleniumbase/console_scripts/rich_helper.py,sha256=U_zvXpalxVV8rtg8c8EnNNmnh45ti
|
|
24
24
|
seleniumbase/console_scripts/run.py,sha256=t_mpBUIJLBrUtzJ5RQL5y8UVCTm7DhNyS94rHwIOnRs,58850
|
25
25
|
seleniumbase/console_scripts/sb_behave_gui.py,sha256=3Zl7_QQczvkkQW_UuaqYEUlEjiZ6AJzHR9GeNyVVXkc,15147
|
26
26
|
seleniumbase/console_scripts/sb_caseplans.py,sha256=qlmvjQ49bOBE1Q29fVmabimkVibCVr25GNtJhFPTMrc,18145
|
27
|
-
seleniumbase/console_scripts/sb_commander.py,sha256=
|
27
|
+
seleniumbase/console_scripts/sb_commander.py,sha256=1KJpJEWU4QpySdx4xzdZxsVZdQvalXh9Na7P4ZfMNJo,13354
|
28
28
|
seleniumbase/console_scripts/sb_install.py,sha256=y84Zk-rcp554kcF_g97Xwl0Rn38pyH9wO5OKHX879RI,45831
|
29
29
|
seleniumbase/console_scripts/sb_mkchart.py,sha256=ep9g-9CSIwaOJKVxhB3xjRQpfsuApyN8-Dr129cNXwQ,10941
|
30
30
|
seleniumbase/console_scripts/sb_mkdir.py,sha256=SaI2wnjE5eQLxX8RPdjFjM_ghBbMm4r_vBUzU5t5dzY,29819
|
@@ -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=
|
39
|
+
seleniumbase/core/browser_launcher.py,sha256=0sncs1HUsHy6mSLJWl9V_o5d3QC0BVh1pRc3yHMrY5k,226368
|
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
|
@@ -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=
|
68
|
+
seleniumbase/fixtures/base_case.py,sha256=cAPiEkviPoV0cn7FEa9RsNqkK6gNw2DHN0W4-vaQJg8,720631
|
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
|
@@ -88,7 +88,7 @@ seleniumbase/plugins/basic_test_info.py,sha256=8ov6n417gPbqqvrlT4zrch7l2XcRt-GF2
|
|
88
88
|
seleniumbase/plugins/db_reporting_plugin.py,sha256=En09qUCoojrk9-vbcnsoHdSELoGmag2GDIyu3jTiJas,7331
|
89
89
|
seleniumbase/plugins/driver_manager.py,sha256=s20s0pJYaNrG0WNwyIC04oUMRVFjtm6V_nS1-EvFm7g,34492
|
90
90
|
seleniumbase/plugins/page_source.py,sha256=loTnXxOj4kxEukuTZEiGyvKBhY3KDVDMnNlHHheTBDE,1889
|
91
|
-
seleniumbase/plugins/pytest_plugin.py,sha256=
|
91
|
+
seleniumbase/plugins/pytest_plugin.py,sha256=uSfHTgeI30RpyGxXPzszvKpBJ5epGi1WDJobEtXEjBk,107389
|
92
92
|
seleniumbase/plugins/s3_logging_plugin.py,sha256=WDfertQgGOW_SRJpFMaekYD6vBVW9VO62POtXXy2HCM,2319
|
93
93
|
seleniumbase/plugins/sb_manager.py,sha256=Z19CfRSaqcxdn_YvzXVt4B9Nu3Bhs97QIO5tHlvbuyk,54871
|
94
94
|
seleniumbase/plugins/screen_shots.py,sha256=1hrXw-hzuZ1BR6Yh7AyWX2ABnvnP73-RCbwdz958gj4,1127
|
@@ -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.
|
139
|
-
seleniumbase-4.33.
|
140
|
-
seleniumbase-4.33.
|
141
|
-
seleniumbase-4.33.
|
142
|
-
seleniumbase-4.33.
|
143
|
-
seleniumbase-4.33.
|
138
|
+
seleniumbase-4.33.16a0.dist-info/LICENSE,sha256=BRblZsX7HyPUjQmYTiyWr_e9tzWvmR3R4SFclM2R3W0,1085
|
139
|
+
seleniumbase-4.33.16a0.dist-info/METADATA,sha256=m9-RrMR7dxHe-4VatvhE70QwDHlcsgWZBLx0tGWluBk,86525
|
140
|
+
seleniumbase-4.33.16a0.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
141
|
+
seleniumbase-4.33.16a0.dist-info/entry_points.txt,sha256=CNrh2EKNaHYEhO6pP1RJyVLB99LkDDYX7TnUK8xfjqk,623
|
142
|
+
seleniumbase-4.33.16a0.dist-info/top_level.txt,sha256=4N97aBOQ8ETCnDnokBsWb07lJfTaq3C1ZzYRxvLMxqU,19
|
143
|
+
seleniumbase-4.33.16a0.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|