From d57e3387b3d58b9865f7fde50b2354f747de07e7 Mon Sep 17 00:00:00 2001 From: Thomas Walpole Date: Mon, 10 Jun 2019 12:36:01 -0700 Subject: [PATCH] Use selenium-webdriver `exectue_cdp` method if it exists --- .../selenium/driver_specializations/chrome_driver.rb | 10 +++++++--- spec/spec_helper.rb | 2 +- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/lib/capybara/selenium/driver_specializations/chrome_driver.rb b/lib/capybara/selenium/driver_specializations/chrome_driver.rb index ba02e09c..151dbcb4 100644 --- a/lib/capybara/selenium/driver_specializations/chrome_driver.rb +++ b/lib/capybara/selenium/driver_specializations/chrome_driver.rb @@ -90,9 +90,13 @@ private end def execute_cdp(cmd, params = {}) - args = { cmd: cmd, params: params } - result = bridge.http.call(:post, "session/#{bridge.session_id}/goog/cdp/execute", args) - result['value'] + if browser.respond_to? :execute_cdp + browser.execute_cdp(cmd, params) + else + args = { cmd: cmd, params: params } + result = bridge.http.call(:post, "session/#{bridge.session_id}/goog/cdp/execute", args) + result['value'] + end end def build_node(native_node, initial_cache = {}) diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index fbacff5c..c8cb11fd 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true require 'rspec/expectations' -require 'webdrivers' if ENV['CI'] +require 'webdrivers' if ENV['CI'] || ENV['WEBDRIVERS'] require 'selenium_statistics' if ENV['TRAVIS'] require 'coveralls'