File: google_code_parser_spec.rb

package info (click to toggle)
ruby-chromedriver-helper 2.1.0-7
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye, buster
  • size: 240 kB
  • sloc: ruby: 217; sh: 21; makefile: 8
file content (40 lines) | stat: -rw-r--r-- 1,562 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
require "spec_helper"

describe Chromedriver::Helper::GoogleCodeParser do
  let!(:open_uri_provider) do
    double("open_uri_provider").tap do |oup|
      allow(oup).to receive(:open_uri) do |uri|
        case uri.to_s
        when "https://chromedriver.storage.googleapis.com/LATEST_RELEASE"
          StringIO.new("2.42")
        when "https://chromedriver.storage.googleapis.com"
          StringIO.new(File.read(File.join(File.dirname(__FILE__), "assets/google-code-bucket.xml")))
        end
      end
    end
  end
  let!(:parser) { Chromedriver::Helper::GoogleCodeParser.new('mac', open_uri_provider) }

  describe "#downloads" do
    it "returns an array of URLs for the platform" do
      expect(parser.downloads).to eq [
        "https://chromedriver.storage.googleapis.com/2.0/chromedriver_mac32.zip",
        "https://chromedriver.storage.googleapis.com/2.1/chromedriver_mac32.zip",
        "https://chromedriver.storage.googleapis.com/2.2/chromedriver_mac32.zip",
        "https://chromedriver.storage.googleapis.com/2.3/chromedriver_mac32.zip",
        "https://chromedriver.storage.googleapis.com/2.4/chromedriver_mac32.zip"]
    end
  end

  describe "#newest_download_version" do
    it "returns the last URL for the platform" do
      expect(parser.newest_download_version).to eq Gem::Version.new("2.42")
    end
  end

  describe '#version_download_url' do
    it 'returns the version asked for' do
      expect(parser.version_download_url(2.0)).to eq "https://chromedriver.storage.googleapis.com/2.0/chromedriver_mac32.zip"
    end
  end
end