chromedriver-helper 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0cf62727ee028fa0e91b8867a7eae498cbc9577b
4
- data.tar.gz: a3529789da5ffac99204f2db6dac4ea9cc893288
3
+ metadata.gz: 5e0b6307e13449f5b515f02cdb6699ff8fa54abd
4
+ data.tar.gz: 84d2cc85ae13474a5ba44c2a671778bdba5886f4
5
5
  SHA512:
6
- metadata.gz: 6e89499aca520cbcb21fa7acdd387929d983eb93d624713fc1bb2b4ae9f32c11e0d8e54edc1646e0be8f33fce31fe18509902e3ad7a82092140ba76cbe86aec6
7
- data.tar.gz: 2ab325ecd08e895c93522be086367ab396b5ba06232e72178288ad22ef2703c518e44888766418ec6c636f78f00ff20da7482b1672b38b751f71ab3cde050c16
6
+ metadata.gz: c8893b243733b783d6d93a0bf0fb6054bd15a39e31b3c6a806dcf5e7736ae7d740ec38802484acb5aabf114e9e4b87e8ae1e15521f7ecc31b961f060b1deb8b9
7
+ data.tar.gz: 05d5298edb11df1a7c0a545c503da8ff4609d3c22847b895f6b3955507427b535790aa58382bd1ffebd772d686a0a97e51d8b68f952dd730f675efb7b7ce132d
@@ -1,6 +1,22 @@
1
1
  chromedriver-helper changelog
2
2
  ==========
3
3
 
