chromedriver-helper 1.1.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
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.