Skip to content

Commit 098063f

Browse files
committed
python safaridriver requires apple's implementation now. one must use remote with 2.X version of standalone for the legacy version
1 parent 11e5fa8 commit 098063f

File tree

2 files changed

+8
-21
lines changed

2 files changed

+8
-21
lines changed

py/selenium/webdriver/safari/service.py

Lines changed: 5 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -25,21 +25,17 @@ class Service(service.Service):
2525
Object that manages the starting and stopping of the SafariDriver
2626
"""
2727

28-
def __init__(self, executable_path=None, port=0, quiet=False, use_legacy=False):
28+
def __init__(self, port=0, quiet=False):
2929
"""
3030
Creates a new instance of the Service
3131
3232
:Args:
3333
- executable_path : Path to the SafariDriver
3434
- port : Port the service is running on """
3535

36-
if not use_legacy and os.path.exists('/usr/bin/safaridriver'):
37-
path = '/usr/bin/safaridriver'
38-
self.legacy_driver = False
39-
else:
40-
path = 'java'
41-
self.standalone_jar = executable_path
42-
self.legacy_driver = True
36+
path = '/usr/bin/safaridriver'
37+
if not os.path.exists(path):
38+
raise Exception("SafariDriver requires Safari 10 on OSX El Capitan or greater")
4339

4440
if port == 0:
4541
port = utils.free_port()
@@ -51,16 +47,11 @@ def __init__(self, executable_path=None, port=0, quiet=False, use_legacy=False):
5147
service.Service.__init__(self, path, port, log)
5248

5349
def command_line_args(self):
54-
if self.legacy_driver:
55-
return ["-jar", self.standalone_jar, "-port", "%s" % self.port]
5650
return ["-p", "%s" % self.port]
5751

5852
@property
5953
def service_url(self):
6054
"""
6155
Gets the url of the SafariDriver Service
6256
"""
63-
if not self.legacy_driver:
64-
return "http://localhost:%d" % self.port
65-
else:
66-
return "http://localhost:%d/wd/hub" % self.port
57+
return "http://localhost:%d" % self.port

py/selenium/webdriver/safari/webdriver.py

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -32,22 +32,18 @@ class WebDriver(RemoteWebDriver):
3232
3333
"""
3434

35-
def __init__(self, executable_path=None, port=0,
36-
desired_capabilities=DesiredCapabilities.SAFARI, quiet=False, use_legacy_driver=False):
35+
def __init__(self, port=0, desired_capabilities=DesiredCapabilities.SAFARI, quiet=False):
3736
"""
3837
Creates a new instance of the Safari driver.
3938
4039
Starts the service and then creates new instance of Safari Driver.
4140
4241
:Args:
43-
- executable_path - path to the executable. If the default is used it assumes the executable is in the
44-
Environment Variable SELENIUM_SERVER_JAR
4542
- port - port you would like the service to run, if left as 0, a free port will be found.
4643
- desired_capabilities: Dictionary object with desired capabilities (Can be used to provide various Safari switches).
44+
- quiet - set to True to suppress stdout and stderr of the driver
4745
"""
48-
if not executable_path is None:
49-
executable_path = os.environ.get("SELENIUM_SERVER_JAR")
50-
self.service = Service(executable_path, port=port, quiet=quiet, use_legacy=use_legacy_driver)
46+
self.service = Service(port=port, quiet=quiet)
5147
self.service.start()
5248

5349
RemoteWebDriver.__init__(

0 commit comments

Comments
 (0)