4
+ 1.2.0 - 2018-02-03
5
+ ----------
6
+
7
+ Dependencies:
8
+
9
+ * Bump dependencies on `nokogiri` and `archive-zip. (Thanks, @odlp and @ksylvest!)
10
+
11
+
12
+ Bug fixes:
13
+
14
+ * Use `https` for the URL used to download. [#41] (Thanks, @saraid!)
15
+ * Better platform detection, no longer run Windows on unrecognized platforms. [#49] (Thanks, @duncan-bayne!)
16
+ * `chromedriver-update` without a version specified will update to the latest version available on the internets. [#47]
17
+
18
+
19
+
4
20
  1.1.0 - 2017-03-19
5
21
  ----------
6
22
 
@@ -27,8 +27,8 @@ Gem::Specification.new do |s|
27
27
 
28
28
  s.add_development_dependency "rspec", "~> 3.0"
29
29
  s.add_development_dependency "rake", "~> 10.0"
30
- s.add_development_dependency "concourse", "~> 0.12"
30
+ s.add_development_dependency "concourse", "~> 0.16"
31
31
 
32
- s.add_runtime_dependency "nokogiri", "~> 1.6"
33
- s.add_runtime_dependency "archive-zip", "~> 0.7.0"
32
+ s.add_runtime_dependency "nokogiri", "~> 1.8"
33
+ s.add_runtime_dependency "archive-zip", "~> 0.10"
34
34
  end
@@ -6,13 +6,6 @@ resources:
6
6
  branch: master
7
7
  disable_ci_skip: true # always get the latest pipeline configuration
8
8
 
9
- - name: nokogiri-ci
10
- type: git
11
- source:
12
- uri: https://github.com/sparklemotion/nokogiri/
13
- branch: master
14
- disable_ci_skip: true # always get the latest pipeline configuration
15
-
16
9
  - name: chromedriver-helper
17
10
  type: git
18
11
  source:
@@ -20,9 +13,8 @@ resources:
20
13
  branch: master
21
14
  ignore_paths:
22
15
  - concourse/**
23
-
24
16
  jobs:
25
- <% ruby_version = RUBIES[:mri].last %>
17
+ % RUBIES[:mri].last(2).each do |ruby_version|
26
18
  - name: ruby-<%= ruby_version %>
27
19
  public: true
28
20
  plan:
@@ -40,39 +32,24 @@ jobs:
40
32
  - name: chromedriver-helper
41
33
  run:
42
34
  path: ci/concourse/tasks/rake-test/run.sh
35
+ % end
43
36
 
44
- - name: windows-install-ruby-2.3
45
- public: true
46
- serial_groups: [windows-configuration]
47
- plan:
48
- - get: nokogiri-ci
49
- - get: chromedriver-helper
50
- trigger: true
51
- - task: setup
52
- config:
53
- platform: windows
54
- inputs:
55
- - name: nokogiri-ci
56
- path: ci
57
- run:
58
- path: powershell
59
- args: ["-File", "ci/concourse/tasks/windows-config/install-ruby-and-devkit.ps1"]
60
-
61
- - name: ruby-2.3-devkit
37
+ % RUBIES[:windows].last(2).each do |ruby_version|
38
+ - name: win-ruby-<%= ruby_version %>-devkit
62
39
  public: true
63
40
  plan:
64
41
  - get: ci
65
- - get: nokogiri-ci
66
42
  - get: chromedriver-helper
67
43
  trigger: true
68
- passed: ["windows-install-ruby-2.3"]
69
44
  - task: rake-test
70
45
  config:
71
46
  platform: windows
72
47
  inputs:
73
48
  - name: ci
74
- - name: nokogiri-ci
75
49
  - name: chromedriver-helper
50
+ params:
51
+ WIN_RUBY_VERSION: "<%= ruby_version %>"
76
52
  run:
77
53
  path: powershell
78
54
  args: ["-File", "ci/concourse/tasks/rake-test/run.ps1"]
55
+ % end
@@ -1,12 +1,9 @@
1
- . "nokogiri-ci\concourse\shared\common.ps1"
2
-
3
- prepend-path $ruby23_bin_path
4
- $env:RUBYOPT = "-rdevkit"
1
+ . "c:\var\vcap\packages\windows-ruby-dev-tools\prelude.ps1"
5
2
 
6
3
  push-location chromedriver-helper
7
4
 
8
- stream-cmd "gem" "install bundler"
9
- stream-cmd "bundle" "install"
10
- stream-cmd "bundle" "exec rake spec"
5
+ system-cmd "gem install bundler"
6
+ system-cmd "bundle install"
7
+ system-cmd "bundle exec rake spec"
11
8
 
12
9
  pop-location
@@ -39,9 +39,7 @@ module Chromedriver
39
39
  end
40
40
 
41
41
  def update(version = nil)
42
- if version
43
- @download_version = version
44
- end
42
+ @download_version = version || google_code_parser.newest_download_version.to_s
45
43
 
46
44
  hit_network = (current_version != download_version) ? true : false
47
45
  download(hit_network)
@@ -99,11 +97,17 @@ module Chromedriver
99
97
 
100
98
  def platform
101
99
  cfg = RbConfig::CONFIG
102
- case cfg['host_os']
100
+ host_cpu = cfg["host_cpu"]
101
+ host_os = cfg["host_os"]
102
+
103
+ case host_os
103
104
  when /linux/ then
104
- cfg['host_cpu'] =~ /x86_64|amd64/ ? "linux64" : "linux32"
105
+ host_cpu =~ /x86_64|amd64/ ? "linux64" : "linux32"
105
106
  when /darwin/ then "mac"
106
- else "win"
107
+ when /mswin/ then "win"
108
+ when /mingw/ then "win"
109
+ else
110
+ raise("Unsupported host OS '#{host_os}'")
107
111
  end
108
112
  end
109
113
  end
@@ -4,7 +4,7 @@ require 'open-uri'
4
4
  module Chromedriver
5
5
  class Helper
6
6
  class GoogleCodeParser
7
- BUCKET_URL = 'http://chromedriver.storage.googleapis.com'
7
+ BUCKET_URL = 'https://chromedriver.storage.googleapis.com'
8
8
 
9
9
  attr_reader :source, :platform
10
10
 
@@ -1,5 +1,5 @@
1
1
  module Chromedriver
2
2
  class Helper
3
- VERSION = "1.1.0"
3
+ VERSION = "1.2.0"
4
4
  end
5
5
  end
@@ -11,11 +11,11 @@ describe Chromedriver::Helper::GoogleCodeParser do
11
11
  describe "#downloads" do
12
12
  it "returns an array of URLs for the platform" do
13
13
  expect(parser.downloads).to eq [
14
- "http://chromedriver.storage.googleapis.com/2.0/chromedriver_mac32.zip",
15
- "http://chromedriver.storage.googleapis.com/2.1/chromedriver_mac32.zip",
16
- "http://chromedriver.storage.googleapis.com/2.2/chromedriver_mac32.zip",
17
- "http://chromedriver.storage.googleapis.com/2.3/chromedriver_mac32.zip",
18
- "http://chromedriver.storage.googleapis.com/2.4/chromedriver_mac32.zip"]
14
+ "https://chromedriver.storage.googleapis.com/2.0/chromedriver_mac32.zip",
15
+ "https://chromedriver.storage.googleapis.com/2.1/chromedriver_mac32.zip",
16
+ "https://chromedriver.storage.googleapis.com/2.2/chromedriver_mac32.zip",
17
+ "https://chromedriver.storage.googleapis.com/2.3/chromedriver_mac32.zip",
18
+ "https://chromedriver.storage.googleapis.com/2.4/chromedriver_mac32.zip"]
19
19
  end
20
20
  end
21
21
 
@@ -27,10 +27,10 @@ describe Chromedriver::Helper::GoogleCodeParser do
27
27
  context "out-of-order versions" do
28
28
  before do
29
29
  allow(parser).to receive(:downloads).and_return([
30
- "http://chromedriver.storage.googleapis.com/2.3/chromedriver_mac32.zip",
31
- "http://chromedriver.storage.googleapis.com/2.4/chromedriver_mac32.zip",
32
- "http://chromedriver.storage.googleapis.com/2.14/chromedriver_mac32.zip",
33
- "http://chromedriver.storage.googleapis.com/2.2/chromedriver_mac32.zip",
30
+ "https://chromedriver.storage.googleapis.com/2.3/chromedriver_mac32.zip",
31
+ "https://chromedriver.storage.googleapis.com/2.4/chromedriver_mac32.zip",
32
+ "https://chromedriver.storage.googleapis.com/2.14/chromedriver_mac32.zip",
33
+ "https://chromedriver.storage.googleapis.com/2.2/chromedriver_mac32.zip",
34
34
  ])
35
35
  end
36
36
 
@@ -42,7 +42,7 @@ describe Chromedriver::Helper::GoogleCodeParser do
42
42
 
43
43
  describe '#version_download_url' do
44
44
  it 'returns the version asked for' do
45
- expect(parser.version_download_url(2.0)).to eq "http://chromedriver.storage.googleapis.com/2.0/chromedriver_mac32.zip"
45
+ expect(parser.version_download_url(2.0)).to eq "https://chromedriver.storage.googleapis.com/2.0/chromedriver_mac32.zip"
46
46
  end
47
47
  end
48
48
  end
@@ -14,4 +14,43 @@ describe Chromedriver::Helper do
14
14
  it { expect(helper.binary_path).to match(/chromedriver\.exe$/) }
15
15
  end
16
16
  end
17
+
18
+ describe '#platform' do
19
+ os_cpu_matrix = [
20
+ { 'host_os' => 'darwin','host_cpu' => 'irrelevant', 'expected_platform' => 'mac' },
21
+ { 'host_os' => 'linux', 'host_cpu' => 'amd64', 'expected_platform' => 'linux64' },
22
+ { 'host_os' => 'linux', 'host_cpu' => 'irrelevant', 'expected_platform' => 'linux32' },
23
+ { 'host_os' => 'linux', 'host_cpu' => 'x86_64', 'expected_platform' => 'linux64' },
24
+ { 'host_os' => 'mingw', 'host_cpu' => 'irrelevant', 'expected_platform' => 'win' },
25
+ { 'host_os' => 'mswin', 'host_cpu' => 'irrelevant', 'expected_platform' => 'win' }
26
+ ]
27
+
28
+ os_cpu_matrix.each do |config|
29
+ expected_platform = config['expected_platform']
30
+ host_cpu = config['host_cpu']
31
+ host_os = config['host_os']
32
+
33
+ context "given host OS #{host_os} and host CPU #{host_cpu}" do
34
+ before do
35
+ RbConfig.send(:remove_const, :CONFIG)
36
+ RbConfig::CONFIG = { 'host_os' => host_os, 'host_cpu' => host_cpu }
37
+ end
38
+
39
+ it "returns #{expected_platform}" do
40
+ expect(helper.platform).to eq(expected_platform)
41
+ end
42
+ end
43
+ end
44
+
45
+ context 'given an unknown host OS' do
46
+ before do
47
+ RbConfig.send(:remove_const, :CONFIG)
48
+ RbConfig::CONFIG = { 'host_os' => 'freebsd', 'host_cpu' => 'irrelevant' }
49
+ end
50
+
51
+ it 'raises an exception' do
52
+ expect { helper.platform }.to raise_error("Unsupported host OS 'freebsd'")
53
+ end
54
+ end
55
+ end
17
56
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chromedriver-helper
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Dalessio
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-03-20 00:00:00.000000000 Z
11
+ date: 2018-02-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -44,42 +44,42 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0.12'
47
+ version: '0.16'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0.12'
54
+ version: '0.16'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: nokogiri
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '1.6'
61
+ version: '1.8'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '1.6'
68
+ version: '1.8'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: archive-zip
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 0.7.0
75
+ version: '0.10'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: 0.7.0
82
+ version: '0.10'
83
83
  description: Easy installation and use of chromedriver, the Chromium project's selenium
84
84
  webdriver adapter.
85
85
  email:
@@ -132,7 +132,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
132
132
  version: '0'
133
133
  requirements: []
134
134
  rubyforge_project:
135
- rubygems_version: 2.6.10
135
+ rubygems_version: 2.6.12
136
136
  signing_key:
137
137
  specification_version: 4
138
138
  summary: Easy installation and use of chromedriver.