Module: WebDriverManager::Support

Included in:
ChromeDriver, GeckoDriver, IEDriver, MSDriver
Defined in:
lib/webdriver_manager/support.rb

Instance Method Summary collapse

Instance Method Details

#latest_binaryObject



31
32
33
# File 'lib/webdriver_manager/support.rb', line 31

def latest_binary
  driver_binary_list.keys.max
end

#provisionObject



3
4
5
6
7
8
9
10
11
# File 'lib/webdriver_manager/support.rb', line 3

def provision
  unless driver_url_is_reachable?
    return current_binary.nil? ? nil : driver_binary
  end

  return driver_binary if current_binary == latest_binary

  remove_binary && provision_driver
end

#provision_driver(version = nil) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/webdriver_manager/support.rb', line 13

def provision_driver(version = nil)
  url, filename = driver_filename(version)
  Dir.mkdir(driver_repo) unless File.exist?(driver_repo)

  Dir.chdir(driver_repo) do
    download_driver(filename, url)
    decompress_driver(filename)
  end

  set_driver_permissions
  driver_binary
end

#remove_binaryObject



26
27
28
29
# File 'lib/webdriver_manager/support.rb', line 26

def remove_binary
  WebDriverManager.logger.debug("Deleting #{driver_binary}")
  FileUtils.rm_f(driver_binary)
end