class Webdrivers::Geckodriver
Public Class Methods
base_url()
click to toggle source
Returns url with domain for calls to get this driver.
@return [String]
# File lib/webdrivers/geckodriver.rb, line 35 def base_url 'https://github.com/mozilla/geckodriver/releases' end
current_version()
click to toggle source
Returns current geckodriver version.
@return [Gem::Version]
# File lib/webdrivers/geckodriver.rb, line 13 def current_version Webdrivers.logger.debug 'Checking current version' return nil unless exists? version = binary_version return nil if version.nil? normalize_version version.match(/geckodriver (\d+\.\d+\.\d+)/)[1] end
latest_version()
click to toggle source
Returns latest available geckodriver version.
@return [Gem::Version]
# File lib/webdrivers/geckodriver.rb, line 27 def latest_version @latest_version ||= with_cache(file_name) { normalize_version(Network.get_url("#{base_url}/latest")[/[^v]*$/]) } end
Private Class Methods
direct_url(version)
click to toggle source
# File lib/webdrivers/geckodriver.rb, line 53 def direct_url(version) "#{base_url}/download/v#{version}/geckodriver-v#{version}-#{platform_ext}" end
download_url()
click to toggle source
# File lib/webdrivers/geckodriver.rb, line 45 def download_url @download_url ||= if required_version == EMPTY_VERSION direct_url(latest_version) else direct_url(required_version) end end
file_name()
click to toggle source
# File lib/webdrivers/geckodriver.rb, line 41 def file_name System.platform == 'win' ? 'geckodriver.exe' : 'geckodriver' end
platform_ext()
click to toggle source
# File lib/webdrivers/geckodriver.rb, line 57 def platform_ext case System.platform when 'linux' "linux#{System.bitsize}.tar.gz" when 'mac' 'macos.tar.gz' when 'win' "win#{System.bitsize}.zip" end end