From 9c90f4dcdb7e4019de16d9b40b79c20bf9be7f7e Mon Sep 17 00:00:00 2001 From: Thomas Walpole Date: Fri, 19 Apr 2019 12:22:17 -0700 Subject: [PATCH] Move selenium driver version logging into helper method --- spec/selenium_spec_chrome.rb | 7 +------ spec/selenium_spec_edge.rb | 6 +----- spec/selenium_spec_firefox.rb | 6 +----- spec/selenium_spec_ie.rb | 6 +----- spec/selenium_spec_safari.rb | 6 +----- spec/spec_helper.rb | 7 +++++++ 6 files changed, 12 insertions(+), 26 deletions(-) diff --git a/spec/selenium_spec_chrome.rb b/spec/selenium_spec_chrome.rb index 100c0aab..bddcb743 100644 --- a/spec/selenium_spec_chrome.rb +++ b/spec/selenium_spec_chrome.rb @@ -4,7 +4,6 @@ require 'spec_helper' require 'selenium-webdriver' require 'shared_selenium_session' require 'rspec/shared_spec_matchers' -require 'webdrivers' CHROME_DRIVER = :selenium_chrome @@ -34,11 +33,7 @@ end skipped_tests = %i[response_headers status_code trigger] -if ENV['CI'] - service = Selenium::WebDriver::Chrome - service = service::Service if Selenium::WebDriver::Service.respond_to? :driver_path - $stdout.puts `#{service.driver_path} --version` -end +Capybara::SpecHelper.log_selenium_driver_version(Selenium::WebDriver::Chrome) if ENV['CI'] Capybara::SpecHelper.run_specs TestSessions::Chrome, CHROME_DRIVER.to_s, capybara_skip: skipped_tests do |example| case example.metadata[:full_description] diff --git a/spec/selenium_spec_edge.rb b/spec/selenium_spec_edge.rb index d77dba44..ab2fedc7 100644 --- a/spec/selenium_spec_edge.rb +++ b/spec/selenium_spec_edge.rb @@ -16,11 +16,7 @@ end skipped_tests = %i[response_headers status_code trigger modals] -if ENV['CI'] - service = Selenium::WebDriver::Edge - service = service::Service if Selenium::WebDriver::Service.respond_to? :driver_path - $stdout.puts `#{service.driver_path} --version` -end +Capybara::SpecHelper.log_selenium_driver_version(Selenium::WebDriver::Edge) if ENV['CI'] Capybara::SpecHelper.run_specs TestSessions::SeleniumEdge, 'selenium', capybara_skip: skipped_tests do |example| case example.metadata[:description] diff --git a/spec/selenium_spec_firefox.rb b/spec/selenium_spec_firefox.rb index e987d6be..021b9b05 100644 --- a/spec/selenium_spec_firefox.rb +++ b/spec/selenium_spec_firefox.rb @@ -43,11 +43,7 @@ end skipped_tests = %i[response_headers status_code trigger] -if ENV['CI'] - service = Selenium::WebDriver::Firefox - service = service::Service if Selenium::WebDriver::Service.respond_to? :driver_path - $stdout.puts `#{service.driver_path} --version` -end +Capybara::SpecHelper.log_selenium_driver_version(Selenium::WebDriver::Firefox) if ENV['CI'] Capybara::SpecHelper.run_specs TestSessions::SeleniumFirefox, 'selenium', capybara_skip: skipped_tests do |example| case example.metadata[:full_description] diff --git a/spec/selenium_spec_ie.rb b/spec/selenium_spec_ie.rb index 14059bdf..d44f0d4b 100644 --- a/spec/selenium_spec_ie.rb +++ b/spec/selenium_spec_ie.rb @@ -64,11 +64,7 @@ TestSessions::SeleniumIE.current_window.resize_to(800, 500) skipped_tests = %i[response_headers status_code trigger modals hover form_attribute windows] -if ENV['CI'] - service = Selenium::WebDriver::IE - service = service::Service if Selenium::WebDriver::Service.respond_to? :driver_path - $stdout.puts `#{service.driver_path} --version` -end +Capybara::SpecHelper.log_selenium_driver_version(Selenium::WebDriver::IE) if ENV['CI'] TestSessions::SeleniumIE.current_window.resize_to(1600, 1200) diff --git a/spec/selenium_spec_safari.rb b/spec/selenium_spec_safari.rb index 00bab35c..4e53f79d 100644 --- a/spec/selenium_spec_safari.rb +++ b/spec/selenium_spec_safari.rb @@ -37,11 +37,7 @@ end skipped_tests = %i[response_headers status_code trigger windows drag] -if ENV['CI'] - service = Selenium::WebDriver::Safari - service = service::Service if Selenium::WebDriver::Service.respond_to? :driver_path - $stdout.puts `#{service.driver_path} --version` -end +Capybara::SpecHelper.log_selenium_driver_version(Selenium::WebDriver::Safari) if ENV['CI'] Capybara::SpecHelper.run_specs TestSessions::Safari, SAFARI_DRIVER.to_s, capybara_skip: skipped_tests do |example| case example.metadata[:full_description] diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 97acd448..0ef0403a 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -52,6 +52,13 @@ module Capybara def remote?(session) session.driver.browser.is_a? ::Selenium::WebDriver::Remote::Driver end + + def self.log_selenium_driver_version(mod) + mod = mod::Service if ::Selenium::WebDriver::Service.respond_to? :driver_path + path = mod.driver_path + path = path.call if path.respond_to? :call + $stdout.puts `#{path} --version` + end end end