Class: Capybara::Apparition::Console

Inherits:
Object
  • Object
show all
Defined in:
lib/capybara/apparition/console.rb

Instance Method Summary collapse

Constructor Details

#initialize(logger = nil) ⇒ Console

Returns a new instance of Console.



5
6
7
8
# File 'lib/capybara/apparition/console.rb', line 5

def initialize(logger = nil)
  @logger = logger
  @messages = []
end

Instance Method Details

#clearObject



22
23
24
# File 'lib/capybara/apparition/console.rb', line 22

def clear
  @messages.clear
end

#log(type, message, **options) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
# File 'lib/capybara/apparition/console.rb', line 10

def log(type, message, **options)
  return unless @logger

  @messages << OpenStruct.new(type: type, message: message, **options)
  message_to_log = "#{type}: #{message}"
  if @logger.respond_to?(:puts)
    @logger.puts(message_to_log)
  else
    @logger.info(message_to_log)
  end
end

#messages(type = nil) ⇒ Object



26
27
28
29
30
# File 'lib/capybara/apparition/console.rb', line 26

def messages(type = nil)
  return @messages if type.nil?

  @messages.select { |msg| msg.type == type }
end