Sha256: 32401865b6376a3457c2b47b9cb42e701a41b5a1e4e1802fa1246873f28b74c3
Contents?: true
Size: 1.44 KB
Versions: 99
Compression:
Stored size: 1.44 KB
Contents
module Selenium module WebDriver module Firefox # @api private class ProfilesIni def initialize @ini_path = File.join(Util.app_data_path, "profiles.ini") @profile_paths = {} parse if File.exist?(@ini_path) end def [](name) path = @profile_paths[name] path && Profile.new(path) end def refresh @profile_paths.clear parse end private def parse string = File.read @ini_path name = nil is_relative = nil path = nil string.split("\n").each do |line| case line when /^\[Profile/ if p = path_for(name, is_relative, path) @profile_paths[name] = p name, path = nil end when /^Name=(.+)$/ name = $1.strip when /^IsRelative=(.+)$/ is_relative = $1.strip == "1" when /^Path=(.+)$/ path = $1.strip end end if p = path_for(name, is_relative, path) @profile_paths[name] = p end end def path_for(name, is_relative, path) return unless [name, path].any? path = is_relative ? File.join(Util.app_data_path, path) : path end end # ProfilesIni end # Firefox end # WebDriver end # Selenium
Version data entries
99 entries across 99 versions & 5 rubygems