Skip to content

Commit f3e2256

Browse files
committed
[rb] update after hook in specs to reduce unnecessary browser restarts
1 parent 1328661 commit f3e2256

File tree

6 files changed

+8
-5
lines changed

6 files changed

+8
-5
lines changed

rb/spec/integration/selenium/webdriver/bidi/browsing_context_spec.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ module Selenium
2323
module WebDriver
2424
class BiDi
2525
describe BrowsingContext, exclusive: {bidi: true}, only: {browser: %i[chrome edge firefox]} do
26-
after { reset_driver! }
26+
after { |example| reset_driver!(example: example) }
2727

2828
it 'can create a browsing context for given id' do
2929
id = driver.window_handle

rb/spec/integration/selenium/webdriver/bidi/script_spec.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
module Selenium
2323
module WebDriver
2424
describe Script, exclusive: {bidi: true}, only: {browser: %i[chrome edge firefox]} do
25-
after { reset_driver! }
25+
after { |example| reset_driver!(example: example) }
2626

2727
it 'errors when bidi not enabled' do
2828
reset_driver!(web_socket_url: false) do |driver|

rb/spec/integration/selenium/webdriver/bidi_spec.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
module Selenium
2323
module WebDriver
2424
describe BiDi, exclusive: {bidi: true}, only: {browser: %i[chrome edge firefox]} do
25-
after { reset_driver! }
25+
after { |example| reset_driver!(example: example) }
2626

2727
it 'errors when bidi not enabled' do
2828
reset_driver!(web_socket_url: false) do |driver|

rb/spec/integration/selenium/webdriver/devtools_spec.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
module Selenium
2323
module WebDriver
2424
describe DevTools, exclusive: {browser: %i[chrome edge firefox]} do
25-
after { reset_driver! }
25+
after { |example| reset_driver!(example: example) }
2626

2727
it 'sends commands' do
2828
driver.devtools.page.navigate(url: url_for('xhtmlTest.html'))

rb/spec/integration/selenium/webdriver/spec_helper.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@
6464

6565
c.after do |example|
6666
result = example.execution_result
67-
reset_driver! if result.exception || result.pending_exception
67+
reset_driver! if example.exception || result.pending_exception
6868
end
6969
end
7070

rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,9 @@ def driver_instance(...)
6262
end
6363

6464
def reset_driver!(time: 0, **opts, &block)
65+
# do not reset if the test was marked skipped
66+
return if opts.delete(:example)&.metadata&.fetch(:skip, nil)
67+
6568
quit_driver
6669
sleep time
6770
driver_instance(**opts, &block)

0 commit comments

Comments
 (0)