lib/selenium/webdriver/firefox/w3c_bridge.rb in selenium-webdriver-3.2.2 vs lib/selenium/webdriver/firefox/w3c_bridge.rb in selenium-webdriver-3.3.0
- old
+ new
@@ -24,15 +24,22 @@
class W3CBridge < Remote::W3CBridge
def initialize(opts = {})
opts[:desired_capabilities] = create_capabilities(opts)
unless opts.key?(:url)
+ driver_path = opts.delete(:driver_path) || Firefox.driver_path
port = opts.delete(:port) || Service::DEFAULT_PORT
- service_args = opts.delete(:service_args) || {}
- driver_path = opts.delete(:driver_path) || Firefox.driver_path
- @service = Service.new(driver_path, port, *extract_service_args(service_args))
+ opts[:driver_opts] ||= {}
+ if opts.key? :service_args
+ WebDriver.logger.warn <<-DEPRECATE.gsub(/\n +| {2,}/, ' ').freeze
+ [DEPRECATION] `:service_args` is deprecated. Pass switches using `driver_opts`
+ DEPRECATE
+ opts[:driver_opts][:args] = opts.delete(:service_args)
+ end
+
+ @service = Service.new(driver_path, port, opts.delete(:driver_opts))
@service.start
opts[:url] = @service.uri
end
super(opts)
@@ -42,11 +49,11 @@
:firefox
end
def driver_extensions
[DriverExtensions::TakesScreenshot,
- DriverExtensions::HasWebStorage]
+ DriverExtensions::HasWebStorage]
end
def quit
super
ensure
@@ -69,20 +76,9 @@
end
Binary.path = caps[:firefox_options][:binary] if caps[:firefox_options].key?(:binary)
caps
end
-
- def extract_service_args(args = {})
- service_args = []
- service_args << "--binary=#{args[:binary]}" if args.key?(:binary)
- service_args << "–-log=#{args[:log]}" if args.key?(:log)
- service_args << "–-marionette-port=#{args[:marionette_port]}" if args.key?(:marionette_port)
- service_args << "–-host=#{args[:host]}" if args.key?(:host)
- service_args << "–-port=#{args[:port]}" if args.key?(:port)
- service_args
- end
-
end # W3CBridge
end # Firefox
end # WebDriver
end # Selenium