2019-10-12 21:52:04 +05:30
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2018-03-17 18:26:18 +05:30
|
|
|
require 'io/console'
|
|
|
|
|
|
|
|
module LiveDebugger
|
|
|
|
def live_debug
|
|
|
|
puts
|
|
|
|
puts "Current example is paused for live debugging."
|
2020-01-01 13:55:28 +05:30
|
|
|
|
2021-09-30 23:02:18 +05:30
|
|
|
if is_headless_disabled?
|
|
|
|
puts "Switch to the browser window that was automatically opened to run the test in order to view current page"
|
2020-01-01 13:55:28 +05:30
|
|
|
else
|
|
|
|
puts "Opening #{current_url} in your default browser..."
|
|
|
|
end
|
|
|
|
|
2018-03-17 18:26:18 +05:30
|
|
|
puts "The current user credentials are: #{@current_user.username} / #{@current_user.password}" if @current_user
|
|
|
|
puts "Press any key to resume the execution of the example!!"
|
|
|
|
|
2021-11-11 11:23:49 +05:30
|
|
|
`open #{current_url}` unless is_headless_disabled?
|
2018-03-17 18:26:18 +05:30
|
|
|
|
|
|
|
loop until $stdin.getch
|
|
|
|
|
|
|
|
puts "Back to the example!"
|
|
|
|
end
|
2021-09-30 23:02:18 +05:30
|
|
|
|
|
|
|
def is_headless_disabled?
|
|
|
|
ActiveSupport::Deprecation.warn("CHROME_HEADLESS is deprecated. Use WEBDRIVER_HEADLESS instead.") if ENV.key?('CHROME_HEADLESS')
|
|
|
|
|
|
|
|
ENV['WEBDRIVER_HEADLESS'] =~ /^(false|no|0)$/i || ENV['CHROME_HEADLESS'] =~ /^(false|no|0)$/i
|
|
|
|
end
|
2018-03-17 18:26:18 +05:30
|
|
|
end
|