Skip to content

Commit e3ffd1b

Browse files
committed
move server code to spec_helper
1 parent cea7bf1 commit e3ffd1b

File tree

2 files changed

+20
-12
lines changed

2 files changed

+20
-12
lines changed

examples/ruby/spec/drivers/remote_webdriver_spec.rb

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,8 @@
66
RSpec.describe 'Remote WebDriver' do
77
let(:target_directory) { File.join(Dir.tmpdir, SecureRandom.uuid) }
88
let(:wait) { Selenium::WebDriver::Wait.new(timeout: 2) }
9-
let(:server) do
10-
jar = Selenium::WebDriver::SeleniumManager.binary_paths('--grid')['driver_path']
11-
Selenium::Server.new(jar,
12-
background: true,
13-
args: %w[--selenium-manager true --enable-managed-downloads true])
14-
end
15-
let(:grid_url) { server.webdriver_url }
169

17-
before { server.start }
18-
after { server.stop }
10+
before { start_server }
1911

2012
it 'starts remotely' do
2113
options = default_chrome_options
@@ -26,7 +18,7 @@
2618

2719
it 'uploads' do
2820
options = default_chrome_options
29-
driver = Selenium::WebDriver.for :remote, url: server.webdriver_url, options: options
21+
driver = Selenium::WebDriver.for :remote, url: grid_url, options: options
3022

3123
driver.get('https://the-internet.herokuapp.com/upload')
3224
upload_file = File.expand_path('../spec_support/selenium-snapshot.png', __dir__)
@@ -42,7 +34,7 @@
4234

4335
it 'downloads' do
4436
options = default_chrome_options
45-
default_chrome_options.enable_downloads = true
37+
options.enable_downloads = true
4638
driver = Selenium::WebDriver.for :remote, url: grid_url, options: options
4739

4840
file_names = %w[file_1.txt file_2.jpg]

examples/ruby/spec/spec_helper.rb

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,10 @@
2828
send(*results) if results
2929
end
3030

31-
config.after { @driver&.quit }
31+
config.after do
32+
@driver&.quit
33+
@server&.stop
34+
end
3235

3336
def start_session
3437
@service = Selenium::WebDriver::Service.chrome
@@ -55,4 +58,17 @@ def start_firefox
5558
options.browser_version = 'stable'
5659
@driver = Selenium::WebDriver.for :firefox, options: options
5760
end
61+
62+
def start_server
63+
jar = Selenium::WebDriver::SeleniumManager.binary_paths('--grid')['driver_path']
64+
@server = Selenium::Server.new(jar,
65+
background: true,
66+
log_level: 'FINE',
67+
args: %w[--selenium-manager true --enable-managed-downloads true])
68+
@server.start
69+
end
70+
71+
def grid_url
72+
@server.webdriver_url
73+
end
5874
end

0 commit comments

Comments
 (0)