-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Closed
Labels
bugUh oh... Something needs to be fixedUh oh... Something needs to be fixed
Description
Incorrect error-handling for "DevToolsActivePort file doesn't exist" when using Edge
The following error occurs: "UnboundLocalError: local variable 'args' referenced before assignment" if "DevToolsActivePort file doesn't exist" occurs during Edge tests.
Seen here: https://github.com/mdmintz/seleniumbase-examples/actions/runs/6013971396/job/16312640632
Here's the code block with the issue:
elif "DevToolsActivePort file doesn't exist" in e.msg:
service = EdgeService(
executable_path=LOCAL_EDGEDRIVER,
log_output=os.devnull,
service_args=["--disable-build-check"],
)
# https://stackoverflow.com/a/56638103/7058266
sys_argv = sys.argv
arg_join = " ".join(sys_argv)
free_port = 9222
if ("-n" in sys.argv or " -n=" in args or args == "-c"):
free_port = service_utils.free_port()
edge_options.add_argument(
"--remote-debugging-port=%s" % free_port
)
return Edge(service=service, options=edge_options)Switching with this does the trick (use args everywhere instead of arg_join, and refactor):
elif "DevToolsActivePort file doesn't exist" in e.msg:
service = EdgeService(
executable_path=LOCAL_EDGEDRIVER,
log_output=os.devnull,
service_args=["--disable-build-check"],
)
# https://stackoverflow.com/a/56638103/7058266
args = " ".join(sys.argv)
free_port = 9222
if ("-n" in sys.argv or " -n=" in args or args == "-c"):
free_port = service_utils.free_port()
edge_options.add_argument(
"--remote-debugging-port=%s" % free_port
)
return Edge(service=service, options=edge_options)Metadata
Metadata
Assignees
Labels
bugUh oh... Something needs to be fixedUh oh... Something needs to be fixed