Class: Ferrum::Browser::Options::Firefox
- Defined in:
- lib/ferrum/browser/options/firefox.rb
Overview
Firefox-specific default flags and binary locations. Provides the CLI flags required to drive Firefox over CDP (remote debugger address and profile directory) along with its (minimal) set of default flags.
Constant Summary collapse
- DEFAULT_OPTIONS =
{ "headless" => nil }.freeze
- MAC_BIN_PATH =
[ "/Applications/Firefox.app/Contents/MacOS/firefox-bin" ].freeze
- LINUX_BIN_PATH =
%w[firefox].freeze
- WINDOWS_BIN_PATH =
[ "C:/Program Files/Firefox Developer Edition/firefox.exe", "C:/Program Files/Mozilla Firefox/firefox.exe" ].freeze
- PLATFORM_PATH =
{ mac: MAC_BIN_PATH, windows: WINDOWS_BIN_PATH, linux: LINUX_BIN_PATH }.freeze
Instance Method Summary collapse
-
#merge_default(flags, options) ⇒ Hash
Merges Firefox's default flags with the given ones.
-
#merge_required(flags, options, user_data_dir) ⇒ Hash
Merges CLI flags required for Firefox to work with CDP.
Methods inherited from Base
#detect_path, #except, options, #to_h, version
Instance Method Details
#merge_default(flags, options) ⇒ Hash
Merges Firefox's default flags with the given ones.
61 62 63 64 65 66 |
# File 'lib/ferrum/browser/options/firefox.rb', line 61 def merge_default(flags, ) defaults = except("headless") unless .headless defaults ||= DEFAULT_OPTIONS defaults.merge(flags) end |
#merge_required(flags, options, user_data_dir) ⇒ Hash
Merges CLI flags required for Firefox to work with CDP.
45 46 47 |
# File 'lib/ferrum/browser/options/firefox.rb', line 45 def merge_required(flags, , user_data_dir) flags.merge("remote-debugger" => "#{.host}:#{.port}", "profile" => user_data_dir) end |