Class: CukeForker::LoggingListener

Inherits:
AbstractListener show all
Defined in:
lib/cukeforker/logging_listener.rb

Constant Summary collapse

TIME_FORMAT =
"%Y-%m-%d %H:%M:%S"

Instance Method Summary collapse

Methods inherited from AbstractListener

#update

Constructor Details

#initialize(io = STDOUT) ⇒ LoggingListener

Returns a new instance of LoggingListener.



7
8
9
10
# File 'lib/cukeforker/logging_listener.rb', line 7

def initialize(io = STDOUT)
  @io = io
  @running = []
end

Instance Method Details

#on_display_fetched(server) ⇒ Object



39
40
41
# File 'lib/cukeforker/logging_listener.rb', line 39

def on_display_fetched(server)
  log.info "[    display #{server.display.to_s.ljust(3)}   ] fetched"
end

#on_display_released(server) ⇒ Object



43
44
45
# File 'lib/cukeforker/logging_listener.rb', line 43

def on_display_released(server)
  log.info "[    display #{server.display.to_s.ljust(3)}   ] released"
end

#on_display_starting(server) ⇒ Object



47
48
49
# File 'lib/cukeforker/logging_listener.rb', line 47

def on_display_starting(server)
  log.info "[    display #{server.display.to_s.ljust(3)}   ] starting"
end

#on_display_stopping(server) ⇒ Object



51
52
53
# File 'lib/cukeforker/logging_listener.rb', line 51

def on_display_stopping(server)
  log.info "[    display #{server.display.to_s.ljust(3)}   ] stopping"
end

#on_eta(eta, remaining, finished) ⇒ Object



55
56
57
58
59
# File 'lib/cukeforker/logging_listener.rb', line 55

def on_eta(eta, remaining, finished)
  counts = "#{remaining}/#{finished}".ljust(6)
  log.info "[    eta     #{counts}] #{eta.strftime TIME_FORMAT}"
  log.info "[    running       ] #{@running}"
end

#on_run_finished(failed) ⇒ Object



30
31
32
# File 'lib/cukeforker/logging_listener.rb', line 30

def on_run_finished(failed)
  log.info "[    run           ] finished, #{status_string failed}"
end

#on_run_interruptedObject



34
35
36
37
# File 'lib/cukeforker/logging_listener.rb', line 34

def on_run_interrupted
  puts "\n"
  log.info "[    run           ] interrupted - please wait"
end

#on_run_startingObject



12
13
14
# File 'lib/cukeforker/logging_listener.rb', line 12

def on_run_starting
  log.info "[    run           ] starting"
end

#on_worker_finished(worker) ⇒ Object



25
26
27
28
# File 'lib/cukeforker/logging_listener.rb', line 25

def on_worker_finished(worker)
  @running.delete(worker.id)
  log.info "[    worker  #{worker.id.to_s.ljust 3}   ] #{status_string(worker.failed?).ljust(8)}: #{worker.feature}"
end

#on_worker_forked(worker) ⇒ Object



21
22
23
# File 'lib/cukeforker/logging_listener.rb', line 21

def on_worker_forked(worker)
  log.info "[    worker  #{worker.id.to_s.ljust 3}   ] forked  : #{worker.feature}"
end

#on_worker_starting(worker) ⇒ Object



16
17
18
19
# File 'lib/cukeforker/logging_listener.rb', line 16

def on_worker_starting(worker)
  @running << worker.id
  log.info "[    worker  #{worker.id.to_s.ljust 3}   ] starting: #{worker.feature}"
end