Sha256: ded94d754dcb76780151954a532870d06e46853f31d364e31490b4b1ed71560e
Contents?: true
Size: 1.73 KB
Versions: 2
Compression:
Stored size: 1.73 KB
Contents
# frozen_string_literal: true module Rspeckled module Selenium module Drivers class Firefox attr_reader :downloads_directory def initialize(options) self.downloads_directory = options.fetch(:downloads_directory) end def driver(app) ::Capybara::Selenium::Driver.new(app, browser: :firefox, profile: profile, options: options) end def headless(app) ::Capybara::Selenium::Driver.new(app, browser: :firefox, profile: profile, options: headless_options) end private def downloads_directory=(dir) ::Dir.mkdir(dir) unless ::Dir.exist?(dir) @downloads_directory = dir end def profile ::Selenium::WebDriver::Firefox::Profile.new.tap do |profile| profile['browser.download.dir'] = downloads_directory profile['browser.download.folderList'] = 2 profile['browser.helperApps.neverAsk.saveToDisk'] = %w{ images/jpeg application/pdf application/octet-stream } .join(', ') profile['pdfjs.disabled'] = true end end def options ::Selenium::WebDriver::Firefox::Options.new end def headless_options options.dup.tap do |browser_options| browser_options.add_argument('--headless') end end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
rspeckled-2.1.1 | lib/rspeckled/plugins/extensions/selenium/drivers/firefox.rb |
rspeckled-2.1.0 | lib/rspeckled/plugins/extensions/selenium/drivers/firefox.rb |