class IEDriverServer::Helper::GoogleCodeParser

Attributes

driver_name[R]
source[R]
url[R]

Public Class Methods

new(driver_name, url: , open_uri_provider: OpenURI) click to toggle source
# File lib/ie_driver_server/helper/google_code_parser.rb, line 10
def initialize(driver_name, url: , open_uri_provider: OpenURI)
  @driver_name = driver_name
  @url = url
  @source = open_uri_provider.open_uri(url)
end

Public Instance Methods

downloads() click to toggle source
# File lib/ie_driver_server/helper/google_code_parser.rb, line 16
def downloads
  doc = Nokogiri::XML.parse(source)
  items = doc.css("Contents Key").collect {|k| k.text }
  items.reject! {|k| !(/#{driver_name}_/===k) }
  items.map {|k| "#{url}/#{k}"}
end
newest_download() click to toggle source
# File lib/ie_driver_server/helper/google_code_parser.rb, line 23
def newest_download
  (downloads.sort { |a, b| version_of(a) <=> version_of(b)}).last
end

Private Instance Methods

grab_version_string_from(url) click to toggle source
# File lib/ie_driver_server/helper/google_code_parser.rb, line 33
def grab_version_string_from url
  url.match(/_(\d+\.?\d+\.?\d+)\.zip$/).captures.first
end
version_of(url) click to toggle source
# File lib/ie_driver_server/helper/google_code_parser.rb, line 29
def version_of url
  Gem::Version.new grab_version_string_from(url)
end