Skip to content

Commit e17ce80

Browse files
authored
Merge pull request #3177 from seleniumbase/fix-xvfb-settings-and-refactor
Fix Xvfb settings and refactor
2 parents fc3c75d + 5e40d59 commit e17ce80

File tree

9 files changed

+52
-15
lines changed

9 files changed

+52
-15
lines changed

requirements.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ typing-extensions>=4.12.2
1414
sbvirtualdisplay>=1.3.0
1515
six>=1.16.0
1616
parse>=1.20.2
17-
parse-type>=0.6.3
17+
parse-type>=0.6.4
1818
colorama>=0.4.6
1919
pyyaml>=6.0.2
2020
pygments>=2.18.0
@@ -55,7 +55,7 @@ pyotp==2.9.0
5555
python-xlib==0.33;platform_system=="Linux"
5656
markdown-it-py==3.0.0
5757
mdurl==0.1.2
58-
rich==13.9.1
58+
rich==13.9.2
5959

6060
# --- Testing Requirements --- #
6161
# ("pip install -r requirements.txt" also installs this, but "pip install -e ." won't.)

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.31.3"
2+
__version__ = "4.31.4"

seleniumbase/behave/behave_sb.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -545,12 +545,12 @@ def get_configured_sb(context):
545545
if low_key in ["disable-js", "disable_js"]:
546546
sb.disable_js = True
547547
continue
548-
# Handle: -D disable-csp / disable_csp
549-
if low_key in ["disable-csp", "disable_csp"]:
548+
# Handle: -D disable-csp / disable_csp / dcsp
549+
if low_key in ["disable-csp", "disable_csp", "dcsp"]:
550550
sb.disable_csp = True
551551
continue
552-
# Handle: -D disable-ws / disable_ws
553-
if low_key in ["disable-ws", "disable_ws"]:
552+
# Handle: -D disable-ws / disable_ws / dws
553+
if low_key in ["disable-ws", "disable_ws", "dws"]:
554554
sb.disable_ws = True
555555
continue
556556
# Handle: -D enable-ws / enable_ws

seleniumbase/fixtures/base_case.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14500,15 +14500,13 @@ def setUp(self, masterqa_mode=False):
1450014500
self.__skip_reason = None
1450114501
self.testcase_manager.insert_testcase_data(data_payload)
1450214502
self.case_start_time = int(time.time() * 1000.0)
14503-
self.__activate_virtual_display_as_needed()
1450414503
elif hasattr(self, "is_behave") and self.is_behave:
1450514504
self.__initialize_variables()
14506-
self.__activate_virtual_display_as_needed()
1450714505
elif hasattr(self, "is_nosetest") and self.is_nosetest:
1450814506
pass # Setup performed in plugins for pynose
1450914507
else:
14510-
# Pure Python run. Eg. SB() Manager
14511-
self.__activate_virtual_display_as_needed()
14508+
# Pure Python run. (Eg. SB() and Driver() Managers)
14509+
pass # Variables initialized in respective plugins
1451214510

1451314511
# Verify SeleniumBase is installed successfully, and used correctly
1451414512
if not hasattr(self, "browser"):
@@ -14696,6 +14694,10 @@ def setUp(self, masterqa_mode=False):
1469614694
)
1469714695
raise Exception(message)
1469814696

14697+
if not hasattr(self, "is_nosetest") or not self.is_nosetest:
14698+
# Xvfb Virtual Display activation for Linux
14699+
self.__activate_virtual_display_as_needed()
14700+
1469914701
# Dashboard pre-processing:
1470014702
if self.dashboard:
1470114703
if self._multithreaded:

seleniumbase/plugins/driver_manager.py

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -620,8 +620,24 @@ def Driver(
620620
elif browser not in ["chrome", "edge"]:
621621
headless2 = False # Only for Chromium browsers
622622
if disable_csp is None:
623-
disable_csp = False
623+
if (
624+
"--disable-csp" in sys_argv
625+
or "--no-csp" in sys_argv
626+
or "--dcsp" in sys_argv
627+
):
628+
disable_csp = True
629+
else:
630+
disable_csp = False
624631
if (
632+
(enable_ws is None and disable_ws is None)
633+
and (
634+
"--disable-web-security" in sys_argv
635+
or "--disable-ws" in sys_argv
636+
or "--dws" in sys_argv
637+
)
638+
):
639+
enable_ws = False
640+
elif (
625641
(enable_ws is None and disable_ws is None)
626642
or (disable_ws is not None and not disable_ws)
627643
or (enable_ws is not None and enable_ws)

seleniumbase/plugins/pytest_plugin.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1021,6 +1021,7 @@ def pytest_addoption(parser):
10211021
parser.addoption(
10221022
"--disable_ws",
10231023
"--disable-ws",
1024+
"--dws",
10241025
"--disable-web-security",
10251026
action="store_true",
10261027
dest="disable_ws",

seleniumbase/plugins/sb_manager.py

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -711,8 +711,25 @@ def SB(
711711
else:
712712
variables = {}
713713
if disable_csp is None:
714-
disable_csp = False
714+
if (
715+
"--disable-csp" in sys_argv
716+
or "--no-csp" in sys_argv
717+
or "--dcsp" in sys_argv
718+
):
719+
disable_csp = True
720+
else:
721+
disable_csp = False
715722
if (
723+
(enable_ws is None and disable_ws is None)
724+
and (
725+
"--disable-web-security" in sys_argv
726+
or "--disable-ws" in sys_argv
727+
or "--dws" in sys_argv
728+
)
729+
):
730+
enable_ws = False
731+
disable_ws = True
732+
elif (
716733
(enable_ws is None and disable_ws is None)
717734
or (disable_ws is not None and not disable_ws)
718735
or (enable_ws is not None and enable_ws)

seleniumbase/plugins/selenium_plugin.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -739,6 +739,7 @@ def options(self, parser, env):
739739
parser.addoption(
740740
"--disable_ws",
741741
"--disable-ws",
742+
"--dws",
742743
"--disable-web-security",
743744
action="store_true",
744745
dest="disable_ws",

setup.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@
163163
"sbvirtualdisplay>=1.3.0",
164164
"six>=1.16.0",
165165
'parse>=1.20.2',
166-
'parse-type>=0.6.3',
166+
'parse-type>=0.6.4',
167167
'colorama>=0.4.6',
168168
'pyyaml>=6.0.2',
169169
'pygments>=2.18.0',
@@ -204,7 +204,7 @@
204204
'python-xlib==0.33;platform_system=="Linux"',
205205
'markdown-it-py==3.0.0',
206206
'mdurl==0.1.2',
207-
'rich==13.9.1',
207+
'rich==13.9.2',
208208
],
209209
extras_require={
210210
# pip install -e .[allure]

0 commit comments

Comments
 (0)