@@ -3993,6 +3993,7 @@ def get_new_driver(
39933993 d_width=None,
39943994 d_height=None,
39953995 d_p_r=None,
3996+ **kwargs,
39963997 ):
39973998 """This method spins up an extra browser for tests that require
39983999 more than one. The first browser is already provided by tests
@@ -4081,13 +4082,20 @@ def get_new_driver(
40814082 " for examples!)"
40824083 % (browserstack_ref, sauce_labs_ref)
40834084 )
4085+ shortcuts = ["dark", "guest", "locale", "mobile", "pls", "uc", "wire"]
4086+ if kwargs:
4087+ for key in kwargs.keys():
4088+ if key not in shortcuts:
4089+ raise TypeError("Unexpected keyword argument '%s'" % key)
40844090 if browser is None:
40854091 browser = self.browser
40864092 browser_name = browser
40874093 if headless is None:
40884094 headless = self.headless
40894095 if locale_code is None:
40904096 locale_code = self.locale_code
4097+ if "locale" in kwargs and not locale_code:
4098+ locale_code = kwargs["locale"]
40914099 if protocol is None:
40924100 protocol = self.protocol
40934101 if servername is None:
@@ -4130,6 +4138,8 @@ def get_new_driver(
41304138 uc_cdp_events = self.uc_cdp_events
41314139 if uc_subprocess is None:
41324140 uc_subprocess = self.uc_subprocess
4141+ if "uc" in kwargs and not undetectable:
4142+ undetectable = kwargs["uc"]
41334143 if log_cdp_events is None:
41344144 log_cdp_events = self.log_cdp_events
41354145 if no_sandbox is None:
@@ -4144,8 +4154,12 @@ def get_new_driver(
41444154 incognito = self.incognito
41454155 if guest_mode is None:
41464156 guest_mode = self.guest_mode
4157+ if "guest" in kwargs and not guest_mode:
4158+ guest_mode = kwargs["guest"]
41474159 if dark_mode is None:
41484160 dark_mode = self.dark_mode
4161+ if "dark" in kwargs and not dark_mode:
4162+ dark_mode = kwargs["dark"]
41494163 if devtools is None:
41504164 devtools = self.devtools
41514165 if remote_debug is None:
@@ -4182,8 +4196,12 @@ def get_new_driver(
41824196 driver_version = self.driver_version
41834197 if page_load_strategy is None:
41844198 page_load_strategy = self.page_load_strategy
4199+ if "pls" in kwargs and not page_load_strategy:
4200+ page_load_strategy = kwargs["pls"]
41854201 if use_wire is None:
41864202 use_wire = self.use_wire
4203+ if "wire" in kwargs and not use_wire:
4204+ use_wire = kwargs["wire"]
41874205 if external_pdf is None:
41884206 external_pdf = self.external_pdf
41894207 test_id = self.__get_test_id()
@@ -4193,6 +4211,8 @@ def get_new_driver(
41934211 cap_string = self.cap_string
41944212 if is_mobile is None:
41954213 is_mobile = self.mobile_emulator
4214+ if "mobile" in kwargs and not is_mobile:
4215+ is_mobile = kwargs["mobile"]
41964216 if d_width is None:
41974217 d_width = self.__device_width
41984218 if d_height is None:
0 commit comments