webdrivers 4.4.1 → 5.0.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 +4 -4
- data/CHANGELOG.md +41 -1
- data/LICENSE.txt +23 -23
- data/README.md +29 -6
- data/lib/webdrivers/chrome_finder.rb +4 -2
- data/lib/webdrivers/chromedriver.rb +28 -30
- data/lib/webdrivers/common.rb +7 -11
- data/lib/webdrivers/edge_finder.rb +17 -6
- data/lib/webdrivers/edgedriver.rb +29 -31
- data/lib/webdrivers/geckodriver.rb +1 -22
- data/lib/webdrivers/iedriver.rb +14 -20
- data/lib/webdrivers/logger.rb +2 -93
- data/lib/webdrivers/network.rb +2 -0
- data/lib/webdrivers/system.rb +11 -1
- data/lib/webdrivers/version.rb +1 -1
- data/spec/webdrivers/chrome_finder_spec.rb +1 -1
- data/spec/webdrivers/edge_finder_spec.rb +9 -15
- data/spec/webdrivers/edgedriver_spec.rb +4 -10
- data/spec/webdrivers/geckodriver_spec.rb +5 -7
- data/spec/webdrivers/i_edriver_spec.rb +12 -9
- data/spec/webdrivers/system_spec.rb +27 -21
- data/spec/webdrivers/webdrivers_spec.rb +15 -21
- metadata +40 -35
- data/.github/ISSUE_TEMPLATE.md +0 -16
- data/.gitignore +0 -8
- data/.rubocop.yml +0 -96
- data/.travis.yml +0 -41
- data/Gemfile +0 -6
- data/Rakefile +0 -11
- data/appveyor.yml +0 -45
- data/bin/console +0 -15
- data/bin/setup +0 -8
- data/gemfiles/Gemfile.edge +0 -7
- data/support/install_jruby.ps1 +0 -7
- data/support/install_msedge.ps1 +0 -11
- data/webdrivers.gemspec +0 -41
data/lib/webdrivers/network.rb
CHANGED
data/lib/webdrivers/system.rb
CHANGED
|
@@ -148,8 +148,18 @@ module Webdrivers
|
|
|
148
148
|
end
|
|
149
149
|
end
|
|
150
150
|
|
|
151
|
+
def apple_m1_architecture?
|
|
152
|
+
if platform == 'mac' && RUBY_PLATFORM.include?('arm64-darwin')
|
|
153
|
+
Webdrivers.logger.debug 'Apple architecture: M1 (arm64-darwin)'
|
|
154
|
+
return true
|
|
155
|
+
end
|
|
156
|
+
|
|
157
|
+
Webdrivers.logger.debug 'Apple architecture: Intel (mac64)'
|
|
158
|
+
false
|
|
159
|
+
end
|
|
160
|
+
|
|
151
161
|
# @return [TrueClass, FalseClass]
|
|
152
|
-
def
|
|
162
|
+
def wsl_v1?
|
|
153
163
|
platform == 'linux' && File.open('/proc/version').read.include?('Microsoft')
|
|
154
164
|
end
|
|
155
165
|
|
data/lib/webdrivers/version.rb
CHANGED
|
@@ -52,7 +52,7 @@ describe Webdrivers::ChromeFinder do
|
|
|
52
52
|
before do
|
|
53
53
|
skip "The current platform cannot be WSL, as it's not Linux" unless Selenium::WebDriver::Platform.linux?
|
|
54
54
|
|
|
55
|
-
allow(Webdrivers::System).to receive(:
|
|
55
|
+
allow(Webdrivers::System).to receive(:wsl_v1?).and_return(true)
|
|
56
56
|
allow(Webdrivers::System).to receive(:to_wsl_path).and_return('')
|
|
57
57
|
allow(Webdrivers::System).to receive(:to_win32_path).and_return('')
|
|
58
58
|
end
|
|
@@ -5,13 +5,7 @@ require 'spec_helper'
|
|
|
5
5
|
describe Webdrivers::EdgeFinder do
|
|
6
6
|
let(:edge_finder) { described_class }
|
|
7
7
|
|
|
8
|
-
before
|
|
9
|
-
# Skip these tests if version of selenium-webdriver being tested with doesn't
|
|
10
|
-
# have Chromium based Edge support
|
|
11
|
-
unless defined?(Selenium::WebDriver::EdgeChrome)
|
|
12
|
-
skip "The current selenium-webdriver doesn't include Chromium based Edge support"
|
|
13
|
-
end
|
|
14
|
-
end
|
|
8
|
+
before { skip 'Edge is not yet supported on Linux' if Webdrivers::System.platform == 'linux' }
|
|
15
9
|
|
|
16
10
|
context 'when the user relies on the gem to figure out the location of Edge' do
|
|
17
11
|
it 'determines the location correctly based on the current OS' do
|
|
@@ -20,8 +14,8 @@ describe Webdrivers::EdgeFinder do
|
|
|
20
14
|
end
|
|
21
15
|
|
|
22
16
|
context 'when the user provides a path to the Edge binary' do
|
|
23
|
-
it 'uses Selenium::WebDriver::
|
|
24
|
-
Selenium::WebDriver::
|
|
17
|
+
it 'uses Selenium::WebDriver::Edge.path when it is defined' do
|
|
18
|
+
Selenium::WebDriver::Edge.path = edge_finder.location
|
|
25
19
|
locations = %i[win_location mac_location linux_location]
|
|
26
20
|
allow(edge_finder).to receive_messages(locations)
|
|
27
21
|
|
|
@@ -29,8 +23,8 @@ describe Webdrivers::EdgeFinder do
|
|
|
29
23
|
locations.each { |loc| expect(edge_finder).not_to have_received(loc) }
|
|
30
24
|
end
|
|
31
25
|
|
|
32
|
-
it "uses ENV['
|
|
33
|
-
allow(ENV).to receive(:[]).with('
|
|
26
|
+
it "uses ENV['WD_EDGE_PATH'] when it is defined" do
|
|
27
|
+
allow(ENV).to receive(:[]).with('WD_EDGE_PATH').and_return(edge_finder.location)
|
|
34
28
|
locations = %i[win_location mac_location linux_location]
|
|
35
29
|
allow(edge_finder).to receive_messages(locations)
|
|
36
30
|
|
|
@@ -38,11 +32,11 @@ describe Webdrivers::EdgeFinder do
|
|
|
38
32
|
locations.each { |loc| expect(edge_finder).not_to have_received(loc) }
|
|
39
33
|
end
|
|
40
34
|
|
|
41
|
-
it 'uses Selenium::WebDriver::
|
|
42
|
-
Selenium::WebDriver::
|
|
43
|
-
allow(ENV).to receive(:[]).with('
|
|
35
|
+
it 'uses Selenium::WebDriver::Edge.path over WD_EDGE_PATH' do
|
|
36
|
+
Selenium::WebDriver::Edge.path = edge_finder.location
|
|
37
|
+
allow(ENV).to receive(:[]).with('WD_EDGE_PATH').and_return('my_wd_chrome_path')
|
|
44
38
|
expect(edge_finder.version).not_to be_nil
|
|
45
|
-
expect(ENV).not_to have_received(:[]).with('
|
|
39
|
+
expect(ENV).not_to have_received(:[]).with('WD_EDGE_PATH')
|
|
46
40
|
end
|
|
47
41
|
end
|
|
48
42
|
|
|
@@ -5,16 +5,11 @@ require 'spec_helper'
|
|
|
5
5
|
describe Webdrivers::Edgedriver do
|
|
6
6
|
let(:edgedriver) { described_class }
|
|
7
7
|
|
|
8
|
-
before
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
unless defined?(Selenium::WebDriver::EdgeChrome)
|
|
12
|
-
skip "The current selenium-webdriver doesn't include Chromium based Edge support"
|
|
13
|
-
end
|
|
8
|
+
before do
|
|
9
|
+
skip 'Edge is not yet supported on Linux' if Webdrivers::System.platform == 'linux'
|
|
10
|
+
edgedriver.remove
|
|
14
11
|
end
|
|
15
12
|
|
|
16
|
-
before { edgedriver.remove }
|
|
17
|
-
|
|
18
13
|
describe '#update' do
|
|
19
14
|
context 'when evaluating #correct_binary?' do
|
|
20
15
|
it 'does not download when latest version and current version match' do
|
|
@@ -180,8 +175,7 @@ describe Webdrivers::Edgedriver do
|
|
|
180
175
|
end
|
|
181
176
|
|
|
182
177
|
it 'raises VersionError for unknown version' do
|
|
183
|
-
|
|
184
|
-
allow(edgedriver).to receive(:browser_version).and_return('77.0.9999.0000')
|
|
178
|
+
allow(edgedriver).to receive(:browser_version).and_return Gem::Version.new('77.0.9999')
|
|
185
179
|
msg = 'Unable to find latest point release version for 77.0.9999. '\
|
|
186
180
|
'Please set `Webdrivers::Edgedriver.required_version = <desired driver version>` '\
|
|
187
181
|
'to a known edgedriver version: Can not reach https://msedgedriver.azureedge.net/'
|
|
@@ -192,14 +192,12 @@ You can obtain a copy of the license at https://mozilla.org/MPL/2.0/"
|
|
|
192
192
|
end
|
|
193
193
|
|
|
194
194
|
it 'uses provided value' do
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
Webdrivers.install_dir = install_dir
|
|
195
|
+
install_dir = File.expand_path(File.join(ENV['HOME'], '.webdrivers2'))
|
|
196
|
+
Webdrivers.install_dir = install_dir
|
|
198
197
|
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
end
|
|
198
|
+
expect(Webdrivers::System.install_dir).to eq install_dir
|
|
199
|
+
ensure
|
|
200
|
+
Webdrivers.install_dir = nil
|
|
203
201
|
end
|
|
204
202
|
end
|
|
205
203
|
|
|
@@ -6,6 +6,10 @@ describe Webdrivers::IEdriver do
|
|
|
6
6
|
let(:iedriver) { described_class }
|
|
7
7
|
|
|
8
8
|
before do
|
|
9
|
+
if ENV['CI'] && !Selenium::WebDriver::Platform.windows?
|
|
10
|
+
skip('Only run IE tests on Windows on CI because rate limiting')
|
|
11
|
+
end
|
|
12
|
+
|
|
9
13
|
iedriver.remove
|
|
10
14
|
iedriver.required_version = nil
|
|
11
15
|
end
|
|
@@ -69,7 +73,7 @@ describe Webdrivers::IEdriver do
|
|
|
69
73
|
it 'raises ConnectionError if offline' do
|
|
70
74
|
allow(Net::HTTP).to receive(:get_response).and_raise(SocketError)
|
|
71
75
|
|
|
72
|
-
msg = %r{Can not reach https://
|
|
76
|
+
msg = %r{Can not reach https://api.github.com/repos/seleniumhq/selenium/releases}
|
|
73
77
|
expect { iedriver.update }.to raise_error(Webdrivers::ConnectionError, msg)
|
|
74
78
|
end
|
|
75
79
|
end
|
|
@@ -109,7 +113,8 @@ describe Webdrivers::IEdriver do
|
|
|
109
113
|
end
|
|
110
114
|
|
|
111
115
|
it 'creates cached file' do
|
|
112
|
-
|
|
116
|
+
json = '[{"assets": [{"name":"IEDriverServer_Win32_3.150.0.zip"}]}]'
|
|
117
|
+
allow(Webdrivers::Network).to receive(:get).and_return(json)
|
|
113
118
|
|
|
114
119
|
iedriver.latest_version
|
|
115
120
|
expect(File.exist?("#{Webdrivers::System.install_dir}/IEDriverServer.version")).to eq true
|
|
@@ -174,14 +179,12 @@ describe Webdrivers::IEdriver do
|
|
|
174
179
|
end
|
|
175
180
|
|
|
176
181
|
it 'uses provided value' do
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
Webdrivers.install_dir = install_dir
|
|
182
|
+
install_dir = File.expand_path(File.join(ENV['HOME'], '.webdrivers2'))
|
|
183
|
+
Webdrivers.install_dir = install_dir
|
|
180
184
|
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
end
|
|
185
|
+
expect(Webdrivers::System.install_dir).to eq install_dir
|
|
186
|
+
ensure
|
|
187
|
+
Webdrivers.install_dir = nil
|
|
185
188
|
end
|
|
186
189
|
end
|
|
187
190
|
|
|
@@ -2,36 +2,42 @@
|
|
|
2
2
|
|
|
3
3
|
require 'spec_helper'
|
|
4
4
|
|
|
5
|
-
wsl_proc_contents = [
|
|
6
|
-
'Linux version 4.4.0-18362-Microsoft',
|
|
7
|
-
'(Microsoft@Microsoft.com)',
|
|
8
|
-
'(gcc version 5.4.0 (GCC) )',
|
|
9
|
-
'#836-Microsoft',
|
|
10
|
-
'Mon May 05 16:04:00 PST 2020'
|
|
11
|
-
].join ' '
|
|
12
|
-
|
|
13
5
|
describe Webdrivers::System do
|
|
14
|
-
describe '#
|
|
15
|
-
|
|
16
|
-
|
|
6
|
+
describe '#wsl_v1?' do
|
|
7
|
+
subject { described_class.wsl_v1? }
|
|
8
|
+
|
|
9
|
+
before do
|
|
10
|
+
allow(described_class).to receive(:platform).and_return(platform)
|
|
11
|
+
allow(File).to receive(:open).with('/proc/version').and_return(StringIO.new(wsl_proc_version_contents))
|
|
12
|
+
end
|
|
17
13
|
|
|
18
|
-
|
|
19
|
-
|
|
14
|
+
let(:platform) { 'linux' }
|
|
15
|
+
let(:wsl_proc_version_contents) { '' }
|
|
20
16
|
|
|
21
|
-
|
|
17
|
+
context 'when the current platform is linux and WSL version is 1' do
|
|
18
|
+
let(:wsl_proc_version_contents) do
|
|
19
|
+
'Linux version 4.4.0-18362-Microsoft'\
|
|
20
|
+
'(Microsoft@Microsoft.com) (gcc version 5.4.0 (GCC) )'\
|
|
21
|
+
'#836-Microsoft Mon May 05 16:04:00 PST 2020'
|
|
22
22
|
end
|
|
23
|
+
|
|
24
|
+
it { is_expected.to eq true }
|
|
23
25
|
end
|
|
24
26
|
|
|
25
|
-
context 'when the current platform is
|
|
26
|
-
|
|
27
|
+
context 'when the current platform is linux and WSL version is 2' do
|
|
28
|
+
let(:wsl_proc_version_contents) do
|
|
29
|
+
'Linux version 4.19.84-microsoft-standard '\
|
|
30
|
+
'(oe-user@oe-host) (gcc version 8.2.0 (GCC)) '\
|
|
31
|
+
'#1 SMP Wed Nov 13 11:44:37 UTC 2019'
|
|
32
|
+
end
|
|
27
33
|
|
|
28
|
-
it
|
|
29
|
-
|
|
34
|
+
it { is_expected.to eq false }
|
|
35
|
+
end
|
|
30
36
|
|
|
31
|
-
|
|
37
|
+
context 'when the current platform is mac' do
|
|
38
|
+
let(:platform) { 'mac' }
|
|
32
39
|
|
|
33
|
-
|
|
34
|
-
end
|
|
40
|
+
it { is_expected.to eq false }
|
|
35
41
|
end
|
|
36
42
|
end
|
|
37
43
|
|
|
@@ -49,37 +49,31 @@ describe Webdrivers do
|
|
|
49
49
|
end
|
|
50
50
|
|
|
51
51
|
it 'uses provided value' do
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
described_class.install_dir = install_dir
|
|
52
|
+
install_dir = File.expand_path(File.join(ENV['HOME'], '.webdrivers2'))
|
|
53
|
+
described_class.install_dir = install_dir
|
|
55
54
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
end
|
|
55
|
+
expect(described_class.install_dir).to eq install_dir
|
|
56
|
+
ensure
|
|
57
|
+
described_class.install_dir = nil
|
|
60
58
|
end
|
|
61
59
|
|
|
62
60
|
context 'when ENV variable WD_INSTALL_DIR is set and Webdrivers.install_dir is not' do
|
|
63
61
|
it 'uses path from the ENV variable' do
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
described_class.install_dir = nil
|
|
70
|
-
end
|
|
62
|
+
described_class.install_dir = nil
|
|
63
|
+
allow(ENV).to receive(:[]).with('WD_INSTALL_DIR').and_return('custom_dir')
|
|
64
|
+
expect(described_class.install_dir).to be('custom_dir')
|
|
65
|
+
ensure
|
|
66
|
+
described_class.install_dir = nil
|
|
71
67
|
end
|
|
72
68
|
end
|
|
73
69
|
|
|
74
70
|
context 'when both ENV variable WD_INSTALL_DIR and Webdrivers.install_dir are set' do
|
|
75
71
|
it 'uses path from Webdrivers.install_dir' do
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
described_class.install_dir = nil
|
|
82
|
-
end
|
|
72
|
+
described_class.install_dir = 'my_install_dir_path'
|
|
73
|
+
allow(ENV).to receive(:[]).with('WD_INSTALL_DIR').and_return('my_env_path')
|
|
74
|
+
expect(described_class.install_dir).to be('my_install_dir_path')
|
|
75
|
+
ensure
|
|
76
|
+
described_class.install_dir = nil
|
|
83
77
|
end
|
|
84
78
|
end
|
|
85
79
|
end
|
metadata
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: webdrivers
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 5.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Titus Fortner
|
|
8
8
|
- Lakshya Kapoor
|
|
9
9
|
- Thomas Walpole
|
|
10
|
-
autorequire:
|
|
10
|
+
autorequire:
|
|
11
11
|
bindir: bin
|
|
12
12
|
cert_chain: []
|
|
13
|
-
date:
|
|
13
|
+
date: 2021-10-20 00:00:00.000000000 Z
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|
|
16
16
|
name: ffi
|
|
@@ -60,14 +60,28 @@ dependencies:
|
|
|
60
60
|
requirements:
|
|
61
61
|
- - "~>"
|
|
62
62
|
- !ruby/object:Gem::Version
|
|
63
|
-
version: '0.
|
|
63
|
+
version: '0.89'
|
|
64
64
|
type: :development
|
|
65
65
|
prerelease: false
|
|
66
66
|
version_requirements: !ruby/object:Gem::Requirement
|
|
67
67
|
requirements:
|
|
68
68
|
- - "~>"
|
|
69
69
|
- !ruby/object:Gem::Version
|
|
70
|
-
version: '0.
|
|
70
|
+
version: '0.89'
|
|
71
|
+
- !ruby/object:Gem::Dependency
|
|
72
|
+
name: rubocop-packaging
|
|
73
|
+
requirement: !ruby/object:Gem::Requirement
|
|
74
|
+
requirements:
|
|
75
|
+
- - "~>"
|
|
76
|
+
- !ruby/object:Gem::Version
|
|
77
|
+
version: 0.5.0
|
|
78
|
+
type: :development
|
|
79
|
+
prerelease: false
|
|
80
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
81
|
+
requirements:
|
|
82
|
+
- - "~>"
|
|
83
|
+
- !ruby/object:Gem::Version
|
|
84
|
+
version: 0.5.0
|
|
71
85
|
- !ruby/object:Gem::Dependency
|
|
72
86
|
name: rubocop-performance
|
|
73
87
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -88,14 +102,14 @@ dependencies:
|
|
|
88
102
|
requirements:
|
|
89
103
|
- - "~>"
|
|
90
104
|
- !ruby/object:Gem::Version
|
|
91
|
-
version: '1.
|
|
105
|
+
version: '1.42'
|
|
92
106
|
type: :development
|
|
93
107
|
prerelease: false
|
|
94
108
|
version_requirements: !ruby/object:Gem::Requirement
|
|
95
109
|
requirements:
|
|
96
110
|
- - "~>"
|
|
97
111
|
- !ruby/object:Gem::Version
|
|
98
|
-
version: '1.
|
|
112
|
+
version: '1.42'
|
|
99
113
|
- !ruby/object:Gem::Dependency
|
|
100
114
|
name: simplecov
|
|
101
115
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -142,20 +156,14 @@ dependencies:
|
|
|
142
156
|
name: selenium-webdriver
|
|
143
157
|
requirement: !ruby/object:Gem::Requirement
|
|
144
158
|
requirements:
|
|
145
|
-
- - "
|
|
146
|
-
- !ruby/object:Gem::Version
|
|
147
|
-
version: '3.0'
|
|
148
|
-
- - "<"
|
|
159
|
+
- - "~>"
|
|
149
160
|
- !ruby/object:Gem::Version
|
|
150
161
|
version: '4.0'
|
|
151
162
|
type: :runtime
|
|
152
163
|
prerelease: false
|
|
153
164
|
version_requirements: !ruby/object:Gem::Requirement
|
|
154
165
|
requirements:
|
|
155
|
-
- - "
|
|
156
|
-
- !ruby/object:Gem::Version
|
|
157
|
-
version: '3.0'
|
|
158
|
-
- - "<"
|
|
166
|
+
- - "~>"
|
|
159
167
|
- !ruby/object:Gem::Version
|
|
160
168
|
version: '4.0'
|
|
161
169
|
description: Run Selenium tests more easily with install and updates for all supported
|
|
@@ -167,19 +175,9 @@ executables: []
|
|
|
167
175
|
extensions: []
|
|
168
176
|
extra_rdoc_files: []
|
|
169
177
|
files:
|
|
170
|
-
- ".github/ISSUE_TEMPLATE.md"
|
|
171
|
-
- ".gitignore"
|
|
172
|
-
- ".rubocop.yml"
|
|
173
|
-
- ".travis.yml"
|
|
174
178
|
- CHANGELOG.md
|
|
175
|
-
- Gemfile
|
|
176
179
|
- LICENSE.txt
|
|
177
180
|
- README.md
|
|
178
|
-
- Rakefile
|
|
179
|
-
- appveyor.yml
|
|
180
|
-
- bin/console
|
|
181
|
-
- bin/setup
|
|
182
|
-
- gemfiles/Gemfile.edge
|
|
183
181
|
- lib/webdrivers.rb
|
|
184
182
|
- lib/webdrivers/Rakefile
|
|
185
183
|
- lib/webdrivers/chrome_finder.rb
|
|
@@ -208,18 +206,15 @@ files:
|
|
|
208
206
|
- spec/webdrivers/system_spec.rb
|
|
209
207
|
- spec/webdrivers/webdrivers_spec.rb
|
|
210
208
|
- spec/webdrivers_proxy_support_spec.rb
|
|
211
|
-
- support/install_jruby.ps1
|
|
212
|
-
- support/install_msedge.ps1
|
|
213
|
-
- webdrivers.gemspec
|
|
214
209
|
homepage: https://github.com/titusfortner/webdrivers
|
|
215
210
|
licenses:
|
|
216
211
|
- MIT
|
|
217
212
|
metadata:
|
|
218
213
|
bug_tracker_uri: https://github.com/titusfortner/webdrivers/issues
|
|
219
214
|
changelog_uri: https://github.com/titusfortner/webdrivers/blob/master/CHANGELOG.md
|
|
220
|
-
documentation_uri: https://www.rubydoc.info/gems/webdrivers/
|
|
221
|
-
source_code_uri: https://github.com/titusfortner/webdrivers/tree/
|
|
222
|
-
post_install_message:
|
|
215
|
+
documentation_uri: https://www.rubydoc.info/gems/webdrivers/5.0.0
|
|
216
|
+
source_code_uri: https://github.com/titusfortner/webdrivers/tree/v5.0.0
|
|
217
|
+
post_install_message:
|
|
223
218
|
rdoc_options: []
|
|
224
219
|
require_paths:
|
|
225
220
|
- lib
|
|
@@ -227,15 +222,25 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
227
222
|
requirements:
|
|
228
223
|
- - ">="
|
|
229
224
|
- !ruby/object:Gem::Version
|
|
230
|
-
version: 2.
|
|
225
|
+
version: 2.6.0
|
|
231
226
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
232
227
|
requirements:
|
|
233
228
|
- - ">="
|
|
234
229
|
- !ruby/object:Gem::Version
|
|
235
230
|
version: '0'
|
|
236
231
|
requirements: []
|
|
237
|
-
rubygems_version: 3.
|
|
238
|
-
signing_key:
|
|
232
|
+
rubygems_version: 3.2.22
|
|
233
|
+
signing_key:
|
|
239
234
|
specification_version: 4
|
|
240
235
|
summary: Easy download and use of browser drivers.
|
|
241
|
-
test_files:
|
|
236
|
+
test_files:
|
|
237
|
+
- spec/spec_helper.rb
|
|
238
|
+
- spec/webdrivers/chrome_finder_spec.rb
|
|
239
|
+
- spec/webdrivers/chromedriver_spec.rb
|
|
240
|
+
- spec/webdrivers/edge_finder_spec.rb
|
|
241
|
+
- spec/webdrivers/edgedriver_spec.rb
|
|
242
|
+
- spec/webdrivers/geckodriver_spec.rb
|
|
243
|
+
- spec/webdrivers/i_edriver_spec.rb
|
|
244
|
+
- spec/webdrivers/system_spec.rb
|
|
245
|
+
- spec/webdrivers/webdrivers_spec.rb
|
|
246
|
+
- spec/webdrivers_proxy_support_spec.rb
|
data/.github/ISSUE_TEMPLATE.md
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
#### Summary
|
|
2
|
-
Short summary of the bug or feature request.
|
|
3
|
-
|
|
4
|
-
#### Debug Info
|
|
5
|
-
Please provide the following information for bug reports:
|
|
6
|
-
|
|
7
|
-
* Webdrivers version:
|
|
8
|
-
* Ruby version:
|
|
9
|
-
* Operating system / CI Environment:
|
|
10
|
-
* Browser and version:
|
|
11
|
-
|
|
12
|
-
#### Expected Behavior
|
|
13
|
-
What you expect to happen.
|
|
14
|
-
|
|
15
|
-
#### Actual Behavior
|
|
16
|
-
What is actually happening: Error message, stack trace, DEBUG log if applicable (set `Webdrivers.logger.level = :DEBUG` after you require webdrivers)
|
data/.gitignore
DELETED
data/.rubocop.yml
DELETED
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
AllCops:
|
|
2
|
-
TargetRubyVersion: 2.4.10
|
|
3
|
-
|
|
4
|
-
require:
|
|
5
|
-
- rubocop-rspec
|
|
6
|
-
- rubocop-performance
|
|
7
|
-
|
|
8
|
-
Layout/SpaceInsideHashLiteralBraces:
|
|
9
|
-
EnforcedStyle: no_space
|
|
10
|
-
|
|
11
|
-
Layout/EndOfLine:
|
|
12
|
-
EnforcedStyle: lf
|
|
13
|
-
|
|
14
|
-
Layout/LineLength:
|
|
15
|
-
Max: 120
|
|
16
|
-
IgnoredPatterns:
|
|
17
|
-
- '\s+# rubocop:disable'
|
|
18
|
-
|
|
19
|
-
Layout/EmptyLinesAroundAttributeAccessor:
|
|
20
|
-
Enabled: true
|
|
21
|
-
|
|
22
|
-
Layout/SpaceAroundOperators:
|
|
23
|
-
Enabled: true
|
|
24
|
-
|
|
25
|
-
Layout/SpaceAroundMethodCallOperator:
|
|
26
|
-
Enabled: true
|
|
27
|
-
|
|
28
|
-
Lint/DeprecatedOpenSSLConstant:
|
|
29
|
-
Enabled: true
|
|
30
|
-
|
|
31
|
-
Lint/RaiseException:
|
|
32
|
-
Enabled: true
|
|
33
|
-
|
|
34
|
-
Lint/StructNewOverride:
|
|
35
|
-
Enabled: true
|
|
36
|
-
|
|
37
|
-
Lint/MixedRegexpCaptureTypes:
|
|
38
|
-
Enabled: true
|
|
39
|
-
|
|
40
|
-
Lint/ScriptPermission:
|
|
41
|
-
Enabled: false
|
|
42
|
-
|
|
43
|
-
Metrics/MethodLength:
|
|
44
|
-
Max: 20
|
|
45
|
-
|
|
46
|
-
Metrics/BlockLength:
|
|
47
|
-
Exclude:
|
|
48
|
-
- 'spec/**/*'
|
|
49
|
-
- 'lib/webdrivers/tasks/*.rake'
|
|
50
|
-
- 'webdrivers.gemspec'
|
|
51
|
-
|
|
52
|
-
Metrics/ClassLength:
|
|
53
|
-
Max: 116
|
|
54
|
-
Exclude:
|
|
55
|
-
- 'lib/webdrivers/system.rb'
|
|
56
|
-
|
|
57
|
-
Metrics/CyclomaticComplexity:
|
|
58
|
-
Max: 8
|
|
59
|
-
|
|
60
|
-
Metrics/AbcSize:
|
|
61
|
-
Max: 16
|
|
62
|
-
Exclude:
|
|
63
|
-
- 'lib/webdrivers/chromedriver.rb'
|
|
64
|
-
|
|
65
|
-
Style/Documentation:
|
|
66
|
-
Enabled: false
|
|
67
|
-
|
|
68
|
-
Style/FrozenStringLiteralComment:
|
|
69
|
-
Enabled: false
|
|
70
|
-
|
|
71
|
-
Style/ExponentialNotation:
|
|
72
|
-
Enabled: false
|
|
73
|
-
|
|
74
|
-
Style/HashEachMethods:
|
|
75
|
-
Enabled: true
|
|
76
|
-
|
|
77
|
-
Style/HashTransformKeys:
|
|
78
|
-
Enabled: false
|
|
79
|
-
|
|
80
|
-
Style/HashTransformValues:
|
|
81
|
-
Enabled: false
|
|
82
|
-
|
|
83
|
-
Style/SlicingWithRange:
|
|
84
|
-
Enabled: false
|
|
85
|
-
|
|
86
|
-
Style/RedundantRegexpCharacterClass:
|
|
87
|
-
Enabled: true
|
|
88
|
-
|
|
89
|
-
Style/RedundantRegexpEscape:
|
|
90
|
-
Enabled: false
|
|
91
|
-
|
|
92
|
-
RSpec/ExampleLength:
|
|
93
|
-
Enabled: false
|
|
94
|
-
|
|
95
|
-
RSpec/MultipleExpectations:
|
|
96
|
-
Enabled: false
|
data/.travis.yml
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
language: ruby
|
|
2
|
-
cache: bundler
|
|
3
|
-
addons:
|
|
4
|
-
apt:
|
|
5
|
-
packages:
|
|
6
|
-
- chromium-browser
|
|
7
|
-
- libgconf-2-4
|
|
8
|
-
chrome: stable
|
|
9
|
-
script: bundle exec rake $RAKE_TASK
|
|
10
|
-
before_install:
|
|
11
|
-
- gem update --system -N
|
|
12
|
-
- gem install bundler -N
|
|
13
|
-
matrix:
|
|
14
|
-
include:
|
|
15
|
-
- rvm: 2.4
|
|
16
|
-
env: RAKE_TASK=spec
|
|
17
|
-
- rvm: 2.5
|
|
18
|
-
env: RAKE_TASK=spec
|
|
19
|
-
- rvm: 2.6
|
|
20
|
-
env: RAKE_TASK=spec
|
|
21
|
-
- rvm: 2.7
|
|
22
|
-
os: osx
|
|
23
|
-
env: RAKE_TASK=spec
|
|
24
|
-
- rvm: 2.7
|
|
25
|
-
env: RAKE_TASK=rubocop
|
|
26
|
-
- rvm: jruby-9.2.11.1
|
|
27
|
-
jdk: openjdk8
|
|
28
|
-
env: RAKE_TASK=spec
|
|
29
|
-
- rvm: 2.7
|
|
30
|
-
env: RAKE_TASK=spec
|
|
31
|
-
gemfile: gemfiles/Gemfile.edge
|
|
32
|
-
os: osx
|
|
33
|
-
osx_image: xcode11.3
|
|
34
|
-
addons:
|
|
35
|
-
chrome: stable
|
|
36
|
-
homebrew:
|
|
37
|
-
taps: homebrew/cask-versions
|
|
38
|
-
casks:
|
|
39
|
-
- microsoft-edge
|
|
40
|
-
allow_failures:
|
|
41
|
-
- gemfile: gemfiles/Gemfile.edge
|
data/Gemfile
DELETED