Module: Capybara::Selenium::ChromeLogs
Relationships & Source Files | |
Defined in: | lib/capybara/selenium/patches/logs.rb |
Constant Summary
-
COMMANDS =
# File 'lib/capybara/selenium/patches/logs.rb', line 11{ get_available_log_types: [:get, 'session/:session_id/se/log/types'], get_log: [:post, 'session/:session_id/se/log'], get_log_legacy: [:post, 'session/:session_id/log'] }.freeze
-
LOG_MSG =
# File 'lib/capybara/selenium/patches/logs.rb', line 6<<~MSG Chromedriver 75+ defaults to W3C mode. Please upgrade to chromedriver >= \ 75.0.3770.90 if you need to access logs while in W3C compliant mode. MSG
Instance Method Summary
Instance Method Details
#available_log_types
[ GitHub ]#commands(command)
[ GitHub ]# File 'lib/capybara/selenium/patches/logs.rb', line 17
def commands(command) COMMANDS[command] || super end
#log(type)
[ GitHub ]# File 'lib/capybara/selenium/patches/logs.rb', line 28
def log(type) data = begin execute :get_log, {}, type: type.to_s rescue ::Selenium::WebDriver::Error::UnknownCommandError execute :get_log_legacy, {}, type: type.to_s end Array(data).map do |l| ::Selenium::WebDriver::LogEntry.new l.fetch('level', 'UNKNOWN'), l.fetch('timestamp'), l.fetch('message') rescue KeyError next end rescue ::Selenium::WebDriver::Error::UnknownCommandError raise NotImplementedError, LOG_MSG end